Hello!
I am trying to find the first five natural frequencies of a nanoarch since my algebraic equation has infinite many solutions. I can find the frequency for the first mode by using solve command but don't know how to calculate the frequencies after first one. Please suggest me any idea! Thanks in advance!
clear all
syms w;
syms x;
E=7e11;
ro=10;
h=10;
h1=20;
b=1;
I=833.3333;%b*h^3/12;%
I1=6666.6667;%b*h1^3/12;%
Z=b*h;
U=ro*h;%4
U1=ro*h1;%2
q=1;
R=20;
a=0.6;
n=0.38;
B=1.5;
c=7;
s=c/h;
F=1.22-0.23*x+10.55*x^2-21.71*x^3+30.38*x^4;
f=int(x*F^2,[0 s]);
p=vpa((6*3.14*h*(1-n^2)/R^2)*f)
K=1.7142e-12*R^4*w^2;
K1=4.2857e-13*R^4*w^2;
A=1.30927e-6*R^2*w*sqrt(1.7142e-12*R^4*w^2*q^2+4*q+4);
u=sqrt((-2-K*q+A)/2);
v=sqrt((2+K*q+A)/2)*1i;
A1=0.65465e-6*R^2*w*sqrt(4.2857e-13*R^4*w^2*q^2+4*q+4);
u1=-sqrt((-2-K1*q+A1)/2);
v1=-sqrt((2+K1*q+A1)/2)*1i;
makta=(v1*sinh(u*a)*cot(v1*(a-B))-u*cosh(u)-p*(1+u^2)*sinh(u*a))*((v^3*cos(v*a)-v1^3*sin(v*a)*cot(v1*(a-B)))*(u1^2+v1^2)*sinh(u1*(a-B)))-(v1*sin(v*a)*cot(v1*(a-B))-v*cos(v*a)-p*(1-v^2)*sin(v*a))*(((-u^2-v1^2)*sinh(u*a))*(u1^3*cosh(u1*(a-B))+v1^3*sinh(u1*(a-B))*cot(v1*(a-B)))+(u^3*cosh(u*a)+v1^3*sinh(u*a)*cot(v1*(a-B)))*((u1^2+v1^2)*sinh(u1*(a-B))))+(u1*cosh(u1*(a-B))-v1*sinh(u1*(a-B))*cot(v1*(a-B)))*(u^2+v1^2)*sinh(u*a)*(v1^3*sin(v*a)*cot(v1*(a-B))-v^3*cos(v*a));
answer=solve(makta==0,w)

 Réponse acceptée

