Permalänk
Medlem

fsolve (matlab)

Jag behöver lite hjälp med att lösa ett ekvationssystem i matlab, jag har förstått att jag ska använda mig av fsolve men så mycket mer än så har jag inte förstått.

Här är mina ekvationer:

sin(a)*A-sin(b)*B-50*9.81=0 -cos(a)*A+Cos(b)*B=0 sin(b)*B+sin(c)*C-100*9.81=0 -cos(b)*B+cos(c)*C=0 cos(a)*3.6+cos(b)*3.6+cos(c)*3.6-10.5=0 sin(a)*3.6+sin(b)*3.6-sin(c)*3.6=0

Så hur löser jag detta?

Permalänk

Läs ordentligt på http://www.mathworks.com/access/helpdesk/help/toolbox/optim/u...
Återkommer imorgon med mer info om du inte löst det tills dess. Men förtydliga gärna vad som är variabler du ska lösa med avseende på (a, b, c, A, B, C? Reella tal? Matriser? Har du några villkor på variablerna?)

Permalänk
Medlem

Nu har jag läst och förtått lite mer men jag försår fortfarande inte hur jag ska lösa det. Jag har kommit såhär långt nu:

g=9.81 l=3.6 function F = myfun(x) F = [sin(x(1))*x(4)-sin(x(2))*x(5)-50*g; cosd(x(2))*x(5)-cosd(x(1))*x(4); sind(x(2))*x(5)+sind(x(3))*x(6)-100*g; cosd(x(3))*x(6)-cosd(x(2))*x(5); cosd(x(1))*l+cosd(x(2))*l+cosd(x(3))*l-10.5; sind(x(1))*l+sind(x(2))*l-sind(x(3))*l] x0=[35;5;45;500;100;900] [x,fval] = fsolve(@myfun,x0)

(x(1) till x(6) = a,b.c,A,B,C som är reella tal där a,b,c är vinklar och A,B,C är linkrafter i en jämnviktsekvation)
Matlab säger att nu att det är fel i "function F = myfun(x)", jag kan inte se vad det är för fel och hur jag ska komma vidare?

Permalänk
Medlem

Det tar en stund men det är vanlig elimination som gäller.

Sin(a) =Sin(b)-Sin(c) iaf du får pussla lite.

Skriv konstanterna innan cos/sin det är mer lättläst.. 136cos(pi/36) är lättare att förstå än cos(pi/36)*136 Det är svårare att se sambanden mellan flera uttryck när man skriver på ditt sätt.. det blir svårare att bryta ut konstanterna... tycker jag

Permalänk
Medlem

Problemet är löst!