具有非符号头部的表达式
大部分情况下,我们希望像
这样的表达式的头部 f 是一个简单符号,但具有非符号头部表达式也有一些重要应用.
| In[1]:= |
| Out[1]= |
| In[2]:= |
| Out[2]= |
将一个复杂的表达式用作头部的情况在 "纯函数" 节已遇到. 将 Function[vars, body] 作为表达式的头部时就定义了对变量求值的函数.
头部为 Function[x, x^2] 的表达式的值是其变量的平方.
| In[3]:= |
| Out[3]= |
在 Mathematica 中有一些类似于纯函数的结构,它们用来表示数值函数等一些特殊的函数. 在所有情况下,基本机制是给出能够包含所需要的函数完整信息的头部.
| Function[vars,body][args] | 纯函数 |
| InterpolatingFunction[data][args] | 由 Interpolation 和 NDSolve 产生的近似数值函数 |
| CompiledFunction[data][args] | 由 Compile 产生的编译数值函数 |
| LinearSolveFunction[data][vec] | 由 LinearSolve 产生的矩阵解函数 |
| In[4]:= |
| Out[4]= |
这是 InterpolatingFunction 的目标.
| In[5]:= |
| Out[5]= |
| In[6]:= |
| Out[6]= |
考虑一个求导运算的例子,在 "导数的表示" 节将要讨论的表达式
求函数
的导数,在 Mathematica 中
用 Derivative[1][f] 表示,"函数操作符" Derivative[1] 作用于
后给出另一个函数
.
| In[7]:= |
Out[7]//FullForm= | |
| In[8]:= |
| Out[8]= |