This was something of a challenge!
I ended up dokng some of it offline because it took longer than the 55 seconds allowed in the online Run feature. (I include those results here.)
syms w;
syms x;
E=7e11;
ro=10;
h=10;
h1=20;
b=1;
I=833.3333;%b*h^3/12;%
I1=6666.6667;%b*h1^3/12;%
Z=b*h;
U=ro*h;%4
U1=ro*h1;%2
q=1;
R=20;
a=0.6;
n=0.38;
B=1.5;
c=7;
p=1
p = 1
s=c/h;
F=1.22-0.23*x+10.55*x^2-21.71*x^3+30.38*x^4;
f=int(x*F^2,[0 s]);
p=vpa((6*3.14*h*(1-n^2)/R^2)*f)
p = 
1.1651549413222679910241313036305
K=1.7142e-12*R^4*w^2;
K1=4.2857e-13*R^4*w^2;
A=1.30927e-6*R^2*w*sqrt(1.7142e-12*R^4*w^2*q^2+4*q+4);
u=sqrt((-2-K*q+A)/2);
v=sqrt((2+K*q+A)/2)*1i;
A1=0.65465e-6*R^2*w*sqrt(4.2857e-13*R^4*w^2*q^2+4*q+4);
u1=-sqrt((-2-K1*q+A1)/2);
v1=-sqrt((2+K1*q+A1)/2)*1i;
makta=(v1*sinh(u*a)*cot(v1*(a-B))-u*cosh(u)-p*(1+u^2)*sinh(u*a))*((v^3*cos(v*a)-v1^3*sin(v*a)*cot(v1*(a-B)))*(u1^2+v1^2)*sinh(u1*(a-B)))-(v1*sin(v*a)*cot(v1*(a-B))-v*cos(v*a)-p*(1-v^2)*sin(v*a))*(((-u^2-v1^2)*sinh(u*a))*(u1^3*cosh(u1*(a-B))+v1^3*sinh(u1*(a-B))*cot(v1*(a-B)))+(u^3*cosh(u*a)+v1^3*sinh(u*a)*cot(v1*(a-B)))*((u1^2+v1^2)*sinh(u1*(a-B))))+(u1*cosh(u1*(a-B))-v1*sinh(u1*(a-B))*cot(v1*(a-B)))*(u^2+v1^2)*sinh(u*a)*(v1^3*sin(v*a)*cot(v1*(a-B))-v^3*cos(v*a));
answer=solve(makta==0,w)
answer = 
171.14791074941493461065218393351
% maktaw = simplify(makta, 500) % Simplified Offline
maktaw(w) = - (sinh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) - 347681065425796912381952*w^2 - 2535301200456458802993406410752)^(1/2))/11258999068426240)*((2^(1/2)*cosh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(3/2))/5708990770823839524233143877797980545530986496 - (2^(1/2)*coth((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/22517998136852480)*sinh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(3/2))/5708990770823839524233143877797980545530986496)*((4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2))/2535301200456458802993406410752 - (4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2))/2535301200456458802993406410752 + (6476124946239097*w^2)/37778931862957161709568 + 2) + sinh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*((2^(1/2)*cosh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) - 347681065425796912381952*w^2 - 2535301200456458802993406410752)^(1/2))/11258999068426240)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) - 347681065425796912381952*w^2 - 2535301200456458802993406410752)^(3/2))/5708990770823839524233143877797980545530986496 + (2^(1/2)*coth((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/22517998136852480)*sinh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) - 347681065425796912381952*w^2 - 2535301200456458802993406410752)^(1/2))/11258999068426240)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(3/2))/5708990770823839524233143877797980545530986496)*((323818336570151*w^2)/4722366482869645213696 + 2))*(sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2))*2.3303098826445359820482626072609i + w^2*sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2))*0.00000015978468803317053309483728745057i + cos((0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2)*0.6i)*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2)*1.0i + w*sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2))*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2)*0.00030510048200500116701530982452854i + sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + 0.00000013713599999999999131253052789964*w^2 + 1.0)^(1/2))*coth(0.9*(0.00013092999999999999495396696413962*w*(0.000000068571199999999996637831643775396*w^2 + 8.0)^(1/2) + 0.000000034285599999999998318915821887698*w^2 + 1.0)^(1/2))*(0.00013092999999999999495396696413962*w*(0.000000068571199999999996637831643775396*w^2 + 8.0)^(1/2) + 0.000000034285599999999998318915821887698*w^2 + 1.0)^(1/2)*1.0i) - sinh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*((2^(1/2)*cos((2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(1/2)*3i)/11258999068426240)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(3/2)*1i)/5708990770823839524233143877797980545530986496 + (2^(1/2)*coth((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/22517998136852480)*sinh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(1/2))/11258999068426240)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(3/2)*1i)/5708990770823839524233143877797980545530986496)*((323818336570151*w^2)/4722366482869645213696 + 2)*(cosh((0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) - 0.00000013713599999999999131253052789964*w^2 - 1.0)^(1/2))*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) - 0.00000013713599999999999131253052789964*w^2 - 1.0)^(1/2) - 0.00000015978468803317053309483728745057*w^2*sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) - 0.00000013713599999999999131253052789964*w^2 - 1.0)^(1/2)) + 0.00030510048200500116701530982452854*w*sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) - 0.00000013713599999999999131253052789964*w^2 - 1.0)^(1/2))*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) + sinh(0.6*(0.00026185400000000000385672049851848*w*(0.00000027427199999999998262506105579928*w^2 + 8.0)^(1/2) - 0.00000013713599999999999131253052789964*w^2 - 1.0)^(1/2))*coth(0.9*(0.00013092999999999999495396696413962*w*(0.000000068571199999999996637831643775396*w^2 + 8.0)^(1/2) + 0.000000034285599999999998318915821887698*w^2 + 1.0)^(1/2))*(0.00013092999999999999495396696413962*w*(0.000000068571199999999996637831643775396*w^2 + 8.0)^(1/2) + 0.000000034285599999999998318915821887698*w^2 + 1.0)^(1/2)) + sinh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) - 347681065425796912381952*w^2 - 2535301200456458802993406410752)^(1/2))/11258999068426240)*((2^(1/2)*cosh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/2251799813685248 - (2^(1/2)*coth((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/22517998136852480)*sinh((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) - 86924322838369959673856*w^2 - 2535301200456458802993406410752)^(1/2))/22517998136852480)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/2251799813685248)*((2^(1/2)*cos((2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(1/2)*3i)/11258999068426240)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(3/2)*1i)/5708990770823839524233143877797980545530986496 + (2^(1/2)*coth((9*2^(1/2)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(1/2))/22517998136852480)*sinh((3*2^(1/2)*(4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2) + 347681065425796912381952*w^2 + 2535301200456458802993406410752)^(1/2))/11258999068426240)*(4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2) + 86924322838369959673856*w^2 + 2535301200456458802993406410752)^(3/2)*1i)/5708990770823839524233143877797980545530986496)*((4830464403141583*w*(323818336570151*w^2 + 37778931862957161709568)^(1/2))/2535301200456458802993406410752 - (4830353722677141*w*(5180851599958493*w^2 + 151115727451828646838272)^(1/2))/2535301200456458802993406410752 + (6476124946239097*w^2)/37778931862957161709568 + 2)
maktaw(w) = 
makta_fcn = matlabFunction(maktaw)
makta_fcn = function_handle with value:
@(w)-(sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15-w.^2.*3.476810654257969e+23-2.535301200456459e+30).*2.664535259100376e-16).*((sqrt(2.0).*cosh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).^(3.0./2.0))./5.70899077082384e+45-(sqrt(2.0).*coth(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).*3.996802888650564e-16).*sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).^(3.0./2.0))./5.70899077082384e+45).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*1.905282260850072e-15-w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*1.905238605104387e-15+w.^2.*1.714216e-7+2.0)+sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*((sqrt(2.0).*cosh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15-w.^2.*3.476810654257969e+23-2.535301200456459e+30).*2.664535259100376e-16).*(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15-w.^2.*3.476810654257969e+23-2.535301200456459e+30).^(3.0./2.0))./5.70899077082384e+45+(sqrt(2.0).*coth(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).*3.996802888650564e-16).*sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15-w.^2.*3.476810654257969e+23-2.535301200456459e+30).*2.664535259100376e-16).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).^(3.0./2.0))./5.70899077082384e+45).*(w.^2.*6.85712e-8+2.0)).*(sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*(3.0./5.0)).*2.330309882644536i+w.^2.*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*(3.0./5.0)).*1.597846880331705e-7i+cos(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*6.0e-1i).*sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*1i+coth(sqrt(w.*sqrt(w.^2.*6.85712e-8+8.0).*1.3093e-4+w.^2.*3.42856e-8+1.0).*(9.0./1.0e+1)).*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*(3.0./5.0)).*sqrt(w.*sqrt(w.^2.*6.85712e-8+8.0).*1.3093e-4+w.^2.*3.42856e-8+1.0).*1i+w.*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4+w.^2.*1.37136e-7+1.0).*(3.0./5.0)).*sqrt(w.^2.*2.74272e-7+8.0).*3.051004820050012e-4i)+sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15-w.^2.*3.476810654257969e+23-2.535301200456459e+30).*2.664535259100376e-16).*((sqrt(2.0).*cosh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30))./2.251799813685248e+15-(sqrt(2.0).*coth(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).*3.996802888650564e-16).*sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30))./2.251799813685248e+15).*(sqrt(2.0).*cos(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).*2.664535259100376e-16i).*(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).^(3.0./2.0).*1.751623080406021e-46i+sqrt(2.0).*coth(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).*3.996802888650564e-16).*sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).*2.664535259100376e-16).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).^(3.0./2.0).*1.751623080406021e-46i).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*1.905282260850072e-15-w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*1.905238605104387e-15+w.^2.*1.714216e-7+2.0)-sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15-w.^2.*8.692432283836996e+22-2.535301200456459e+30).*3.996802888650564e-16).*(sqrt(2.0).*cos(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).*2.664535259100376e-16i).*(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).^(3.0./2.0).*1.751623080406021e-46i+sqrt(2.0).*coth(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).*3.996802888650564e-16).*sinh(sqrt(2.0).*sqrt(w.*sqrt(w.^2.*5.180851599958493e+15+1.511157274518286e+23).*4.830353722677141e+15+w.^2.*3.476810654257969e+23+2.535301200456459e+30).*2.664535259100376e-16).*(w.*sqrt(w.^2.*3.23818336570151e+14+3.777893186295716e+22).*4.830464403141583e+15+w.^2.*8.692432283836996e+22+2.535301200456459e+30).^(3.0./2.0).*1.751623080406021e-46i).*(w.^2.*6.85712e-8+2.0).*(cosh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4-w.^2.*1.37136e-7-1.0)).*sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4-w.^2.*1.37136e-7-1.0)-w.^2.*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4-w.^2.*1.37136e-7-1.0).*(3.0./5.0)).*1.597846880331705e-7+coth(sqrt(w.*sqrt(w.^2.*6.85712e-8+8.0).*1.3093e-4+w.^2.*3.42856e-8+1.0).*(9.0./1.0e+1)).*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4-w.^2.*1.37136e-7-1.0).*(3.0./5.0)).*sqrt(w.*sqrt(w.^2.*6.85712e-8+8.0).*1.3093e-4+w.^2.*3.42856e-8+1.0)+w.*sinh(sqrt(w.*sqrt(w.^2.*2.74272e-7+8.0).*2.61854e-4-w.^2.*1.37136e-7-1.0).*(3.0./5.0)).*sqrt(w.^2.*2.74272e-7+8.0).*3.051004820050012e-4)
figure
yyaxis left
fplot(@(w)real(makta_fcn(w)),[0 10000])
ylabel('Re(makta)')
yyaxis right
fplot(@(w)imag(makta_fcn(w)),[0 10000])
ylabel('Im(makta)')
grid on
figure
fplot(@(w)abs(makta_fcn(w)),[0 10000])
grid
set(gca, 'YSCale','log')
ylim([0.001 max(ylim)])
So, there may be 3 roots:
format short g
w0 = [200 2000 4000];
for k = 1:numel(w0)
rt(k,:) = fsolve(makta_fcn, w0(k));
end
Equation solved. fsolve completed because the vector of function values is near zero as measured by the value of the function tolerance, and the problem appears regular as measured by the gradient. Equation solved, solver stalled. fsolve stopped because the relative size of the current step is less than the value of the step size tolerance squared and the vector of function values is near zero as measured by the value of the function tolerance. Solver stopped prematurely. fsolve stopped because it exceeded the iteration limit, options.MaxIterations = 4.000000e+02.
rt
rt =
171.15 + 0i 1909.5 + 0i 3818.9 + 1.1097e-08i
These appear to be the only roots.
.

