3 views (last 30 days)

Show older comments

This question was flagged by Walter Roberson

I want to find omega value in the equation.

can i anybody tell me how to solve this equation.

Walter Roberson
on 21 Jun 2021

The search turns out to take over 20 seconds for each eload value, and even then it seems to fail.

Notice I ended at 0.002, which is the most I could do with this online version without timing out.

tic

syms omega

a=3.666;

k=0.467;

s=100;

r=1.4;

ef=0.08483;

N=(a*k)/(1+(a*k));

eloadvals = 0:0.001:0.002;

for eloadidx = 1 : length(eloadvals)

eload = eloadvals(eloadidx);

c1=(1-N)*(((r*a)/2)+(r/2)-1)-(r-1);

c2=(N*(r/(2*a))+(r/2)-1);

Ac2=((r*a)*(1-N))/2;

Ah1=(r*N)/(2*a);

A=-8*(1-N)*c2*sin(pi-atan(s/((1-N)*omega)))+8*N*c1*sin(2*(pi-atan(1/(N*omega))))+(32*N*ef+32*N*eload);

B=16*(1-N)*(-1*(((1-N)*omega)/(2*s))*(((Ah1*c1*sin(pi-atan(1/(N*omega)))*cos(pi-atan(1/(N*omega))))+((((N*s)/((1-N)*omega))+(N*(r/2-1)))*c2*cos((atan((((1-N)*((r/2)-1))/(s))*omega))+(pi-atan(s/((1-N)*omega))))*cos(pi-atan(s/((1-N)*omega)))))))*c2*sin(2*(pi-atan(s/((1-N)*omega))))+(16*(((N*omega)/2)*((((((1-N)/(N*omega))+((1-N)*(((r/2)-1)-(r-1))))*c1*cos((atan((((1-N)*((r/2)-1)-(r-1))/(1-N))*(N*omega)))+(pi-atan(1/(N*omega))))*cos(atan((((1-N)*((r/2)-1)-(r-1))/(1-N))*(N*omega))))+(Ac2*c2*sin(pi-atan(s/((1-N)*omega)))*cos(pi-atan(s/((1-N)*omega)))))))+2*c1)*N*c1*sin(2*(pi-atan(1/(N*omega))))+N*c1*c1*sin(4*(pi-atan(1/(N*omega))));

thissol = vpasolve(A==B);

if length(thissol) >= 1

sol(eloadidx) = thissol(1);

else

sol(eloadidx) = nan;

end

end

toc

plot(eloadvals, sol)

Nothing visibile in the plot because vpasolve() failed.

Reshma Nerella
on 21 Jun 2021

Hi,

You can use solve function from symbolic math toolbox to solve equations and obtain the values of variables.

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

Start Hunting!