Re: Function Programming Problems

*To*: mathgroup at smc.vnet.net*Subject*: [mg90809] Re: [mg90782] Function Programming Problems*From*: Sseziwa Mukasa <mukasa at jeol.com>*Date*: Fri, 25 Jul 2008 06:12:53 -0400 (EDT)*References*: <200807240851.EAA18893@smc.vnet.net>

On Jul 24, 2008, at 4:51 AM, davey79 at gmail.com wrote: > Hello, > > A colleague and myself are working on some Mathematica labs for > Calculus using Mathematica 6.0 and I can't seem to find any > information or examples that explain defining functions and using > functions as arguments. > > I want to define a LinearApproximation command that preferably would > take two arguments and return the linear approximation. Ideally, > > LinearApproximation[function_,a_] would have > LinearApproximation[Sin[x],0] give "x" as the output. > > So far I have: > LinearApproximation[function_, a_, x_] := function[a] + > function'[a]*(x - a) > > which works mostly nicely, except it only works with > LinearApproximation[Sin,0,x]. > > Does anyone know how I would fix this to allow Sin[x] as input (or > even x^2, etc)? Getting rid of the third argument "x" would be nice, > but not necessary. Sin[x] is not a function in Mathematica, Sin[#]& or Function[{x},Sin [x]] are functions, you can pass them as arguments, so LinearApproximation[Sin[#]&,a,x] works, as does LinearApproximation[#^2&,a,x] Two other notes; first Mathematica will simplify the resulting polynomials so you may not get the exact results you expected, secondly for built in functions of a single argument the expression LinearApproximation[Sin, a, x] is also allowed as shorthand. Finally, Mathematica already has a function for series expansion called Series which you may want to look at. Regards, Ssezi

**Follow-Ups**:**Re: Re: Function Programming Problems***From:*Murray Eisenberg <murray@math.umass.edu>

**References**:**Function Programming Problems***From:*davey79@gmail.com