Message Boards Message Boards

0
|
141 Views
|
10 Replies
|
3 Total Likes
View groups...
Share
Share this post:

Analytical Solution of a linear system of equations in 8 unknowns

Dear All, I need to analytically solve for 8 unknowns inside a system of 8 linear coupled equations. I am struggling with it for 2 weeks already to no avail. It is probably a syntax mistake, but cannot see it. I am attaching a file in which the system is written inside the Solve Command. Quantities appearing in dark blue are to be entered later when I get the analytical expressions of the unknowns, so they may be considered as parameters. Could anyone help me with this issue?

Thanks in advance.
Gustavo Wouchuk

10 Replies

Dear Gareth Russell: I say thanks to you too, I didn't notice that N is ised for the operator N[] whichis a built-in function. This is certainly another source of complications. Besides, the mismatch between number of equations and unknowns. Will check all these issues later on.

Thank you very much.

Gustavo Wouchuk

Thank you very much GianLuca. Yes, I will check that. On a first glimpse, it seems that omb3 is lacking. Hope this is all the problem

It is a cumbersome system of equations and it is very easy not to count the number of the equations correctly.

Take care, I am very grateful,

Gustavo

Fixing the RN error, and replacing N with n because N[] is a built-in function, Solve alone still produces no general solution, but adding MaxExtraConditions->All, after a pretty long time (minutes), produces a whole list. Which suggests you may get your answer if you can add some assumptions to your input.

Solve[{
  n^2 pia1 R == pib1/2,
  1/48 n - 3 R n^4 pia1 + R n^4 pia3 == -3 pib1 + pib3,
  (R n^6 pia1)/384 - (R n^6 pia3)/768 == pib1/384 - pib3/768,
  (R n^10 pia1)/1474560 - (R n^10 pia3)/2211840 == 
   pib1/1474560 - pib3/2211840,
  0 == newalb10 (pib1 + omb1 betr) + 
    2 epsb (pib3 ch3r/chr + omb3 sh3r/chr),
  0 == newala10 (pia1 - oma1 bett) + 
    2 epsa (pia3 ch3t/cht + omb3 sh3t/cht),
  (R n^10 pia1)/1474560 - (R n^10 pia3)/2211840 == 
   pib1/1474560 - pib3/2211840,
  -((R n^12 pia1)/176947200) + (R n^12 pia3)/
    247726080 == -(pib1/176947200) + pib3/247726080},
 {pia1, pib1, oma1, omb1, pia3, oma3, pib3}, 
 MaxExtraConditions -> All]
POSTED BY: Gareth Russell

It is 8 equations in 7 unknowns. Try removing one equation.

POSTED BY: Gianluca Gorni

Ciao Gianluca, grazie dalla tua osservazione. Purtroppo, malgrado avessi cancellato la incognita doppia, non si è risolto il problema. Vedró di ridurre il numero sia di equazioni che d'incognite.

Dopo tutto Mathematica è uno strumento molto potente per la manipulazione simbolica. Ne trarrò profitto.

Buona sera,

Gustavo.

Please keep the conversation in English. This may be helpful for future visitors.

POSTED BY: Moderation Team

I have noticed now that your list of unknowns has a duplicate oma3:

{pia1, pib1, oma1, omb1, pia3, oma3, pib3, oma3}

Your system has 8 equations in 7 unknowns.

POSTED BY: Gianluca Gorni

Maybe that is the error. Buona fortuna!

POSTED BY: Gianluca Gorni

Caro Gisanluca,Grazie per la risposta. I have invented another arbytrary system in 8 unknowns and Mathematica handled it without problems. The serious problem is that I can not detect any syntax error in the system i am interested in.

Grazie tante,

Gustavo.

A variable RN should probably be R*N. It seems that your system has no solution in general:

eqs = {N^2  pia1  R == pib1 /2   ,
   1/48  N - 3  R  N^4  pia1 + R  N^4  pia3 == -3  pib1 + pib3 ,  
   (R N^6 pia1)/384 - (R N^6 pia3)/768  == pib1/384 - pib3/768, 
    (R N^10 pia1)/1474560 - (R N^10 pia3)/2211840   == 
    pib1/1474560 - pib3/2211840 ,
   0 == newalb10  (pib1 + omb1  betr) + 
     2  epsb  (pib3  ch3r/chr + omb3 sh3r/chr)  , 
   0 == newala10  (pia1 - oma1  bett) + 
     2  epsa  (pia3  ch3t/cht + omb3 sh3t/cht) ,  
   (R N^10 pia1)/1474560 - (R N^10 pia3)/2211840 == 
    pib1/1474560 - pib3/2211840 , -((R  N^12  pia1)/176947200) + (
     R N^12 pia3)/247726080  == -(pib1/176947200) + pib3/247726080};
symbs = Cases[eqs, _Symbol, All] // Union
vars = {pia1, pib1, oma1, omb1, pia3, oma3, pib3, oma3}
params = Complement[symbs, vars]
eqs /. Thread[params -> 1]
Reduce[eqs /. Thread[params -> 1], vars]
POSTED BY: Gianluca Gorni
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract