MathGroup Archive 2006

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Beginner--Help on using FindRoot to solve the system of equations


Hi,
correct the typo, get the syntax right and eliminate the superfluous 
WorkingPrecision, see below.

You get a more accurate result by giving accurate input, e.g. 291/100 
instead of 2.91 and using WorkingPrecision->32

Daniel

xiaochu at che.utexas.edu wrote:
> This is a code to solve vapor-liquid equilibrium by van der Waals Equation of State.
> 
> I don't why this code is not working, please help, thanks very much!
> 
> 
> (* Name of EOS *)
> 
> EOSName = "Van der Waals";
> 
> Ttilde = .;
> 
> Dtilde = .;
> 
> Z = 3/(3-Dtilde)-9*Dtilde/8/Ttilde;
> 
> (* Related variables *)
> 
> Psi1 = (-9*Dtilde)/(8*Ttilde) - Log[3-Dtilde];
> 
> lnB = (1-Z)-Psi1;
> 
> mu = -lnB+Log[Dtilde];
> 
> P = Dr Ttilde Z;
===> Typo Dr is nowhere defined, think it means Dtilde
> 
> DtildeG=10^-14;
> 
> DtildeL=2.91;
> 
> Dtilde1=.;
> 
> Dtilde2=.;
> 
> mu1=mu/.Dtilde->Dtilde1;
> 
> mu2=mu/.Dtilde->Dtilde2;
> 
> P1=P/.Dtilde->Dtilde1;
> 
> P2=P/.Dtilde->Dtilde2;
> 
> Ttilde = 0.1;
> 
> Result=
>     	FindRoot[
>       		{P1==P2,mu1==mu2},
>       		{Dtilde1,DtildeG},
>       		{Dtilde2,DtildeL},
===syntax: must be written {{Dtilde1,DtildeG},{Dtilde2,DtildeL}}
>       		MaxIterations->1000,
>       		WorkingPrecision->16];
eliminate WorkingPrecision->16, this is approximately MachinePrecision
> 
> Link to the forum page for this post:
> http://www.mathematica-users.org/webMathematica/wiki/wiki.jsp?pageName=Special:Forum_ViewTopic&pid=10101#p10101
> Posted through http://www.mathematica-users.org [[postId=10101]]
> 
> 


  • Prev by Date: Re: Faster Random Walk Simulation ?!?
  • Next by Date: Re: Beginner--Help on using FindRoot to solve the system of equations
  • Previous by thread: Re: Beginner--Help on using FindRoot to solve the system of equations
  • Next by thread: Re: Beginner--Help on using FindRoot to solve the system of equations