6 commentaires

shahid mubasshar
shahid mubasshar le 30 Juin 2021
Thank you so much! Yes I agree it was a real deal. I will try to look for the next frequencies with different values of the parameters. I'll let you know soon.
As always, my pleasure!
My code should work with the new parameters, although using findpeaks on the negative of a vector ‘maktav’ created by:
wv = linspace(0, 1E+4, 500);
maktav = makta_fcn(wv);
[pks,locs] = findpeaks(maktav);
should find the approximate roots. Use those indices into ‘wv’ as ‘w0’ with the loop, so:
w0 = wv(locs);
I suggest that you always plot the function first, before doing anything else. That will save considerable effort.
.
Is fsolve() preferred over vpasolve() ?
for k = 1:numel(w0)
rt(k,:) = vpasolve(makta==0,w,w0(k));
end
rt
rt =
171.14791074941493461065218393351
1909.4693985149581429305321680235
3818.8533018786010422029297064535
vpa(subs(makta,w,rt))
ans =
1.0706549484083247408517748473087e-35i
0
0.0000000000000000057773929201595647807770681545793
Star Strider
Star Strider le 1 Juil 2021
Here, yes.
The symbolic approach is much less efficient for this problem, and the additional precision is likely not necessary.
Paul
Paul le 1 Juil 2021
I was curious about this because fsolve stopped cleanly in the first case, but "stalled" and "stopped prematurely" in the second and third. So I wasn't sure how much credence to put into those results and wanted to check with vpasolve().
Star Strider
Star Strider le 1 Juil 2021
Noted.

Connectez-vous pour commenter.

Plus de réponses (0)

Produits

Version

R2015a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by