资源描述:
《微分方程(ODEs)解算器(中文版)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、微分方程(ODEs)解算器1.先来认识下常微分方程(ODE)初值问题解算器(solver)[T,Y,TE,YE,IE]=odesolver(odefun,tspan,y0,options)sxint=deval(sol,xint)Matlab中提供了以下解算器:输入参数:odefun:微分方程的Matlab语言描述函数,必须是函数句柄或者字符串,必须写成Matlab规范格式(也就是一阶显式微分方程组)tspan=[t0tf]或者[t0,t1,…tf]:微分变量的范围,两者都是根据t0和tf的值自动选择步长,只是前者返回所有计算点的微分值,而后者只返回指定的点的微分
2、值,一定要注意对于后者tspan必须严格单调,还有就是两者数据存储时使用的内存不同(明显前者多),其它没有任何本质的区别y0=[y(0),y’(0),y’’(0)…]:微分方程初值,依次输入所有状态变量的初值options:微分优化参数,是一个结构体,使用odeset可以设置具体参数,详细内容查看帮助(如下是Matlab中odeset的说明:>>helpodesetODESETCreate/alterODEOPTIONSstructure.OPTIONS=ODESET('NAME1',VALUE1,'NAME2',VALUE2,...)createsaninteg
3、ratoroptionsstructureOPTIONSinwhichthenamedpropertieshavethespecifiedvalues.Anyunspecifiedpropertieshavedefaultvalues.Itissufficienttotypeonlytheleadingcharactersthatuniquelyidentifytheproperty.Caseisignoredforpropertynames.OPTIONS=ODESET(OLDOPTS,'NAME1',VALUE1,...)altersanexistingopt
4、ionsstructureOLDOPTS.OPTIONS=ODESET(OLDOPTS,NEWOPTS)combinesanexistingoptionsstructureOLDOPTSwithanewoptionsstructureNEWOPTS.Anynewpropertiesoverwritecorrespondingoldproperties.ODESETwithnoinputargumentsdisplaysallpropertynamesandtheirpossiblevalues.ODESETPROPERTIESRelTol-Relativeerro
5、rtolerance[positivescalar{1e-3}]Thisscalarappliestoallcomponentsofthesolutionvector,anddefaultsto1e-3(0.1%accuracy)inallsolvers.Theestimatederrorineachintegrationstepsatisfiese(i)<=max(RelTol*abs(y(i)),AbsTol(i)).AbsTol-Absoluteerrortolerance[positivescalarorvector{1e-6}]Ascalartolera
6、nceappliestoallcomponentsofthesolutionvector.Elementsofavectoroftolerancesapplytocorrespondingcomponentsofthesolutionvector.AbsToldefaultsto1e-6inallsolvers.SeeRelTol.NormControl-Controlerrorrelativetonormofsolution[on
7、{off}]Setthisproperty'on'torequestthatthesolverscontroltheerrorine
8、achintegrationstepwithnorm(e)<=max(RelTol*norm(y),AbsTol).Bydefaultthesolversuseamorestringentcomponent-wiseerrorcontrol.Refine-Outputrefinementfactor[positiveinteger]Thispropertyincreasesthenumberofoutputpointsbythespecifiedfactorproducingsmootheroutput.Refinedefaultsto1inallsolverse
9、xcept