%função objetivo para um sistem com neutralizador com amortecimento viscoso
function maxh=fobj_22(lambda)

%declarar variáveis globais que serão utilizadas nas subrotinas contendo as
%funções objetivo.
global Plothandle m1 k1 c1 ksi1 m2 ome1 ome2 C11 omega iomegmax xu xl

%Variável para efetuar minimização.
omegaa=lambda;

Ma = m2;

%Cálculo do G complexo.
[G, Ga] = viscoelastico(omega, omegaa);

omegaa
Ga

%Laço em omega para cálculo da meq, ceq e consequentemente a FRF que se
%deseja minimizar.
for iomeg=1:length(omega)
    
    %Relação entre a frequência/frequência natural do neutralizador
    Ea(iomeg) = omega(iomeg)/omegaa;
    %Relação Greal_a(omega)/Greal_a(omegaa)
    Ra(iomeg) = real(G(iomeg))/real(Ga);
    etaa(iomeg) = imag(G(iomeg))/real(G(iomeg));
    
    %Massa equivalente pelo modelo de sistema equivalente ver página 26 do
    %caderno.
    Meq(iomeg) =(-Ma*Ra(iomeg)*(((Ea(iomeg))^2)-Ra(iomeg)*(1+((etaa(iomeg))^2))))/...
        (((((Ea(iomeg))^2)-Ra(iomeg))^2)+((Ra(iomeg)*etaa(iomeg))^2));
    
    %Amortecimento equivalente pelo modelo de sistema equivalente ver
    %página 26 do caderno.
    Ceq(iomeg) = (omegaa*Ma*Ra(iomeg)*etaa(iomeg)*(Ea(iomeg))^3)/...
        (((((Ea(iomeg))^2)-Ra(iomeg))^2)+((Ra(iomeg)*etaa(iomeg))^2));
    
    %FRF (Receptancia)
    H11(iomeg) = 1/((-(omega(iomeg))^2)*(m1 + Meq(iomeg)) + i*omega(iomeg)*(c1 + Ceq(iomeg)) + k1);
end

%Atribui a variável Plothandle nova FRF otimizada para plotagem.
set(Plothandle,'ydata',abs(H11)) 

% figure(3)
% hold on
% subplot(2,1,1)
% plot(omega, Meq)
% hold on
% subplot(2,1,2)
% plot(omega, Ceq)

%Força a plotagem
drawnow

%Definir restrições
gu = 0;
gl = 0;
    if omegaa < xl
        gl = omegaa - xl;
    end
    if omegaa > xu
        gu = xu-omegaa;
    end    
    
%Encontra a máxima amplitude absoluta e a frequência na qual esta ocorre 
%para a FRF em questão.
[max1,iomegmax]=max(abs(H11));
%[max1,iomegmax]=max(norm(H11,2));
maxh = max1 + + gu^4 + gl^4;

%LOGO ESTAMOS MINIMIZANDO O MÁXIMO VALOR ABSOLUTO DE AMPLITUDE DA FRF
%CONSIDERADA.