Gå til innhold
Trenger du skole- eller leksehjelp? Still spørsmål her ×

[Løst] Trenger hjep i matlab


Anbefalte innlegg

Jeg skal rekne ut noen vinkler basert på 3 ligninger, og lurte på om dette er mulig å få til i matlab?

 

L1=1,66

L2=7,01

L3=3,58

 

t1, t2 og t3 er de ukjente vinklene

 

Ligning 1:

cos(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=4.600

sin(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=0.200

L1 + L3*sin(t2 + t3) + L2*sin(t2)=1.400

 

Takker :)

Lenke til kommentar
Videoannonse
Annonse

Hei!

 

Prøv:

T1 = -226.1512

T2 = 100.0027

T3 = 59.0648

 

Matlab Kode:

D=solve('(cos(T1)*(3.58*cos(T2+T3)+7.01*cos(T2)))=4.600','(sin(T1)*(3.58*cos(T2+T3)+7.01*cos(T2)))=0.200','(1.66+3.58*sin(T2+T3)+7.01*sin(T2))=1.400','T1','T2','T3')
subs(D.T1)
subs(D.T2)
subs(D.T3)

Lenke til kommentar

Takk, det fungerte :)

 

Har prøvd solve-funksjonen flere ganger, men den har ikke gitt noe resultat, da jeg bare har hatt en S=solve...., og matlab har da gitt meg en 0x0 S-matrise som svar.

 

Fikk du forresten ut de verdiene direkte, eller?

Lenke til kommentar

Hmm, så rart. Hvis du legger ut koden du har brukt så kan jeg se på den. Jeg lagde bare en ny funksjon, så får følgende utskrift i kommando vinduet.

 

>> Sjekk
D =
   T1: [1x1 sym]
   T2: [1x1 sym]
   T3: [1x1 sym]

ans =
-226.1512

ans =
 100.0027

ans =
  59.0648
>>

 

Man må gjøre D`en om ved hjelp av subs(D.T2). Mener det var fordi man trenger en eller annen Matlab symbolic toolbox for visningen av "D"

Lenke til kommentar

Jeg har prøvd:

 

 

>> [t1 t2 t3]=solve('cos(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=4.600','sin(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=0.200','L1 + L3*sin(t2 + t3) + L2*sin(t2)=1.400')

 

og

 

 

S=solve('cos(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=4.600','sin(t1)*(L3*cos(t2 + t3) + L2*cos(t2))=0.200','L1 + L3*sin(t2 + t3) + L2*sin(t2)=1.400','t1,t2,t3')

 

Når jeg får ut svar, så får jeg også flere svar:

 

D =
   T1: [4x1 sym]
   T2: [4x1 sym]
   T3: [4x1 sym]

Lenke til kommentar

Nå er ikke jeg et "rå-skinn" på MATLAB (bruker det bare litt i skolesammenheng) men det virker som at når du definerer konstantene til L1, L2 og L3 så blir det problemer og programmet blir fryktelig tungt å kjøre (hvert fall på min laptop). Hvis jeg bytter ut L1, L2 og L3 med tall i "solve" så fungerer programmet ditt fint

Lenke til kommentar

Ja, det virker sånn. Tusen takk for hjelpen uansett! :)

 

Et siste spørsmål: jeg får disse verdiene:

 

D =
   T1: [4x1 sym]
   T2: [4x1 sym]
   T3: [4x1 sym]

ans =

						    [-3.098141758 ]
						    [			 ]
						    [0.04345089539]
						    [			 ]
						    [-3.098141758 ]
						    [			 ]
						    [0.04345089539]

ans =

						    [-2.613352541 ]
						    [			 ]
						    [-0.5282401131]
						    [			 ]
						    [ 2.726169513 ]
						    [			 ]
						    [0.4154231405 ]

ans =

						    [-2.516094425]
						    [		    ]
						    [2.516094425 ]
						    [		    ]
						    [2.516094425 ]
						    [		    ]
						    [-2.516094425]

 

Får du opp gradene i stedet? Går det an å stille inn matlab på grader eller radianer?

Lenke til kommentar

Får du opp i radianer når du bruker koden jeg har linket? Jeg har aldri tenkt særlig over det men bruker som regel radianer i argumentene selv.

 

Men du kan eventuelt bruke dette om det er til hjelp. Hvis ikke så ligger det mange ferdige funksjoner på nettet om du googler :)

 

 

adtodeg

Convert angles from radians to degrees

Syntax

angleInDegrees = radtodeg(angleInRadians)

Description

angleInDegrees = radtodeg(angleInRadians) converts angle units from radians to degrees. This is both an angle conversion function and a distance conversion function, because arc length can be a measure of distance in either radians or degrees (provided the radius is known).

Examples

There are 180º in π radians:

anglout = radtodeg(pi)

anglout = 180

Endret av Salt_Skin
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...