2016-12-28 4 views
1

je peux résoudre l'équation ci-dessous normalementrésolvant des équations à maxima

sin(b1*(x-c1)) = sin(b2*(x-c2)) 
b1*(x-c1)  = b2*(x-c2) 
c2    = x-(b1*(x-c1))/b2 

for c1 = 0, b1 = 1, b2 = 1.5, x = pi/2 

c2 = (x-(b1*(x-c1))/b2) = 0.523598775598299 

Mais quand je tente de faire cela dans Maxima voir ci-dessous la réponse est tout à fait différente ce que je fais mal?

kill(all)$ 
numer:true$ 
phase1:0; freq1:1; freq2:1.5; x:pi/2; solve(sin(freq1*(x-phase1))=sin(freq2*(x-phase2)),phase2); 

réponse je reçois ci-dessous Answer I get

Répondre

2

solve fonctionne généralement pour des équations simples, essayez Solver. En outre, pi (variable) n'est pas la même que %pi (constante).

kill(all)$ 
load(solver)$ 
numer:true; 
f:sin(freq2*(x-phase2))=sin(freq1*(x-phase1)); 
phase1:0; freq1:1; freq2:1.5; x:%pi/2; a:Solver([f],[phase2]); 
rhs(a[1][1]),numer; 

Réponse: 0,5235987755982978

Votre deuxième question:

kill(all); 
f:sin(b1*(x-c1)) - sin(b2*(x-c2))=0; 
triginverses:all; 
solve(f,c2); 
+0

Merci est-il un moyen d'obtenir des maxima pour montrer l'équation, il permet d'obtenir la réponse. 'c2 = (x- (b1 * (x-c1))/b2)' –

+0

Voir la réponse éditée. –