0
|
2507 Views
|
|
0 Total Likes
View groups...
Share
GROUPS:

How can I get Mathematica to completely evaluate my function?

Posted 11 years ago
 Hello.  I have done a bit of serching on the the internet for a solution which has typically worked but after searching I am turning to the community.  I am trying to calculate derivatives for a functional form of a physical interation, hydrogen bonding.  I have it programmed in Fortran but I would like to double check my results.    The function depends on the the angles and distances between atoms.  I am calculating these angles from the cartesian coordinates of the atoms using  Theta = Arccos(Dot[X,Y)] / Norm*Norm)where X and Y are the coordinate vectors.  I have a defined function, Fgeom, which depends on 5 variables.  Each of the these variables are caluculated with other functions from the angle formual above.  This works when I solve the equation for the values of the h bonding and I get a number that is verified by my code and another program.  This lets me know I have programmed the correct form for the function. I read in the values of the coordinates using the formFGeom[Angle1,Angle2,Angle3,Angle4,Angle5]/. x -> 1.0 /. y -> 2.0 etc...  The problem occurs when I try to find the derivative.  I use the expressionD[FGeom[Angle1,Angle2,Angle3,Angle4,Angle5], x ]./x->1.0, ./ y -> 1.0 etc.    Mathematica evaluates the expression but rather than give me a single number for the value of the derivaitve it gives me something like this0.000013795*(0.545679 + 0.0548247*Abs[-0.724238])I have tried useing N[  ] to force numerical evaluation.  Has anyone encountered this before??/Cheers and thanks in advance