FME 四则运算中数学函数Math Functions
- 格式:doc
- 大小:65.50 KB
- 文档页数:3
simulink的math function的用法概述及解释说明1. 引言1.1 概述本文将详细介绍Simulink中Math Function的用法,并对其进行概述和解释说明。
Math Function模块作为Simulink中常用的数学函数模块之一,提供了丰富的数学运算和计算功能,能够帮助用户实现各种复杂的数学操作。
1.2 文章结构本文将按照以下章节结构进行讲解:- 引言:简要介绍文章的概述、目的和结构。
- Simulink 的Math Function 模块:介绍Math Function模块的基本信息、用法和高级应用。
- Simulink 中常见的数学函数:介绍Simulink中常见的四则运算、数学运算和几何函数以及它们在Simulink中的使用方法。
- Simulink 中其他常用的Math 函数模块:介绍除Math Function模块以外一些常见且重要的Simulink Math模块,包括Lookup Table、Interpolation Using Prelookup 和Interpolation Using Table功能以及Sine Wave Generator模块等。
- 结论:总结Math Function模块在Simulink中的重要性和应用范围,并对全文内容进行总结与展望。
1.3 目的本文旨在帮助读者更好地理解并掌握Simulink中Math Function模块的使用方法和功能,丰富读者对Simulink中数学函数的认识,并提供实际的应用示例和演示,以帮助读者在工程实践中更好地应用Math Function模块解决问题。
同时,本文也将总结Math Function模块的重要性和应用范围,为读者提供一个全面的概述。
2. Simulink 的Math Function 模块:2.1 Math Function 模块简介:Simulink中的Math Function模块是一种功能强大且常用的工具,用于对输入信号进行各种数学运算和操作。
MATLAB函数介绍MATLAB是一种高级技术计算软件和编程语言,广泛应用于科学、工程和工业领域。
它提供了许多内置函数和工具箱,用于各种数学、统计、数据分析、图像处理、控制系统设计、信号处理等任务。
下面介绍一些常用的MATLAB函数:1. abs(:用于计算复数的绝对值。
对于实数,它返回实数的绝对值。
2. sin(、cos(、tan(:用于计算三角函数的值。
它们分别计算正弦、余弦和正切函数的值。
3. sqrt(:用于计算一个非负实数的平方根。
4. log(、log10(:用于计算自然对数和以10为底的对数。
5. exp(:用于计算自然常数e的幂次方。
6. max(、min(:用于计算向量或矩阵中的最大值和最小值。
7. sum(:用于计算向量或矩阵中的元素之和。
8. mean(:用于计算向量或矩阵的均值。
9. median(:用于计算向量或矩阵的中位数。
10. sort(:用于对向量或矩阵的元素进行排序。
11. reshape(:用于改变矩阵的维度。
可以将一个矩阵重新排列为其他形状。
12. size(:用于获取矩阵的大小。
返回一个包含矩阵行数和列数的向量。
13. length(:用于获取向量的长度。
返回向量中元素的个数。
14. linspace(:用于在指定的间隔内生成均匀间隔的向量。
15. rand(:用于生成均匀分布的随机数。
16. imread(:用于读取图像文件。
返回一个包含图像像素值的矩阵。
17. imshow(:用于显示图像。
可以将图像像素值矩阵转换为可视化的图像。
18. imresize(:用于改变图像的大小。
可以对图像进行缩放或放大。
19. filter(:用于进行滤波处理。
可以对信号进行平滑、降噪或频域滤波。
20. fft(:用于进行快速傅里叶变换。
可以将信号从时域转换到频域。
21. ifft(:用于进行逆向傅里叶变换。
可以将信号从频域转换回时域。
22. tf(:用于创建传递函数对象。
jmeter中__math函数的用法-回复JMeter是一款功能强大的性能测试工具,经常被用于测试Web应用程序的性能。
除了一些基本的功能外,JMeter还提供了许多高级函数,用于在测试脚本中执行各种数学计算。
其中之一就是__math函数。
__math函数是JMeter提供的一个高级函数,它可以用于执行数学计算。
它可以对整数、浮点数和变量执行各种数学运算,包括加法、减法、乘法、除法、取余和幂运算等。
使用__math函数可以在测试脚本中方便地执行复杂的数学计算,从而满足不同的测试需求。
__math函数的语法如下:{__math(expression[,variable])}其中,expression是要计算的数学表达式,可以是简单的数值运算,也可以是复杂的数学公式。
variable是可选参数,用于指定存储结果的变量名。
接下来,我们将一步一步地介绍__math函数的使用方法。
步骤一:打开JMeter并创建测试计划。
首先,打开JMeter应用程序并创建一个新的测试计划。
然后,在测试计划下创建一个线程组,用于定义要执行的测试任务。
步骤二:添加一个Sampler。
在线程组下添加一个Sampler,用于发送请求和接收响应。
可以根据测试需求选择不同的Sampler,比如HTTP 请求、FTP请求等。
步骤三:添加一个__math函数。
在Sampler下添加一个正则表达式提取器。
在提取器的"Reference Name"字段中输入一个变量名,用于存储计算结果。
步骤四:输入数学表达式。
在__math函数的参数中,输入要计算的数学表达式。
这个表达式可以包含常量和变量,还可以使用各种数学运算符。
步骤五:运行测试计划。
保存测试计划并运行它。
JMeter将执行__math 函数的数学计算,并将结果存储在指定的变量中。
步骤六:使用计算结果。
在测试计划中的其他组件中,可以使用存储的变量来执行其他计算或判断。
pythonmath库中的数学函数1.math.ceil():返回不小于给定数字的最小整数。
2.math.factorial():返回给定整数的阶乘。
3.math.fabs():返回数字的绝对值。
4.math.floor():返回小于给定数字的最大整数。
5.math.fmod():返回不小于给定值的最大值。
6.math.gcd():求两个数的最大公约数。
7.math.isfinite():检查给定值是否为有限值。
8.math.isnan():检查给定值是否为“无穷”值。
9.math.log():返回以给定底数为底的对数。
10.math.log10():返回以10为底数的对数。
11.math.modf():返回浮点数的整数部分和小数部分。
12.math.pow():返回给定数的n次方。
13.math.radians():将角度转换为弧度。
14.math.sin():返回弧度的正弦值。
15.math.cos():返回弧度的余弦值。
16.math.tan():返回弧度的正切值。
17.math.asin():返回弧度的反正弦值。
18.math.acos():返回弧度的反余弦值。
19.math.atan():返回弧度的反正切值。
20.math.degrees():将弧度转换为角度。
21.math.hypot():计算x和y平方和的平方根。
22.math.pi:返回圆周率,精确到小数点后位数。
23.math.e:返回自然常数,精确到小数点后位数。
24.math.exp():可以用来计算e的幂次方。
25.math.gamma():返回给定数的伽玛值。
math函数用法math函数是python中一个内置的模块,它提供了对复杂的数学运算的支持。
由于它内部拥有众多高级函数和常量,能够极大地方便我们的开发工作。
math模块中的函数如下:1、ceil函数:该函数用于计算浮点数的上限,即取不小于参数的值且最接近的整数。
2、floor函数:该函数用于计算浮点数的下限,即取不大于参数的值且最接近的整数。
3、fabs函数:该函数用于计算绝对值,即取参数的绝对值。
4、trunc函数:该函数用于计算小数点后截断,即取整数部分,舍弃小数部分。
5、log函数:该函数用于计算以e(自然常数)为底的对数。
6、factorial函数:该函数用于计算阶乘,即将非负整数的所有正因子相乘,得到的结果。
7、sqrt函数:该函数用于计算平方根,即参数的平方根。
8、pow函数:该函数用于计算a的b次幂,即a的b次方。
9、exp函数:该函数用于计算e的指数,即以e为底的数的指数。
10、cos函数:该函数用于计算余弦,即求出x的余弦值。
11、sin函数:该函数用于计算正弦,即求出x的正弦值。
12、tan函数:该函数用于计算正切,即求出x的正切值。
13、atan函数:该函数用于计算反正切,即求出tanx-1的值。
使用math模块时,需要先import math,然后在使用的时候通过math.函数名来调用,例如计算fabs(3.4),可以写成:import mathfabs_res = math.fabs(3.4)print(fabs_res)运行结果为:3.4从上述内容可以看出,math模块提供了众多实用的函数,能够帮助开发者更加有效地完成相应的数学运算。
在具体开发中,我们始终要注意使用必要的函数,并保持函数的调用参数合理,这样才能有效地保证代码的可操作性。
jmeter中__math函数的用法-回复JMeter是一款开源的性能测试工具,被广泛应用于压力测试和负载测试场景中。
其强大的功能和灵活的可扩展性使得它成为了众多测试人员和开发人员的首选工具之一。
在JMeter中,__math函数是一种非常有用的函数,它可以在测试脚本中进行数学计算,从而实现更加复杂和灵活的测试场景。
在本篇文章中,我们将一步一步地介绍__math函数的用法和示例,以帮助初学者快速掌握和应用这一重要的函数。
首先,我们需要了解__math函数的基本语法。
__math函数的语法如下:{__math(calculation[,variableName])}其中,calculation是进行数学计算的表达式,可以使用各种基本的数学运算符和函数;variableName是可选参数,用于将计算结果保存到一个变量中。
接下来,我们将通过一些实际的示例来演示__math函数的用法。
示例1:基本的数学计算在这个示例中,我们将使用__math函数进行一些基本的数学计算。
假设我们希望计算1+2的结果,并将结果保存到一个变量中,以备后续使用。
我们可以这样编写测试脚本:Thread Group-> Sampler-> Post-Processor (Regular Expression Extractor)- Regular Expression: "(\d+)" (提取数字)- Template: 1 (保存到变量result中)-> Sampler- Body: {__math(1+2,result)}在这个测试脚本中,首先我们使用了一个正则表达式提取器(Regular Expression Extractor)来提取计算结果中的数字,并将其保存到变量result中。
然后,我们在第二个Sampler中使用{__math(1+2,result)}来计算1+2的结果,并使用变量result保存计算结果。
MATLAB常用函数总结MATLAB是一个功能强大的数值计算与科学数据可视化工具,具备丰富的函数库,可以用于各种数学计算、数据处理、统计分析和图形绘制等任务。
在下面的总结中,我们将介绍一些常用的MATLAB函数,以帮助您更好地使用这个软件。
一、数学计算函数1. abs(x):求x的绝对值。
2. sign(x):返回x的符号,正数返回1,负数返回-1,零返回0。
3. sqrt(x):求x的平方根。
4. exp(x):计算e的x次幂。
5. log(x):以e为底的对数。
6. log10(x):以10为底的对数。
7. sin(x):计算x的正弦值。
8. cos(x):计算x的余弦值。
9. tan(x):计算x的正切值。
10. asin(x):计算x的反正弦值。
11. acos(x):计算x的反余弦值。
12. atan(x):计算x的反正切值。
13. floor(x):返回不超过x的最大整数。
14. ceil(x):返回不小于x的最小整数。
15. round(x):将x四舍五入为最接近的整数。
二、数据处理函数1. size(A):返回矩阵A的大小。
2. length(A):返回矩阵A的最大维度。
3. sum(A):对矩阵A的元素求和。
4. mean(A):求矩阵A的平均值。
5. max(A):找到矩阵A的最大值。
6. min(A):找到矩阵A的最小值。
7. sort(A):对矩阵A进行排序。
8. reshape(A, m, n):将矩阵A重塑为m行n列的矩阵。
9. repmat(A, m, n):将矩阵A重复m行n列。
10. find(A):返回矩阵A中非零元素的索引。
三、统计分析函数1. mean(A):求矩阵A的平均值。
2. median(A):求矩阵A的中位数。
3. std(A):求矩阵A的标准差。
4. var(A):求矩阵A的方差。
5. corrcoef(A):计算矩阵A的相关系数矩阵。
6. cov(A):计算矩阵A的协方差矩阵。
MATHEMATICA基本数学函数及应用MATHEMATICA第一讲1 数的运算算例378/123N[378/123,6] (*取小数点后6位的近似值*)Pi^2E^(-1)100!N[Pi,100]N[I^(-I)]2 常用数学函数Sqrt[ ]平方根, Exp[ ]指数函数, Log[ ] 对数函数,Sin[ ] 正弦函数, Cos[ ] 余弦函数,T an[ ] 正切函数, Cot[ ] 余切函数,Sec[ ] 正割函数, Csc[ ] 余割函数,ArcSin[ ] 反正弦函数, ArcCos[ ] 反余弦函数,ArcT an[ ] 反正切函数, ArcCot[ ] 反余切函数, ArcSec[ ] 反正割函数, ArcCsc[ ] 反余割函数,Sinh[ ] 双曲正弦, Cosh[ ] 双曲余弦,T anh[ ] 双曲正切, Coth[ ] 双曲余切,Sech[ ] 双曲正割, Csch[ ] 双曲余割,ArcSinh[ ]反双曲正弦, ArcCosh[ ]反双曲余弦,ArcT anh[ ]反双曲正切, ...算例Sin[N[Sqrt[3],50]]3 其它函数! 阶乘Mod[n,m] n取模m的结,Quoti ent[n,m] n除以m的商的整数部分GCD[n,m]LCM[n,m] n和m的最大公约数和最小公约数Round[ ] 距离近似数x最近的整数Floor[ ] 不大于x的最大整数算例100!Quoti ent[10,3]GCD[105,30]Round[-1.234]Floor[-1.234]4 变量的赋值与替换算例f1=x^2+3 x+1 (*将表达式赋给变量f1*)f1/.x->3 (*求f1当x=3时的值f1(3)*)f1/.x->x+1 (*在f1中用x+1替换x得到f1(x+1)*) f1=. (*取消变量f1的定义*)f1/.x->3 (*此时已经得不到所想的结果f1(3)*)5 多项式计算Expand[p] (* 多项式展开*)Factor[p] (*多项式因式分解*)算例p1=x^3-6x^2+11x-6p2=(x-1)*(x-2)*(x-3)Factor[p1]Expand[p2]MATHEMATICA第二讲一元函数的图形一命令语句Plot[表达式,{变量,下限,上限},可选项]Plot[{表达式,表达式,...},{变量,下限,上限},可选项]二可选参数项第一类参数1. PlotRange->{y1,y2} 指定作图纵座标范围为(y1,y2)默认值为Atuomatic或指定All执行算例Plot[T an[x],{x,-2Pi,2Pi}]Plot[T an[x],{x,-2Pi,2Pi},PlotRange->{-10,10}]Plot[Exp[-x^2]*Sin[6x],{x,-2,2},PlotRange->{-0.5,0.5}]Plot[Exp[-x^2]*Sin[6x],{x,-2,2},PlotRange->All]2.AspectRatio->Automatic 按实际比例作图默认值为Atuomatic=0.618:1执行算例Plot[Sqrt[1-x^2],{x,-1.5,1.5}]Plot[Sqrt[1-x^2],{x,-1.5,1.5}, AspectRatio->Automatic] 3. Axes->Automatic 画坐标轴自动确定位置Axes->None 不画坐标轴Axes->{x0,y0} 指定坐标原点在(x0,y0)处执行算例Plot[Cos[x],{x,-2Pi,2Pi}]Plot[Cos[x],{x,-2Pi,2Pi},Axes->None]Plot[Cos[x],{x,-2Pi,2Pi},Axes->{1,2}]4 AxesLabel->None 不说明坐标轴的标记AxesLabel->{x,y} 指定横轴为x纵轴为yAxesLabel->{u,v} 指定横轴为u纵轴为v执行算例Plot[Sin[x]/x,{x,-10,10},AxesLabel->None]Plot[Sin[x]/x,{x,-10,10},AxesLabel->{x,y}]Plot[Sin[x]/x,{x,-10,10},AxesLabel->{时间T,电流I}]5. Ticks->{i,j} 规定坐标轴上的刻度位置Ticks->{t1,t2,t3,...}执行算例Plot[{ArcSin[x],ArcCos[x]},{x,-1,1},PlotStyle->{{RGBColor[0,1,1],Thickness[0.01]}, {RGBColor[1,0,1],Dashing[{0.05,0.05}]}}]第二类参数1.DisplayFunction->Identity 只生成图形现在不显示执行算例Plot[{Sin[T an[x]]-T an[Sin[x]]},{x,1,2},DisplayFunction->Identity]Plot[{Sin[T an[x]]-T an[Sin[x]]},{x,-2,2}]2. PlotPoints->50 指定计算函数值的取点数为50执行算例Plot[{Sin[T an[x]]-T an[Sin[x]]},{x,-2,2},PlotPoints->50]3. MaxBend 说明曲线的折线在相邻两段之间的最大折角执行算例4. PlotDivision 说明取点的限度执行算例5.PlotStyle->Thickness[t] 描述线宽PlotStyle->GrayLevel[i] 描述灰度PlotStyle->RGBColor[r,g,b] 描述颜色PlotStyle->Dashing[{d1,d2,...}] 描述虚线的画法PlotStyle->PointSize[0.03] 描述点的大小执行算例Plot[{Sin[x],Sin[2x],Sin[3x]},{x,0,2Pi},PlotStyle->{RGBColor[1,0,0],RGBColor[0,1,0],RGBColor[0,0,1]}]Plot[Sin[1/x],{x,-1,1}]Plot[Sqrt[1+x^2],{x,-6,6},PlotStyle->Dashing[{0.02,0.01}]] Plot[Sin[Cos[Sin[x]]],{x,-Pi,Pi}]Plot[(T an[Sin[x]]-Sin[T an[x]])/x^2,{x,-5,5}]Plot[{E^x,ArcT an[x],E^ArcT an[x]},{x,-5,5},PlotPoints->100] 三图形的重新显示,组合,存储和输出Show[t] 重新显示Show[t1,t2,...,tn] 将几个图形合在一起执行算例f1=Plot[x,{x,0.1,2},PlotRange->{0,2}]f2=Plot[1/x,{x,0.1,2},PlotRange->{0,3}]f3=ParametricPlot[{2,t},{t,0,2}]Show[f1,f2,f3]Display["filename",图形]保存图形到文件中存为Postsceipt格式Hardcopy[图形] 将图形送去打印四二维参数图形ParametricPlot[{x(t),y(t)},{t,下限,上限},可选项]执行算例ParametricPlot[{Sin[t],Cos[t]},{t,0,2*Pi},AspectRatio->Automatic]ParametricPlot[{Sin[2*t],Cos[3*t]},{t,0,2*Pi},AspectRatio->Automatic]y1=ParametricPlot[{Cos[t]^3,Sin[t]^3},{t,0,2*Pi}, AspectRatio->Automatic]y2=ParametricPlot[{Cos[t],Sin[t]},{t,0,2*Pi},AspectRatio->Automatic] Show[y1,y2]z1=ParametricPlot[{t-Sin[t],1-Cos[t]},{t,0,2*Pi}, AspectRatio->Automatic]五极坐标图形执行算例r[t_]:=(3Cos[t]^2-1)/2ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=2(1-Cos[t])ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=2Sin[3t]ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=Cos[2*t]ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=0.5*tParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=Exp[t/3]ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]r[t_]:=Cos[8*t]ParametricPlot[{r[t] Cos[t],r[t] Sin[t]},{t,0,2Pi}, AspectRatio->Automatic]介绍:Hue六动画制作<<="">Animate[图形,{自变量,下限,上限}],{参变量,下限,上限,步长}]执行算例<<graphics\animatio.m< p="">Animate[Plot[Sin[x+t*Pi],{x,0,10Pi}],{t,0,5/3,1/3}]T able[k, 100]MATHEMATICA第三讲三维作图一命令语句Plot3D[函数表达式,,,{变量,上限,下限},{可选项}]Plot3D[{函数表达式,着色表达式},{变量,上限,下限},{变量,上限,下限},{可选项}]二可选参数项1 PlotRange,说明要求的图形显示范围2 PlotLabel,说明图的名称标注3 AspectRatio,说明整个图的高度比4 Boxed:说明是否给图形加一个立体框5 BoxRation:说明图形立体框在三个方向的长度比6 ViewPoints:在将三维图形投射到平面上时使用的观察点.7 Mesh:说明在曲线上是否画网格8 HiddenSurface:曲面被挡住的部分是否隐掉9 Shading:在曲面上是否涂阴影10 lightScources:设置照明光源11 Lighting:说明是否打开已经设置的光源12 AmbienLight:漫射光设置.默认值是黑色,用GrayLevel[0]表示13 ClipFill:作出的图形中被切掉的那些部分用什么方法填充14 Axes:说明是否画坐标轴以及把坐标轴中心放在什么地方15 Ticks:规定坐标轴上刻度的位置执行算例1 默认情形Plot3D[x^2+y^2,{x,-1,1},{y,-1,1}]2 适当选取X,Y,Z轴的比例关系Plot3D[x^2+y^2,{x,-1,1},{y,-1,1},BoxRatios->{1,1,1.5}]3 不加阴影的情形Plot3D[x^2+y^2,{x,-1,1},{y,-1,1},BoxRatios->{1,1,1.5},Shading->False]4 不打开照明的情形Plot3D[x^2+y^2,{x,-1,1},{y,-1,1},BoxRatios->{1,1,1.5},Lighting->False]5 不设网格的情形Plot3D[x^2+y^2,{x,-1,1},{y,-1,1},BoxRatios->{1,1,1.5},Boxed->False,Axes->False,Mesh->False]-SurfaceGraphics-6 用参数方式图形更合乎实际情形ParametricPlot3D[{函数表达式},{变量,上限,下限},{可选项}]ParametricPlot3D[{v Sin[u],v Cos[u],v^2},{v,0,1},{u,0,2Pi}, BoxRatios->{1,1,1}] ParametricPlot3D[{u,u^2,t},{u,-1,1},{t,0,1}, PlotPoints->25,Lighting->True, ViewPoint->{2,-1,1}]7 视点的选择Plot3D[Cos[Sqrt[x^2+y^2]],{x,-10,10},{y,-10,10},PlotPoints->25,Lighting->True, ViewPoint->{1,1,2}]Plot3D[Cos[Sqrt[x^2+y^2]],{x,-10,10},{y,-10,10},PlotPoints->25,Lighting->True, ViewPoint->{0,0,1}]Plot3D[Cos[Sqrt[x^2+y^2]],{x,-10,10},{y,-10,10},PlotPoints->25,Lighting->True, ViewPoint->{0,1,2}]ParametricPlot3D[{u^2,u,v}, {v,0,2},{u,-2,2},BoxRatios->{1,1,0.6},ViewPoint->{1,3,1},Shading->True]8 将多个曲面放在一张图上Z1=Plot3D[x*y,{x,0,1},{y,0,1}]Z2=ParametricPlot3D[{u,u,t},{u,0,1},{t,0,1},PlotPoints->25,Lighting->True]Z3=ParametricPlot3D[{1,u,t},{u,-1,1},{t,0,1},PlotPoints->25,Lighting->True]Show[Z1,Z2,Z3,BoxRatios->{1,1,1},ViewPoint->{1,1,1},Shading->False]9 动画制作<<graphics\animatio.m< p="">Animate[ParametricPlot3D[{u,u^2,t},{u,-1,1},{t,0,1},PlotPoints->25,Lighting->True,ViewPoint->{Cos[2*Pi*t],Sin[2*Pi*t],1}],{t,0,1,1/6}]波纹面动画演示注意:此演示需要较大内存,耐心等待。
第11讲数学软件Mathematica内置函数的使用规则本讲主要内容:●基本数学函数及使用规则●基本初等函数运算举例及方法扩展规定:用于数学计算的函数简称为函数;把用于完成某项操作的命令函数简称为命令。
一些常用的基本函数:Sqrt[x]:求平方根Exp[x]:自然常数为底的指数函数,它也有直观的输入形式,这里的e是内部常数e符号。
Log[x]:自然常数为底的对数函数Log[b,x]:以b为底的对数函数Sin[x]:正弦函数 Cos[x]:余弦函数Tan[x]:正切函数Cot[x]:余切函数ArcSin[x]:反正弦函数ArcCos[x]:反余弦函数ArcTan[x]:反正切函数 ArcCot[x]:反余切函数等等...一些特殊函数:Factorial[n] 或n!:n的阶乘 Sign[x]:符号函数Abs[x]:绝对值函数,Mod[m,n]:求模余函数,用来给出m 除以 n 得到的余数.Max[x1,x2,…],Min[x1,x2,…]:最大,最小值函数,求出x1,x2等等的最大、最小值。
RandomInteger[{x1,x2}]:生成一个x1到x2范围内的一个伪[wěi]随机整数RandomReal[{x1,x2}]:生成一个x1到x2范围内的一个伪随机实数RandomComplex[{z1,z2}]:生成一个复数z1到z2范围内的一个伪随机复数Gamma[x]:伽玛函数 Beta[x]:贝塔函数Bessel[x]:贝塞尔函数LegendreP[n,x]:勒让德多项式函数等等特殊函数等等...使用Mathematica内置函数时的注意事项:(1)Mathematica内置函数名称的第一个字母要大写,而如果函数名称由几个单词,或者几个单词的缩写构成的话,则每个单词的第一个字母都要大写。
(2)Mathematica中的函数、命令、选项名称一般为完整的单词或单词组合命名,除非有标准的缩写。
(3)参数表达式一般放在方括号里面。
Mathematica函数及使用方法Mathematica函数大全--运算符及特殊符号一、运算符及特殊符号Line1;执行Line,不显示结果Line1,line2顺次执行Line1,2,并显示结果?name关于系统变量name的信息??name关于系统变量name的全部信息!command执行Dos命令n!N的阶乘!!filename显示文件内容<<filename读入文件并执行Expr>>filename打开文件写Expr>>>filename打开文件从文件末写()结合率[]函数{}一个表<*Math Fun*>在c语言中使用math的函数(*Note*)程序的注释#n第n个参数##所有参数rule&把rule作用于后面的式子%前一次的输出%%倒数第二次的输出%n第n个输出var::note变量var的注释"Astring"字符串Context`上下文a+b加a-b减a*b或a b乘a/b除a^b乘方base^^num以base为进位的数lhs&&rhs且lhs||rhs或!lha非++,--自加1,自减1+=,-=,*=,/=同C语言>,<,>=,<=,==,!=逻辑判断(同c)lhs=rhs立即赋值lhs:=rhs建立动态赋值收集制作:科研中国文章出处:南京大学小百合站lhs:>rhs建立替换规则lhs->rhs建立替换规则expr//funname相当于filename[expr]expr/.rule将规则rule应用于exprexpr//.rule将规则rule不断应用于expr知道不变为止param_名为param的一个任意表达式(形式变量)param__名为param的任意多个任意表达式(形式变量)Mathematica函数及使用方法—————————————————————————————————————二、系统常数Pi3.1415....的无限精度数值E2.17828...的无限精度数值Catalan0.915966..卡塔兰常数EulerGamma0.5772....高斯常数GoldenRatio1.61803...黄金分割数Degree Pi/180角度弧度换算I复数单位Infinity无穷大-Infinity负无穷大ComplexInfinity复无穷大Indeterminate不定式Mathematica函数及使用方法—————————————————————————————————————三、代数计算Expand[expr]展开表达式Factor[expr]展开表达式Simplify[expr]化简表达式FullSimplify[expr]将特殊函数等也进行化简PowerExpand[expr]展开所有的幂次形式ComplexExpand[expr,{x1,x2...}]按复数实部虚部展开FunctionExpand[expr]化简expr中的特殊函数Collect[expr,x]合并同次项Collect[expr,{x1,x2,...}]合并x1,x2,...的同次项Together[expr]通分Apart[expr]部分分式展开Apart[expr,var]对var的部分分式展开Cancel[expr]约分ExpandAll[expr]展开表达式ExpandAll[expr,patt]展开表达式FactorTerms[poly]提出共有的数字因子FactorTerms[poly,x]提出与x无关的数字因子FactorTerms[poly,{x1,x2...}]提出与xi无关的数字因子Coefficient[expr,form]多项式expr中form的系数收集制作:科研中国文章出处:南京大学小百合站Coefficient[expr,form,n]多项式expr中form^n的系数Exponent[expr,form]表达式expr中form的最高指数Numerator[expr]表达式expr的分子Denominator[expr]表达式expr的分母ExpandNumerator[expr]展开expr的分子部分ExpandDenominator[expr]展开expr的分母部分TrigExpand[expr]展开表达式中的三角函数TrigFactor[expr]给出表达式中的三角函数因子TrigFactorList[expr]给出表达式中的三角函数因子的表TrigReduce[expr]对表达式中的三角函数化简TrigToExp[expr]三角到指数的转化ExpToTrig[expr]指数到三角的转化RootReduce[expr]ToRadicals[expr]Mathematica函数及使用方法—————————————————————————————————————四、解方程Solve[eqns,vars]从方程组eqns中解出varsSolve[eqns,vars,elims]从方程组eqns中削去变量elims,解出varsDSolve[eqn,y,x]解微分方程,其中y是x的函数DSolve[{eqn1,eqn2,...},{y1,y2...},x]解微分方程组,其中yi是x的函数DSolve[eqn,y,{x1,x2...}]解偏微分方程Eliminate[eqns,vars]把方程组eqns中变量vars约去SolveAlways[eqns,vars]给出等式成立的所有参数满足的条件Reduce[eqns,vars]化简并给出所有可能解的条件LogicalExpand[expr]用&&和||将逻辑表达式展开InverseFunction[f]求函数f的逆函数Root[f,k]求多项式函数的第k个根Roots[lhs==rhs,var]得到多项式方程的所有根Mathematica函数及使用方法—————————————————————————————————————五、微积分函数D[f,x]求f[x]的微分D[f,{x,n}]求f[x]的n阶微分D[f,x1,x2..]求f[x]对x1,x2...偏微分Dt[f,x]求f[x]的全微分df/dxDt[f]求f[x]的全微分dfDt[f,{x,n}]n阶全微分df^n/dx^nDt[f,x1,x2..]对x1,x2..的偏微分Integrate[f,x]f[x]对x在的不定积分收集制作:科研中国文章出处:南京大学小百合站Integrate[f,{x,xmin,xmax}]f[x]对x在区间(xmin,xmax)的定积分Integrate[f,{x,xmin,xmax},{y,ymin,ymax}]f[x,y]的二重积分Limit[expr,x->x0]x趋近于x0时expr的极限Residue[expr,{x,x0}]expr在x0处的留数Series[f,{x,x0,n}]给出f[x]在x0处的幂级数展开Series[f,{x,x0,nx},{y,y0,ny}]先对y幂级数展开,再对xNormal[expr]化简并给出最常见的表达式SeriesCoefficient[series,n]给出级数中第n次项的系数SeriesCoefficient[series,{n1,n2...}]'或Derivative[n1,n2...][f]一阶导数InverseSeries[s,x]给出逆函数的级数ComposeSeries[serie1,serie2...]给出两个基数的组合SeriesData[x,x0,{a0,a1,..},nmin,nmax,den]表示一个在x0处x的幂级数,其中ai为系数O[x]^n n阶小量x^nO[x,x0]^n n阶小量(x-x0)^nMathematica函数及使用方法—————————————————————————————————————六、多项式函数Variables[poly]给出多项式poly中独立变量的列表CoefficientList[poly,var]给出多项式poly中变量var的系数CoefficientList[poly,{var1,var2...}]给出多项式poly中变量var(i)的系数列表PolynomialMod[poly,m]poly中各系数mod m同余后得到的多项式,m可为整式PolynomialQuotient[p,q,x]以x为自变量的两个多项式之商式p/q PolynomialRemainder[p,q,x]以x为自变量的两个多项式之余式PolynomialGCD[poly1,poly2,...]poly(i)的最大公因式PolynomialLCM[poly1,poly2,...]poly(i)的最小公倍式PolynomialReduce[poly,{poly1,poly2,...},{x1,x2...}]得到一个表{{a1,a2,...},b}其中Sum[ai*polyi]+b=polyResultant[poly1,poly2,var]约去poly1,poly2中的varFactor[poly]因式分解(在整式范围内)FactorTerms[poly]提出poly中的数字公因子FactorTerms[poly,{x1,x2...}]提出poly中与xi无关项的数字公因子FactorList[poly]给出poly各个因子及其指数{{poly1,exp1},{...}...}FactorSquareFreeList[poly]FactorTermsList[poly,{x1,x2...}]给出各个因式列表,第一项是数字公因子,第二项是与xi无关的因式,其后是与xi有关的因式按升幂的排列Cyclotomic[n,x]n阶柱函数Decompose[poly,x]迭代分解,给出{p1,p2,...},其中p1(p2(...))=poly收集制作:科研中国文章出处:南京大学小百合站InterpolatingPolynomial[data,var]在数据data上的插值多项式data可以写为{f1,f2..}相当于{{x1=1,y1=f1}..}data可以写为{{x1,f1,df11,df12,..},{x2,f2,df21..}可以指定数据点上的n阶导数值RootSum[f,form]得到f[x]=0的所有根,并求得Sum[form[xi]] Mathematica函数及使用方法—————————————————————————————————————七、随机函数Random[type,range]产生type类型且在range范围内的均匀分布随机数type可以为Integer,Real,Complex,不写默认为Realrange为{min,max},不写默认为{0,1}Random[]0~1上的随机实数SeedRandom[n]以n为seed产生伪随机数如果采用了<<Statistics`ContinuousDistributions`后在2.0版本为<<"D:\\Math\\PACKAGES\\STATISTI\\Continuo.m"Random[distribution]可以产生各种分布如Random[BetaDistribution[alpha,beta]]Random[NormalDistribution[miu,sigma]]等常用的分布如BetaDistribution,CauchyDistribution,ChiDistribution, NoncentralChiSquareDistribution,ExponentialDistribution, ExtremeValueDistribution,NoncentralFRatioDistribution, GammaDistribution,HalfNormalDistribution,LaplaceDistribution, LogNormalDistribution,LogisticDistribution,RayleighDistribution,NoncentralStudentTDistribution,UniformDistribution,WeibullDistributionMathematica函数及使用方法—————————————————————————————————————八、数值函数N[expr]表达式的机器精度近似值N[expr,n]表达式的n位近似值,n为任意正整数NSolve[lhs==rhs,var]求方程数值解NSolve[eqn,var,n]求方程数值解,结果精度到n位NDSolve[eqns,y,{x,xmin,xmax}]微分方程数值解NDSolve[eqns,{y1,y2,...},{x,xmin,xmax}]微分方程组数值解FindRoot[lhs==rhs,{x,x0}]以x0为初值,寻找方程数值解FindRoot[lhs==rhs,{x,xstart,xmin,xmax}]NSum[f,{i,imin,imax,di}]数值求和,di为步长NSum[f,{i,imin,imax,di},{j,..},..]多维函数求和收集制作:科研中国文章出处:南京大学小百合站NProduct[f,{i,imin,imax,di}]函数求积NIntegrate[f,{x,xmin,xmax}]函数数值积分优化函数:FindMinimum[f,{x,x0}]以x0为初值,寻找函数最小值FindMinimum[f,{x,xstart,xmin,xmax}]ConstrainedMin[f,{inequ},{x,y,..}]inequ为线性不等式组,f为x,y..之线性函数,得到最小值及此时的x,y..取值ConstrainedMax[f,{inequ},{x,y,..}]同上LinearProgramming[c,m,b]解线性组合c.x在m.x>=b&&x>=0约束下的最小值,x,b,c为向量,m为矩阵LatticeReduce[{v1,v2...}]向量组vi的极小无关组数据处理:Fit[data,funs,vars]用指定函数组对数据进行最小二乘拟和data可以为{{x1,y1,..f1},{x2,y2,..f2}..}多维的情况emp:Fit[{10.22,12,3.2,9.9},{1,x,x^2,Sin[x]},x]Interpolation[data]对数据进行差值,data同上,另外还可以为{{x1,{f1,df11,df12}},{x2,{f2,.}..}指定各阶导数InterpolationOrder默认为3次,可修改ListInterpolation[array]对离散数据插值,array可为n维ListInterpolation[array,{{xmin,xmax},{ymin,ymax},..}]FunctionInterpolation[expr,{x,xmin,xmax},{y,ymin,ymax},..]以对应expr[xi,yi]的为数据进行插值Fourier[list]对复数数据进行付氏变换InverseFourier[list]对复数数据进行付氏逆变换Min[{x1,x2...},{y1,y2,...}]得到每个表中的最小值Max[{x1,x2...},{y1,y2,...}]得到每个表中的最大值Select[list,crit]将表中使得crit为True的元素选择出来Count[list,pattern]将表中匹配模式pattern的元素的个数Sort[list]将表中元素按升序排列Sort[list,p]将表中元素按p[e1,e2]为True的顺序比较list的任两个元素e1,e2,实际上Sort[list]中默认p=Greater集合论:Union[list1,list2..]表listi的并集并排序Intersection[list1,list2..]表listi的交集并排序Complement[listall,list1,list2...]从全集listall中对listi的差集Mathematica函数及使用方法—————————————————————————————————————收集制作:科研中国文章出处:南京大学小百合站九、虚数函数Re[expr]复数表达式的实部Im[expr]复数表达式的虚部Abs[expr]复数表达式的模Arg[expr]复数表达式的辐角Conjugate[expr]复数表达式的共轭Mathematica函数及使用方法—————————————————————————————————————十、数的头及模式及其他操作Integer_Integer整数Real_Real实数Complex_Complex复数Rational_Rational有理数(*注:模式用在函数参数传递中,如MyFun[Para1_Integer,Para2_Real]规定传入参数的类型,另外也可用来判断If[Head[a]==Real,...]*) IntegerDigits[n,b,len]数字n以b近制的前len个码元RealDigits[x,b,len]类上FromDigits[list]IntegerDigits的反函数Rationalize[x,dx]把实数x有理化成有理数,误差小于dxChop[expr,delta]将expr中小于delta的部分去掉,dx默认为10^-10 Accuracy[x]给出x小数部分位数,对于Pi,E等为无限大Precision[x]给出x有效数字位数,对于Pi,E等为无限大SetAccuracy[expr,n]设置expr显示时的小数部分位数SetPrecision[expr,n]设置expr显示时的有效数字位数Mathematica函数及使用方法—————————————————————————————————————十一、区间函数Interval[{min,max}]区间[min,max](*Solve[3x+2==Interval[{-2,5}],x]*)IntervalMemberQ[interval,x]x在区间内吗?IntervalMemberQ[interval1,interval2]区间2在区间1内吗?IntervalUnion[intv1,intv2...]区间的并IntervalIntersection[intv1,intv2...]区间的交Mathematica函数及使用方法—————————————————————————————————————十二、矩阵操作a.b.c或Dot[a,b,c]矩阵、向量、张量的点积Inverse[m]矩阵的逆Transpose[list]矩阵的转置Transpose[list,{n1,n2..}]将矩阵list第k行与第nk列交换Det[m]矩阵的行列式收集制作:科研中国文章出处:南京大学小百合站Eigenvalues[m]特征值Eigenvectors[m]特征向量Eigensystem[m]特征系统,返回{eigvalues,eigvectors}LinearSolve[m,b]解线性方程组m.x==bNullSpace[m]矩阵m的零空间,即m.NullSpace[m]==零向量RowReduce[m]m化简为阶梯矩阵Minors[m,k]m的所有k*k阶子矩阵的行列式的值(伴随阵,好像是) MatrixPower[mat,n]阵mat自乘n次Outer[f,list1,list2..]listi中各个元之间相互组合,并作为f的参数的到的矩阵Outer[Times,list1,list2]给出矩阵的外积SingularValues[m]m的奇异值,结果为{u,w,v},m=Conjugate[Transpose[u]].DiagonalMatrix[w].vPseudoInverse[m]m的广义逆QRDecomposition[m]QR分解SchurDecomposition[m]Schur分解LUDecomposition[m]LU分解Mathematica函数及使用方法—————————————————————————————————————十三、表函数(*“表”,我认为是Mathematica中最灵活的一种数据类型*)(*实际上表就是表达式,表达式也就是表,所以下面list==expr*)(*一个表中元素的位置可以用于一个表来表示*)表的生成{e1,e2,...}一个表,元素可以为任意表达式,无穷嵌套Table[expr,{imax}]生成一个表,共imax个元素Table[expr,{i,imax}]生成一个表,共imax个元素expr[i]Table[expr,{i,imin,imax},{j,jmin,jmax},..]多维表Range[imax]简单数表{1,2,..,imax}Range[imin,imax,di]以di为步长的数表Array[f,n]一维表,元素为f[i](i从1到n)Array[f,{n1,n2..}]多维表,元素为f[i,j..](各自从1到ni)IdentityMatrix[n]n阶单位阵DiagonalMatrix[list]对角阵元素操作Part[expr,i]或expr[[i]]第i个元expr[[-i]]倒数第i个元expr[[i,j,..]]多维表的元expr[[{i1,i2,..}]返回由第i(n)的元素组成的子表First[expr]第一个元收集制作:科研中国文章出处:南京大学小百合站Last[expr]最后一个元Head[expr]函数头,等于expr[[0]]Extract[expr,list]取出由表list制定位置上expr的元素值Take[list,n]取出表list前n个元组成的表Take[list,{m,n}]取出表list从m到n的元素组成的表Drop[list,n]去掉表list前n个元剩下的表,其他参数同上Rest[expr]去掉表list第一个元剩下的表Select[list,crit]把crit作用到每一个list的元上,为True的所有元组成的表表的属性Length[expr]expr第一曾元素的个数Dimensions[expr]表的维数返回{n1,n2..},expr为一个n1*n2...的阵TensorRank[expr]秩Depth[expr]expr最大深度Level[expr,n]给出expr中第n层子表达式的列表Count[list,pattern]满足模式的list中元的个数MemberQ[list,form]list中是否有匹配form的元FreeQ[expr,form]MemberQ的反函数Position[expr,pattern]表中匹配模式pattern的元素的位置列表Cases[{e1,e2...},pattern]匹配模式pattern的所有元素ei的表表的操作Append[expr,elem]返回在表expr的最后追加elem元后的表Prepend[expr,elem]返回在表expr的最前添加elem元后的表Insert[list,elem,n]在第n元前插入elemInsert[expr,elem,{i,j,..}]在元素expr[[{i,j,..}]]前插入elem Delete[expr,{i,j,..}]删除元素expr[[{i,j,..}]]后剩下的表DeleteCases[expr,pattern]删除匹配pattern的所有元后剩下的表ReplacePart[expr,new,n]将expr的第n元替换为newSort[list]返回list按顺序排列的表Reverse[expr]把表expr倒过来RotateLeft[expr,n]把表expr循环左移n次RotateRight[expr,n]把表expr循环右移n次Partition[list,n]把list按每n各元为一个子表分割后再组成的大表Flatten[list]抹平所有子表后得到的一维大表Flatten[list,n]抹平到第n层Split[list]把相同的元组成一个子表,再合成的大表FlattenAt[list,n]把list[[n]]处的子表抹平Permutations[list]由list的元素组成的所有全排列的列表Order[expr1,expr2]如果expr1在expr2之前返回1,如果expr1在expr2之后返回-1,如果expr1与expr2全等返回0Signature[list]把list通过两两交换得到标准顺序所需的收集制作:科研中国文章出处:南京大学小百合站交换次数(排列数)以上函数均为仅返回所需表而不改变原表AppendTo[list,elem]相当于list=Append[list,elem];PrependTo[list,elem]相当于list=Prepend[list,elem];Mathematica函数及使用方法--绘图函数—————————————————————————————————————十四、绘图函数二维作图Plot[f,{x,xmin,xmax}]一维函数f[x]在区间[xmin,xmax]上的函数曲线Plot[{f1,f2..},{x,xmin,xmax}]在一张图上画几条曲线ListPlot[{y1,y2,..}]绘出由离散点对(n,yn)组成的图ListPlot[{{x1,y1},{x2,y2},..}]绘出由离散点对(xn,yn)组成的图ParametricPlot[{fx,fy},{t,tmin,tmax}]由参数方程在参数变化范围内的曲线ParametricPlot[{{fx,fy},{gx,gy},...},{t,tmin,tmax}]在一张图上画多条参数曲线选项:PlotRange->{0,1}作图显示的值域范围AspectRatio->1/GoldenRatio生成图形的纵横比PlotLabel->label标题文字Axes->{False,True}分别制定是否画x,y轴AxesLabel->{xlabel,ylabel}x,y轴上的说明文字Ticks->None,Automatic,fun用什么方式画轴的刻度AxesOrigin->{x,y}坐标轴原点位置AxesStyle->{{xstyle},{ystyle}}设置轴线的线性颜色等属性Frame->True,False是否画边框FrameLabel->{xmlabel,ymlabel,xplabel,yplabel}边框四边上的文字FrameTicks同Ticks边框上是否画刻度GridLines同Ticks图上是否画栅格线FrameStyle->{{xmstyle},{ymstyle}设置边框线的线性颜色等属性ListPlot[data,PlotJoined->True]把离散点按顺序连线PlotSytle->{{style1},{style2},..}曲线的线性颜色等属性PlotPoints->15曲线取样点,越大越细致三维作图Plot3D[f,{x,xmin,xmax},{y,ymin,ymax}]二维函数f[x,y]的空间曲面Plot3D[{f,s},{x,xmin,xmax},{y,ymin,ymax}]同上,曲面的染色由s[x,y]值决定收集制作:科研中国文章出处:南京大学小百合站ListPlot3D[array]二维数据阵array的立体高度图ListPlot3D[array,shades]同上,曲面的染色由shades[数据]值决定ParametricPlot3D[{fx,fy,fz},{t,tmin,tmax}]二元数方程在参数变化范围内的曲线ParametricPlot3D[{{fx,fy,fz},{gx,gy,gz},...},{t,tmin,tmax}]多条空间参数曲线选项:ViewPoint->{x,y,z}三维视点,默认为{1.3,-2.4,2}Boxed->True,False是否画三维长方体边框BoxRatios->{sx,sy,sz}三轴比例BoxStyle三维长方体边框线性颜色等属性Lighting->True是否染色LightSources->{s1,s2..}si为某一个光源si={{dx,dy,dz},color} color为灯色,向dx,dy,dz方向照射AmbientLight->颜色函数慢散射光的光源Mesh->True,False是否画曲面上与x,y轴平行的截面的截线MeshStyle截线线性颜色等属性MeshRange->{{xmin,xmax},{ymin,ymax}}网格范围ClipFill->Automatic,None,color,{bottom,top}指定图形顶部、底部超界后所画的颜色Shading->False,True是否染色HiddenSurface->True,False略去被遮住不显示部分的信息等高线ContourPlot[f,{x,xmin,xmax},{y,ymin,ymax}]二维函数f[x,y]在指定区间上的等高线图ListContourPlot[array]根据二维数组array数值画等高线选项:Contours->n画n条等高线Contours->{z1,z2,..}在zi处画等高线ContourShading->False是否用深浅染色ContourLines->True是否画等高线ContourStyle->{{style1},{style2},..}等高线线性颜色等属性FrameTicks同上密度图DensityPlot[f,{x,xmin,xmax},{y,ymin,ymax}]二维函数f[x,y]在指定区间上的密度图ListDensityPlot[array]同上图形显示Show[graphics,options]显示一组图形对象,options为选项设置Show[g1,g2...]在一个图上叠加显示一组图形对象收集制作:科研中国文章出处:南京大学小百合站GraphicsArray[{g1,g2,...}]在一个图上分块显示一组图形对象SelectionAnimate[notebook,t]把选中的notebook中的图画循环放映选项:(此处选项适用于全部图形函数)Background->颜色函数指定绘图的背景颜色RotateLabel->True竖着写文字TextStyle此后输出文字的字体,颜色大小等ColorFunction->Hue等把其作用于某点的函数值上决定某点的颜色RenderAll->False是否对遮挡部分也染色MaxBend曲线、曲面最大弯曲度图元函数Graphics[prim,options]prim为下面各种函数组成的表,表示一个二维图形对象Graphics3D[prim,options]prim为下面各种函数组成的表,表示一个三维图形对象SurfaceGraphics[array,shades]表示一个由array和shade决定的曲面对象ContourGraphics[array]表示一个由array决定的等高线图对象DensityGraphics[array]表示一个由array决定的密度图对象以上定义图形对象,可以进行对变量赋值,合并显示等操作,也可以存盘Point[p]p={x,y}或{x,y,z},在指定位置画点Line[{p1,p2,..}]经由pi点连线Rectangle[{xmin,ymin},{xmax,ymax}]画矩形Cuboid[{xmin,ymin,zmin},{xmax,ymax,zmax}]由对角线指定的长方体Polygon[{p1,p2,..}]封闭多边形Circle[{x,y},r]画圆Circle[{x,y},{rx,ry}]画椭圆,rx,ry为半长短轴Circle[{x,y},r,{a1,a2}]从角度a1~a2的圆弧Disk[{x,y},r]填充的园、椭圆、圆弧等参数同上Raster[array,ColorFunction->f]颜色栅格Text[expr,coords]在坐标coords上输出表达式PostScript["string"]直接用PostScript图元语言写Scaled[{x,y,..}]返回点的坐标,且均大于0小于1颜色函数(指定其后绘图的颜色)GrayLevel[level]灰度level为0~1间的实数RGBColor[red,green,blue]RGB颜色,均为0~1间的实数Hue[h,s,b]亮度,饱和度等,均为0~1间的实数CMYKColor[cyan,magenta,yellow,black]CMYK颜色其他函数(指定其后绘图的方式)Thickness[r]设置线宽为r收集制作:科研中国文章出处:南京大学小百合站PointSize[d]设置绘点的大小Dashing[{r1,r2,..}]虚线一个单元的间隔长度ImageSize->{x,y}显示图形大小(像素为单位)ImageResolution->r图形解析度r个dpiImageMargins->{{left,right},{bottom,top}}四边的空白ImageRotated->False是否旋转90度显示Mathematica函数及使用方法——流程控制—————————————————————————————————————十五、流程控制分支If[condition,t,f]如果condition为True,执行t段,否则f段If[condition,t,f,u]同上,即非True又非False,则执行u段Which[test1,block1,test2,block2..]执行第一为True的testi对应的blockitch[expr,form1,block1,form2,block2..]执行第一个expr所匹配的formi所对应的blocki段循环Do[expr,{imax}]重复执行expr imax次Do[expr,{i,imin,imax},{j,jmin,jmax},...]多重循环While[test,body]循环执行body直到test为FalseFor[start,test,incr,body]类似于C语言中的for,注意","与";"的用法相反examp:For[i=1;t=x,i^2<10,i++,t=t+i;Print[t]]异常控制Throw[value]停止计算,把value返回给最近一个Catch处理Throw[value,tag]同上,Catch[expr]计算expr,遇到Throw返回的值则停止Catch[expr,form]当Throw[value,tag]中Tag匹配form时停止其他控制Return[expr]从函数返回,返回值为exprReturn[]返回值NullBreak[]结束最近的一重循环Continue[]停止本次循环,进行下一次循环Goto[tag]无条件转向Label[Tag]处Label[tag]设置一个断点Check[expr,failexpr]计算expr,如果有出错信息产生,则返回failexpr的值Check[expr,failexpr,s1::t1,s2::t2,...]当特定信息产生时则返回failexpr CheckAbort[expr,failexpr]当产生abort信息时放回failexprInterrupt[]中断运行Abort[]中断运行收集制作:科研中国文章出处:南京大学小百合站TimeConstrained[expr,t]计算expr,当耗时超过t秒时终止MemoryConstrained[expr,b]计算expr,当耗用内存超过b字节时终止运算交互式控制Print[expr1,expr2,...]顺次输出expri的值examp:Print["X=",X//N,"",f[x+1]];Input[]产生一个输入对话框,返回所输入任意表达式Input["prompt"]同上,prompt为对话框的提示Pause[n]运行暂停n秒Mathematica函数及使用方法——函数编程—————————————————————————————————————十六、函数编程(*函数编程是Mathematica中很有特色也是最灵活的一部分,它充分体现了*) (*Mathematica的“一切都是表达式”的特点,如果你想使你的Mathematica程*) (*序快于高级语言,建议你把本部分搞通*)纯函数Function[body]或body&一个纯函数,建立了一组对应法则,作用到后面的表达式上Function[x,body]单自变量纯函数Function[{x1,x2,...},body]多自变量纯函数#,#n纯函数的第一、第n个自变量##纯函数的所有自变量的序列examp:#1^#2&[2,3]返回第一个参数的第二个参数次方映射Map[f,expr]或f/@expr将f分别作用到expr第一层的每一个元上得到的列表Map[f,expr,level]将f分别作用到expr第level层的每一个元上Apply[f,expr]或f@@expr将expr的“头”换为fApply[f,expr,level]将expr第level层的“头”换为fMapAll[f,expr]或f//@expr把f作用到expr的每一层的每一个元上MapAt[f,expr,n]把f作用到expr的第n个元上MapAt[f,expr,{i,j,...}]把f作用到expr[[{i,j,...}]]元上MapIndexed[f,expr]类似MapAll,但都附加其映射元素的位置列表Scan[f,expr]按顺序分别将f作用于expr的每一个元Scan[f,expr,levelspec]同上,仅作用第level层的元素复合映射Nest[f,expr,n]返回n重复合函数f[f[...f[expr]...]]NestList[f,expr,n]返回0重到n重复合函数的列表{expr,f[expr],f[f[ex pr]]..}FixedPoint[f,expr]将f复合作用于expr直到结果不再改变,即找到其不定点收集制作:科研中国文章出处:南京大学小百合站FixedPoint[f,expr,n]最多复合n次,如果不收敛则停止FixedPointList[f,expr]返回各次复合的结果列表FoldList[f,x,{a,b,..}]返回{x,f[x,a],f[f[x,a],b],..}Fold[f,x,list]返回FoldList[f,x,{a,b,..}]的最后一个元ComposeList[{f1,f2,..},x]返回{x,f1[x],f2[f1[x]],..}的复合函数列表Distribute[f[x1,x2,..]]f对加法的分配率Distribute[expr,g]对g的分配率Identity[expr]expr的全等变换Composition[f1,f2,..]组成复合纯函数f1[f2[..fn[]..]Operate[p,f[x,y]]返回p[f][x,y]Through[p[f1,f2][x]]返回p[f1[x],f2[x]]Compile[{x1,x2,..},expr]编译一个函数,编译后运行速度可以大大加快Compile[{{x1,t1},{x2,t2}..},expr]同上,可以制定函数参数类型Mathematica函数及使用方法—————————————————————————————————————十七、替换规则lhs->rhs建立了一个规则,把lhs换为rhs,并求rhs的值lhs:>rhs同上,只是不立即求rhs的值,知道使用该规则时才求值Replace[expr,rules]把一组规则应用到expr上,只作用一次expr/.rules同上expr//.rules将规则rules不断作用到expr上,直到无法作用为止Dispatch[{lhs1->rhs1,lhs2->rhs2,...}]综合各个规则,产生一组优化的规则组Mathematica函数及使用方法——查询函数、串函数—————————————————————————————————————十八、查询函数(*查询函数一般是检验表达式是否满足某些特殊形式,并返回True或False*) (*可以在Mathematica中用“?*Q”查询到*)ArgumentCountQ MatrixQAtomQ MemberQDigitQ NameQEllipticNomeQ NumberQEvenQ NumericQExactNumberQ OddQFreeQ OptionQHypergeometricPFQ OrderedQInexactNumberQ PartitionsQIntegerQ PolynomialQIntervalMemberQ PrimeQInverseEllipticNomeQ SameQ收集制作:科研中国文章出处:南京大学小百合站LegendreQ StringMatchQLetterQ StringQLinkConnectedQ SyntaxQLinkReadyQ TrueQListQ UnsameQLowerCaseQ UpperCaseQMachineNumberQ ValueQMatchLocalNameQ VectorQMatchQMathematica函数及使用方法—————————————————————————————————————十九、字符串函数"text"一个串,头为_String"s1"<>"s2"<>..或StringJoin["s1","s2",..]串的连接StringLength["string"]串长度StringReverse["string"]串反转StringTake["string",n]取串的前n个字符的子串,参数同Take[]StringDrop["string",n]参见Drop,串也就是一个表StringInsert["string","snew",n]插入,参见Insert[]StringPosition["string","sub"]返回子串sub在string中起止字母位置StringReplace["string",{"s1"->"p1",..}]子串替换StringReplacePart["string","snew",{m,n}]把string第m~n个字母之间的替换为snewStringToStream["string"]把串当作一个输入流赋予一个变量Characters["string"]把串"string"分解为每一个字符的表ToCharacterCode["string"]把串"string"分解为每一个字符ASCII值的表FromCharacterCode[n]ToCharacterCode的逆函数FromCharacterCode[{n1,n2,..}]ToCharacterCode的逆函数ToUpperCase[string]把串的大写形式ToLowerCase[string]把串的小写形式CharacterRange["c1","c2"]给出ASCII吗在c1到c2之间的字符列表ToString[expr]把表达式变为串的形式ToExpression[input]把一个串变为表达式Names["string"]与?string同,返回与string同名的变量列表。
FME重点函数※3D(三维类)CSGBuilder(组合立体图形创建):由成对的立体几何要素创建组合立体几何图形;CSGEvaluator(组合立体图形计算):更新组合立体几何的要素几何图形;Extruder(挤压) :在源几何图形中创建具有确定交叉组合外形的长方体、表面或立体等几何图形;※Calculators(计算类)AreaCalculator (面积计算):将多边形要素的面积写为属性;AttributeRounder(属性范围):将属性按指定的范围进行取值;BaseConverter(基础转换):将一个属性值从一个数字系统转换到另外一个数字系统,将结果值放在一个新属性中;BoundsExtractor(范围提取):提取要素坐标的最小值和最大值;CircularityCalculator(环状计算):计算一个环状的面要素,它显示了要素是如何被拉伸.返回值1表明了要素是是一个圆,返回值0表明要素是一条线;CoordinateConcatenator(坐标连接)将要素的全部坐标写入一个属性,坐标之间用指定的字符进行分隔;CoordinateCounter(坐标计数):将坐标数量写入属性;CoordinateFetcher (坐标取值):获得指定节点号的坐标并写入属性;Counter (计数器):将一个序列发生器的下一个值输出为新的属性;CRCCalculator (CRC计算):对要素计算CRC校验值并写入属性 ;DateFormatter(日期格式):将日期或时间属性改为其它格式;DecimalDegreesCalculator (十进制度计算):根据属性中分别保存的度、分、秒,计算以度为单位的角度值;DEMDistanceCalculator (DEM距离计算):对输入的线状要素,计算它与输入的DEM上对应点的三维距离,并生成为另一个DEM;DimensionExtractor(纬度计算):获得要素的坐标维数并输出为新的属性;DMSCalculator(度分秒计算):根据以度为单位的角度值计算度、分、秒;ElevationExtractor(高程值提取):提取第一个坐标的高程写入属性;EnvironmentVariableRetriever(环境变量获得):重新获得指定的环境变量并写入指定属性;ExpressionEvaluator(表达式计算):计算一个算术表达式并将返回值写入指定属性中;HoleCounter(洞计算):获得环中的孔的数量,输出为新的属性;InsidePointExtractor (内部点提取):生成多边形或环的内部点,其坐标写入属性;LengthCalculator (长度计算):计算要素的长度,输出为新的属性;ModuloCounter (模计算):循环计数:将一个序列发生器的下一个值输出为新的属性,当它达到指定的最大值时则重置为0;OrientationExtractor(方向提取):确定要素的方向并将返回值写入指定的属性。
在MATLAB中,Math Function模块是一组用于执行各种数学运算的函数。
这些函数可用于执行基本的数学运算,例如加法、减法、乘法、除法、指数、对数、三角函数等,以及更高级的数学运算,例如矩阵运算、微积分、线性代数、概率统计等。
要使用Math Function模块,您需要打开MATLAB并输入所需的函数名称。
例如,如果您要计算平方根,可以输入“sqrt(x)”,其中“x”是要计算平方根的数字。
您还可以将函数应用于矩阵,以在矩阵的每个元素上执行相同的运算。
Math Function模块还包括一些用于执行更高级数学运算的函数,例如矩阵运算函数(如矩阵乘法、转置等)、微积分函数(如梯度、积分等)、线性代数函数(如特征值、逆矩阵等)和概率统计函数(如均值、方差、概率等)。
要了解Math Function模块中的所有函数及其用法,请参阅MATLAB 文档。
您可以在MATLAB命令窗口中输入“help”命令来获取有关Math Function模块中函数的帮助信息。
FME中四则运算中的Math Functions(数学函数)
原文:
file:///C:/Program%20Files/FME2015.0/help/fme_desktop/FME_Desktop_Help.htm#.. /Subsystems/FME_Transformers/Content/transformer_parameters/math_functions.ht m
四则编辑器支持下列数学函数表达式。
下列所有函数的参数为双精度,并返回双精度值,除非它们是值类型转换函数,例如@int(), @double(), 和@real32()。
对于所有参数数量不定的函数,参数中包含null,missing或空字符串的值都会被过滤掉。
然而,如果变量参数列表只包含null,missing和空字符串,函数返回null。
函数接收到非数字型、null、missing或空字符串参数时会返回null,并附加到
fme_expression_warnings列表属性中。
对于所有参数固定的函数,返回双精度值,如果参数为NaN,则预计结果为NaN。
所以下列提供的描述的前提是函数参数是数值型、non-null,non-infinity 和non-NaN。
函数描述
abs(arg) 返回arg 的绝对值
acos(arg) 返回arg 的反余弦值,值的范围[0,pi]。
Arg 的值在[-1,1]范围。
add(arg1,[arg2]...) 返回参数的和。
asin(arg) 返回arg的反正弦值,值的范围[-pi/2,pi/2]。
Arg 的值在
[-1,1]范围。
atan(arg) 返回arg的反正切值,值的范围在[-pi/2,pi/2]。
atan2(y,x) 返回y/x的反正切值,值的范围在[-pi,pi]。
x和y不能同时为
0.
average(arg1,[arg2]... ) 输入数字列表并求出平均值。
忽略空、missing和null输入,若输入为非数值型数据会导致失败。
如果没有输入,返回空字符串。
ceil(arg) 以双精度的方式返回不小于arg的最小整数部分。
cos(arg) 返回arg的余弦值,以弧度为单位。
cosh(arg) 返回arg的双曲余弦。
如果发生溢出,返回无穷大。
degToRad(arg) 将度转换为弧度。
div(x,y) 计算x/y。
如果除数为0,返回无穷大。
double(arg) 以双精度形式返回arg。
exp(arg) 返回arg的指数,以e为底,e的arg次幂,如果发生溢出,返
回无穷大。
floor(arg) 以双精度形式返回不大于arg的最大整数部分。
fmod(x,y) 返回x/y的浮点型余数。
余数的符号与x的符号保持一致,如果y
为0,则返回NaN。
hypot(x,y) 计算直角三角形斜边长度,sqrt(x*x+y*y)
int(arg) 如果arg在64位整型的范围内,将被截断。
如果arg超出范围,
返回null。
int8(arg) 如果arg在8位整型范围内,将被四舍五入。
如果arg超出范围,
返回null。
int16(arg) 如果arg在16为整型范围内,将被四舍五入。
如果arg超出范围,
返回null。
int32(arg) 如果arg在32位整型范围内,将被四舍五入。
如果arg超出范围,
返回null。
int64(arg) 如果arg在64位整型范围内,将被四舍五入。
如果arg超出范围,
返回null。
log(arg) 返回arg的自然对数。
如果arg是0或是负数,返回NaN。
log10(arg) 返回以10为底arg的对数。
如果arg是0或是负数,返回NaN。
max(arg1,[arg2]...) 返回最大值。
min(arg1,[arg2]...) 返回最小值。
mult(arg1,[arg2]...) 返回所有数相乘的结果。
pi() 返回pi的值。
pow(x,y) 计算x的y次方的值。
如果x是负数,y需要是整数值。
如果x
是负数而y是浮点型的值,那么返回NaN。
radToDeg(arg) 转换弧度为度。
rand() 返回0到1之间的随机数。
real32(arg) 如果arg在单精度浮点型的范围内,则作为单精度浮点型返回。
如果arg是NaN或无穷大,或为逻辑非,强制转换为单精度NaN
或无穷大。
如果arg超出单精度浮点型范围,则返回正无穷或负
无穷
real64(arg) 如果arg在双精度浮点型的范围内,则作为双精度浮点型返回。
如果arg是NaN或无穷大,或为逻辑非,则强者转换为双精度
NaN或者无穷。
如果arg超出双精度浮点型范围,则返回正无穷
或负无穷。
round(arg) 以双精度的形式返回与arg最相近的整数。
sin(arg) 返回arg的正弦值,以弧度为单位。
sinh(arg) 返回arg的双曲正弦。
如果发生溢出,返回无穷。
sqrt(arg) 返回arg的平方根。
如果arg是负数则返回NaN。
sub(x,y) 计算x-y。
sum(arg1,[arg2]...) 返回变量的和。
tan(arg) 返回arg的正切值,以弧度为单位。
tanh(arg) 返回arg的双曲正切。
uint8(arg) 如果arg在8位无符号整型范围内,将被四舍五入。
如果arg超
出范围,返回null。
uint16(arg) 如果arg在16位无符号整型范围内,将被四舍五入。
如果arg
超出范围,返回null。
uint32(arg) 如果arg在32位无符号整型范围内,将被四舍五入。
如果arg
超出范围,返回null。
uint64(arg) 如果arg在64位无符号整型范围内,将被四舍五入。
如果arg
超出范围,返回null。