matlab, nichtlineare gleichungen lösen, newtonverfahren

Neue Frage »

student82 Auf diesen Beitrag antworten »
matlab, nichtlineare gleichungen lösen, newtonverfahren
Meine Frage:
habe 4 gleichungen in vier unbekannten und habe diese mal in matlab implementiert

f1=@(C,O,lambda_1) (O*(-2.5*C*O-1.5*O^2*C+1.85*O+0.5*O^2-0.5))*1/(0.25*(1+O+0.25*O^2))-lambda_1;
f2=@(C,O,lambda_2) (C*(-2.5*O*C+O^2*C+1.85*C+0.5*C^2-0.5*O*C^2-0.5))*1/(0.25*(1+C+0.25*C^2))-lambda_2;
f3=@(C,O,lambda_1,lambda_2) lambda_1^2*((0.25+0.125*O)/O^3)+lambda_1*((0.54*O^2-0.5*C*O^2+0.5)/O^2)+1-lambda_2(1-0.5*C);
f4=@(C,O,lambda_1,lambda_2) lambda_2^2*((0.25+0.125*C)/C^3)+lambda_2*((0.54*C^2-0.5*O*C^2+0.5)/C^2)+1-lambda_1(1-0.5*O);

hoffe das ist soweit mal richtig

ich würde jetzt zur lösung gerne das newtonverfahren anwenden:
dazu einige fragen
kann matlab diese gleichungen ableiten? bräuchte ja eine jacobi matrix!
gibt es ein vorimplementiertes newtonverfahren bzw eine kopierbare lösung aus dem internet?

danke im vorraus lg


Meine Ideen:
hab es mit befehlen diff und syms probiert bin aber leider auf nichts gekommen!
student75 Auf diesen Beitrag antworten »
RE: matlab, nichtlineare gleichungen lösen, newtonverfahren
hab jetzt auch händisch differenziert hab nun auch die partiellen ableitungen in matlab definiert leider bin ich mit matlab überhaupt nicht vertraut kann daher auch das newtonverfahren nicht umsetzten!

ich poste jetzt noch mal alle funktionen und die dazugehörigen partiellen ableitungen.
wenn jemand so nett wäre und mir den code zum newton verfahren mit meinen funktionen schreiben könnte wäre ich demjenigen sehr verbunden!!!!

f1=@(lambda_1,O,C) (O*(-2.5*C*O-1.5*O^2*C+1.85*O+0.5*O^2-0.5))*1/(0.25*(1+O+0.25*O^2))-lambda_1;
f2=@(lambda_2,O,C) (C*(-2.5*O*C+O^2*C+1.85*C+0.5*C^2-0.5*O*C^2-0.5))*1/(0.25*(1+C+0.25*C^2))-lambda_2;
f3=@(lambda_1,lambda_2,O,C) lambda_1^2*((0.25+0.125*O)/O^3)+lambda_1*((0.54*O^2-0.5*C*O^2+0.5)/O^2)+1-lambda_2(1-0.5*C);
f4=@(lambda_1,lambda_2,O,C) lambda_2^2*((0.25+0.125*C)/C^3)+lambda_2*((0.54*C^2-0.5*O*C^2+0.5)/C^2)+1-lambda_1(1-0.5*O);


f1lambda_1= -1;
f1lambda_2= 0;
f1O =@(O,C) (-0.5*C*O-4.5*O^2*C+3.7*O+1.5*O^2-0.5)*(0.25+0.25*O+0.125*O^2)-((0.25+0.25*O)*(O*(-2.5*C*O-1.5*O^2*C+1.85*O+0.5*O^2-0.5)))*1/((0.25*(1+O+0.25*O^2))^2);
f1C =@(O) 1/(0.25*(1+O+0.25*O^2))*(-0.25*O^2-1.5*O^3);

f2lambda_1= 0;
f2lambda_2= -1;
f2O = @(O,C) 1/(0.25*(1+C+0.25*C^2))*(-2.5*C^2+2*O*C^2-0.5*C^3);
f2C = @(O,C) (-5*O*C+2*O^2*C+3.7*C+1.5*C^2-1.5*O*C^2-0.5)*(0.25+0.25*C+0.125*C^2)-(0.25+0.25*C)*(C*(-2.5*O*C+O^2*C+1.85*C+0.5*C^2-0.5*O*C^2-0.5))*1/((0.25+0.25*C+0.125*C^2)^2);

f3lambda_1 =@(lambda_1,O,C) 2*lambda_1*((0.25+0.125*O)/O^3)+((0.54*O^2-0.5*C*O^2+0.5)/O^2);
f3lambda_2 =@(C) -1+0.5*C;
f3O =@(lambda_1,O,C) lambda_1^2*((0.125*O-(0.75+0.374*O))/O^4)+lambda_1*(((1.08*O-C*O)*O-2*(0.54*O^2-0.5*C*O^2+0.5))/O^3);
f3C =@(lambda_1,lambda_2) -0.5*lambda_1+0.5*lambda_2;

f4lambda_1 =@(O) -1+0.5*O;
f4lambda_2 =@(lambda_2,O,C) 2*lambda_2*((0.25+0.125*C)/C^3)+((0.54*C^2-0.5*O*C^2+0.5)/C^2);
f4O =@(lambda_2,O,C) lambda_2^2*((0.125*C-(0.75+0.374*C))/C^4)+lambda_2*(((1.08*C-O*C)*C-2*(0.54*C^2-0.5*O*C^2+0.5))/C^3);
f4C =@(lambda_1,lambda_2) -0.5*lambda_2+0.5*lambda_1;
Dopap Auf diesen Beitrag antworten »

unter dem Eingabefenster gibt es die Vorschau - Funktion von deiner Post .
Schon mal verwendet?
Neue Frage »
Antworten »



Verwandte Themen

Die Beliebtesten »
Die Größten »
Die Neuesten »