MathGroup Archive 2009

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

Search the Archive

Re: Partial derviatives in mathematica

  • To: mathgroup at smc.vnet.net
  • Subject: [mg95790] Re: Partial derviatives in mathematica
  • From: dh <dh at metrohm.com>
  • Date: Tue, 27 Jan 2009 06:59:54 -0500 (EST)
  • References: <glk1na$los$1@smc.vnet.net>


Hi,

I would write input in InputForm not TraditionalForm. A derivative is 

then written:

D[f[x],x]

If you later need TraditionalForm, you can get it by wrapping an 

expression in TraditionalForm[..]. Or reformatting the whole cell.

Your problem comes from the fact that PartialD needs a subscript, 

indicating the variable to differentiate after.



hope this helps, Daniel



xareon at gmail.com wrote:

> Hi all, i got thi Newton-Raphson mathematica code:

> 

> 

> 

> Code:

> 

> F[{x_, y_}] = {f1[{x, y}], f2[{x, y}]};

> 

> jacobian[{x_, y_}] = Transpose[{\[PartialD]x F[{x, y}], \[PartialD]y F

> [{x, y}]}];

> 

> MatrixForm[jacobian[{x, y}]];

> 

> NewtonSystem[X0_, max_] := Module[{},

>          n = 2;

>          k = 0;

>          Dp = {0, 0};

>          P0 = X0;

>          F0 = F[P0];

>          Print["F[", P0, "]=", N[F0, 3]];

>          P1 = P0;

>          F1 = F0;

>          While[k < max,

>                 k = k + 1;

>                  P0 = P1;

>                F0 = F1;

>                 J0 = jacobian[P0];

>                 det = Det[J0];

>                 If[det == 0, Dp = {0, 0}, Dp = Inverse[J0].F0];

>                 P1 = P0 - Dp;

>                F1 = F[P1];

>          Print["F[", P1, "]=", N[F1, 3]];];];

> 

> 

> 

> where f1[x, y] and f2[x, y] are defined in this way

> 

> 

> 

> Code:

> 

> f1[{x_, y_}] = n/x - Sum[y*Exp[-y*A*t[i]]*T[i+1], {i, 0, n-1}];

> 

> f2[{x_, y_}] = n/y - Sum[A*t[i], {i, 0, n-1}] - Sum[x*Exp[-y*A*t[i]]*T

> [i+1], {i, 0, n-1}] + Sum[y*x*A*t[i]*Exp[-y*A*t[i]]*T[i+1], {i, 0,

> n-1}];

> 

> 

> 

> 

> T[i] e t[i] are functions defined point-by-point  (from T[1] to T[50]

> and from t[0] to t[49]) with this syntax:

> 

> 

> Code:

> 

> t[0] = *un certo numero*; t[1] = *un altro numero*; t[2] = *ancora un

> altro numero*; ... T[1] = *numero*; T[2] = *altro numero* ...

> 

> 

> 

> I got an error on the second line

> 

> 

> 

> Code:

> 

> jacobian[{x_, y_}] = Transpose[{\[PartialD]x F[{x, y}], \[PartialD]y F

> [{x, y}]}];

> 

> 

> 

> Mathematica's kernel warns me with this message when i try to insert

> it:

> 

> 

> Code:

> 

> Syntax::sntxf: "jacobian[{x_, y_}] = Transpose[{" cannot be followed

> by

>     "\[PartialD]x F[{x, y}], \[PartialD]y F[{x, y}]}];".

> 

> 

> 

> 

> This line should define a 2-variables function named jacobian, that is

> a jacobian matrix. I'm not a Mathematica-guru, but the code should

> work anyway.

> 

> What's wrong there? f1 and f2 seem well defined (i.e., when i write

> them Mathematica doesn't say nothing bad):

> 

> 

> 

> Thank you all ;)

> 




  • Prev by Date: Re: Partial derviatives in mathematica
  • Next by Date: Re: Mathematica and LyX - Graphics and equations
  • Previous by thread: Re: Partial derviatives in mathematica
  • Next by thread: Re: Partial derviatives in mathematica