- 1、本文档共200页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
* 4.带初始条件的微分方程的解 当给定一个微分方程的初始条件可以确定一个待定系数。例子 * 6.2 微分方程的数值解?? 在Mathematica中用函数DSolve[]得到微分方程的准确解,用函数NDSolve得到微分方程的数值解,当然在此处要给出求解区间(x,xmin,xmax)。 NDSolve也是既能计算单个的微分方程,也能计算联立微分方程组。它能对大多数的常微分方程和部分偏微分方程求解。在常微分可能有一些未知函数yi,但这些未知函数都依赖于一个单变量x。 * NDSolve[{eqn1,eqn2,…},y,{x,xmin,xmax}]求函数y的数值解,x属于[xmin,xmax] NDSolve[{eqnl,eqn2,…},{y1,y2,…}{x,xmin,xmax}]求多个函数yi的数值解 * 使用Mathematica页可以很容易的得到解的图形。这儿给出如何观察微商的逆函数的近似值图形。我们使用命令Evaluate代替InterpolatingFunction能够节省时间。 例如: * * 第7章 Mathematica程序设计 1.模块 ?模块的概念和定义方法 2.条件结构 ?条件结构的使用和定义方法 3.循环结构 ?循环结构的使用 * 7.1 模块? Module[{x,y,...},body] 具有局部变量x,y…的模块 Module[{x=x0,y=y0,…},body] 具有初始值的局部变量的模块 lhs:=Module[vars,rhs/:cond] rhs和cond共享局部变量 Block[{x,y,... },body] 运用局部值x,y, …计算body Block[{x=x0,y=y0,…},bddy] 给x,y,..赋初始值 * 下面定义有初值的变量t, Mathematica默认它为全局变量: ln[1]:=t=10 Out[1]=10 模块中的t为局部变量,因此它独立于全局变量t ln[2]:=Module[{t}, t=8; Print[t]] * 全局变量t的值仍为10: ln[3]=t=10 Out[3]=10 * 全局变量t的值仍为10: ln[6]:=t=10 Out[6]=10 * Mathematica 中的模块允许你把某变量名看作局部变量名。然而又存在有时你又希望它们为全局变量时,但变量值为局部的矛盾,这时我们可以用Block[ ]函数。下面是一个含有全局变量x表达式,使用x的局部值计算上面的表达式: * Module[vars,body]所要做的是把执行模块时表达式body的形式看成Mathematica程序的“代码”。然而当“代码”中直接出现变量vats时,这些vars都将被看作局部的。Block[vats,body]并不查看表达式body的形式,而在整个计算Body的过程中,实用vars的局部值。 * ln[12]:=m=i^2 ’ Out[12]:=i2 In[13]:=Block[{i=a},i+m] Out[13]=a+a2 In[14]:=Module[{i=a},i+m] Out[14]=a+i2 * 7.2 条件结构? 条件结构的常用形式 If[test,then,else] 如test为真, 计算then,反之计算else which[test1,value1,test2,...] 依次计算testl,给出对应的第一个为真的值 Switch[expr,forml,value1,form2,...] expr与每一个formi相比较,给出第一个相匹配的值 Switch[expr,form1, value1,form2,…,_,def] 用def为系统默认值 * If命令 ln[1]:=If [10, 1+2, 2+3] Out[1]=3 2.Which命令 ??? 有时条件多于两个,在这种情况下可用If函数的嵌套方式来处理,但在这种情况下使用Whitch或Switch函数将更合适。下面用Which定义具有三个条件的函数,调用这个函数: * 用Switch定义一个与模的余数有关的函数: * 在Mathemahca中,有一种可能的情况就是你给出的条件结果既不是真也不为假。下面测试的结果既不是真也不是假, 因此If的两个分支保持不变: ln[1]:=If[x==y,a,b] Out[1]=If[x==y,a,b] 你可以给If加上第三个条件结果,这允许你测试的结果既不是真也不是假的情况下使用它: * ln[2]:=If[x==y,a,b,c] Ou
您可能关注的文档
- 《中医药科学研究思路与方法》选题与研究开题报告.ppt
- 【内容完整】积极推进“一带一路”建设共同构建人类命....ppt
- 3.1自然界水循环.ppt
- 3-智力残疾儿童的早期干预.ppt
- 6套利定价模型.ppt
- 2016党课(问责条例及六大纪律)党课课件.ppt
- 2017年12月连续剧内容营销指数榜单.ppt
- 2017年新材料作文分类审题训练(全面、实用).ppt
- 2017人教版三年级(下)英语期末总复习课件.ppt
- 2018年1月连续剧内容营销指数榜单.ppt
- 部分可观测性下组合任务运动一种基于优化方法camille phiquepal 1153.pdf
- pcf2测量报告全尺寸part.pdf
- 画猫男孩级读者剧场剧本根据民间故事改编由kitty the boy who drew cats.pdf
- 文本说明二阶段-2x1000mw1acfc.pdf
- 批准hcki534d 544d-绕组技术数据表hcki5d 17 td en rev.pdf
- uu24m6-检测按键灯网口等.pdf
- 文案技术数据表2007technical datasheet.pdf
- 3g sleep mode application note睡眠模式应用程序说明.pdf
- 芯驿电子科技教程302 petalinux安装.pdf
- 案例shapemonkey用户指南2017 dan ebberts orrin user.pdf
文档评论(0)