2017-11-24 13 views
0

Versuch, ein System von 8 Gleichungen symbolisch zu lösen. Ich habe mehr als 8 Variablen, aber für alle außer 8 Variablen habe ich sie anderswo gelöst. Ich versuche speziell, die symbolische Lösung für eine der Variablen zu finden.System der Gleichungen symbolisch lösen

In Mathematica:

In[1] 
eqn1 = (T1 - Tc)/(R1 + R2) == i1; 
eqn2 = (Tc - V1 + V2 - Th)/R3 == i1; 
eqn3 = i1 + i2 + i3 == i4; 
eqn4 = (Th - THE)/R3 == i4; 
eqn5 = (THE - Tf)/R4 == ifluid; 
eqn6 = (THE - Ta)/R5 == ia; 
eqn7 = i4 == ifluid + ia; 
eqn8 = Th - Tc == dT; 

In[2] 
Solve[{eqn1, eqn2, eqn3, eqn4, eqn5, eqn6, eqn7, eqn8}, {ifluid}] 
Out[2] 
{} 

Ähnlich in Matlab:

syms T1 TC TH THE TF TA dT 
syms R1 R2 R3 R4 R5 R6 
syms V1 V2 
syms i1 i2 i3 i4 iF ia 

eqn1 = (T1-TC)/(R1+R2) == i1; 
eqn2 = (TC-V1+V2-TH)/R3 == i1; 
eqn3 = i1+i2+i3 == i4; 
eqn4 = (TH-THE)/R4 == i4; 
eqn5 = (THE-TF)/R5 == iF; 
eqn6 = (THE-TA)/R6 == ia; 
eqn7 = i4 == iF+ia; 
eqn8 = TH-TC == dT; 

eqns = [eqn1,eqn2,eqn3,eqn4,eqn5,eqn6,eqn7,eqn8]; 

sol = solve(eqns,iF) 

Ausgang:

sol = 

Empty sym: 0-by-1 

mir jemand zeigen kann, was ich falsch mache, oder eine andere Art und Weise zu einfach gehst du darüber?

+0

Mathematica gibt den leeren Satz. Ich versuche, es symbolisch zu lösen, oder lasse die Variable, nach der ich suche, als eine Funktion der anderen Variablen ausgedrückt werden. Ich weiß, dass ich eine Matrix in Matlab einrichten kann, um zu lösen, aber es wäre toll, einen Ausdruck für diese Variable zu haben. Insbesondere ist es die Lösung für einen thermischen Kreislauf und die Variable, nach der ich suche, ist die Kühlleistung. – elMentat

+0

'Reduzieren' könnte sein, was Sie in Mathematica wollen. Mit 'Solve' müssen Sie alle 8 Unbekannten angeben. – agentp

Antwort

0

Versuchen Sie folgendes:

syms T1 TC TH THE TF TA dT real 
syms R1 R2 R3 R4 R5 R6 real 
syms V1 V2 real 
syms i1 i2 i3 i4 iF ia real 

eqn1 = (T1-TC)/(R1+R2) == i1; 
eqn2 = (TC-V1+V2-TH)/R3 == i1; 
eqn3 = i1+i2+i3 == i4; 
eqn4 = i4==(TH-THE)/R4 ; 
eqn5 = (THE-TF)/R5 == iF; 
eqn6 = (THE-TA)/R6 == ia; 
eqn7 = iF == ia-i4; 
eqn8 = TH-TC == dT; 

eqns = [eqn1,eqn2,eqn3,eqn4,eqn5,eqn6,eqn7,eqn8]; 

params1=[iF i1 i2 i3 i4 ia V1 V2 R1 R2 R3 R4 R5 R6 T1 TC TH THE TF TA dT]; 
Y1 = solve(eqns,params1,'IgnoreAnalyticConstraints',true,'ReturnConditions',1) 
Y1.iF 
Y1.parameters 
Y1.conditions 

params2=[iF i1 i2 i3 i4 TH TF TA dT]; 
Y2 = solve(eqns,params2,'IgnoreAnalyticConstraints',true,'ReturnConditions',1) 
Y2.iF 
Y2.parameters 
Y2.conditions 

Ich verstehe nicht ganz, was los ist. aber es gibt dir die Lösung.

Verwandte Themen