Re: multiple derivatives?

*To*: mathgroup at smc.vnet.net*Subject*: [mg45436] Re: multiple derivatives?*From*: Roland Franzius <roland.franzius at uos.de>*Date*: Wed, 7 Jan 2004 17:31:00 -0500 (EST)*Organization*: Universitaet Hannover*References*: <200312271000.FAA02128@smc.vnet.net> <bt0ujs$hf8$1@smc.vnet.net>*Sender*: owner-wri-mathgroup at wolfram.com

Michael Alfaro wrote: > Hi all, > > I have been struggling with the following problem and would be grateful > for any advice on how to proceed. The rather ugly function below (uKT) > describes a four-bar mechanism found in the jaws of some fishes and > relates lower jaw opening to motion expressed at another jaw bone (uKT > is a measure of mechanical advantage). > > (uDiagonal[input_, fixed_, angleA_] := Sqrt[input^2 + fixed^2 - > 2*input*fixed*Cos[angleA*(Pi/180)]]; )* > (uAngYZ[fixed_, input_, coupler_, output_, angleA_] := > ArcCos[(coupler^2 + output^2 - uDiagonal[input, fixed, > angleA]^2)/(2*coupler*output)]*(180/Pi); )* > (uAngW[fixed_, input_, coupler_, output_, angleA_] := > ArcCos[(uDiagonal[input, fixed, angleA]^2 + fixed^2 - input^2)/ > (2*uDiagonal[input, fixed, angleA]*fixed)]*(180/Pi); )* > (uAngX[fixed_, input_, coupler_, output_, angleA_] := > ArcCos[(coupler^2 + uDiagonal[input, fixed, angleA]^2 - output^2)/ > (2*coupler*uDiagonal[input, fixed, angleA])]*(180/Pi); )* > (uAngY[f_, i_, c_, o_, A_] := 90 - uAngW[f, i, c, o, A] - uAngX[f, > i, c, o, A]; )* > (uAngZ[f_, i_, c_, o_, A_] := uAngYZ[f, i, c, o, A] - uAngY[f, i, c, > o, A]); > uKT[f_, i_, c_, o_, A_] := (uAngZ[f, i, c, o, A + 30] - uAngZ[f, i, c, > o, A])/30 > uKT[1, 0.409923448, 0.420293528, 0.558332627, 30] > > I am interested in how uKT changes as a of function to i, c, and o, and > have been calculating partial derivatives of each of these variables > for a number of fish species. Here is an example of the partial > derivative of i evaluated for one species : > > Derivative[0, 1, 0, 0, 0][uKT][1, 0.7`, 0.9`, 0.74`, 30] > > However, what I would really like to know is, given a unit small amount > of change that can be distributed over all three variables in any way, > how much does uKT change. I initially thought that I could get at > that by taking the multiple derivative of all three variables. > > Derivative[0, 1, 1, 1, 0][uKT][1, 0.7`, 0.9`, 0.74`, 30] > > However, I now have doubts that the multiple partial derivative > actually tells me this. Does anyone have any insight into this > problem? Thanks! > > Michael > Really no Mathematica user knows? Could be the effect of using Mathematica to much instead of mathematics. The linear approximation of a realfunction f of n variables X[n_,x_String]:=Table[ToExpression[x<>ToString[k]],{k,1,n}] at a fixed point of approximation Xa={1.1, 2.2, ... , n.n} one gets by linear combining the linear approximations in the directions of the n variables f@@(X[3, "x"] + X[3, "h"]) -> f@@X[3, "x"] + Dot[X[3, "h"], (D[f @@ X[3, "x"], #] &) /@ X[3, "x"]] evaluates f[h1 + x1, h2 + x2, h3 + x3] -> f[x1, x2, x3] + h3*Derivative[0, 0, 1][f][x1, x2, x3] + h2*Derivative[0, 1, 0][f][x1, x2, x3] + h1*Derivative[1, 0, 0][f][x1, x2, x3] This is the famous formula of multidimensional calculus f[\vec x + \vec h] = f[x] + sum_k h_k \partial/\partial x_k f[x] + o(h^2) -- Roland Franzius