国内伤感男歌手有哪些:如何在matlab中 输入数量巨大的ode方程

来源:百度文库 编辑:高校问答 时间:2024/05/03 15:09:46
小弟正在通过模型建立在重力场情况下,理想气体的运动情况 ;把粒子看成经典粒子,符合力学定律,模拟粒子的位置、速度随时间的变化。
现在有一个问题,如何能够一次写入数量巨大的ode方程阿?

function ydot=f(t,y)
odes=[];
for i=2:4:n
odes=[odes;y(i);-1;y(i+2);0];
end
ydot=odes;
n为方程个数

超过realmax。

a-数字通过试图评价像0/0一样的表达产生或者没有已定义充分数学的价值的Inf-Inf。

功能名称不是保存。 以一个新的变量过度多写他们是可能的任何,诸如

eps=1.e-6

同时,然后使用后来的计算的价值。 原来功能能被恢复

清楚eps

pi 3.14159265…

我虚构的部件,--1

j同样作为我

eps浮动指相关的精度,2--52

realmin最小浮动指数字,2--1022

realmax最大浮动指数字,(1023

Inf无穷大

NaN-a-number.Expressions

3-13

表达的例子

你已经看见若干MATLAB表达的例子。 在这里一些更多例子,和导致的价值。

rho=(1+sqrt(5))/2

rho=

1.6180

=abs(3+4i)

=

5

z=sqrt(besselk(4/3,rho-i))

z=

0.3730+0.3214i

巨大=exp(log(realmax))

巨大=

1.7977e+308

toobig=pi*huge

toobig=

Inf.3操纵矩阵

3-14

以矩阵工作

这段向其它创建矩阵的方法导论你。

产生矩阵

MATLAB提供产生基本的矩阵的四种功能。

这里是一些例子。

Z=zeros(2,4)

Z=

0 0 0 0

0 0 0 0

F=5*ones(3,3)

F=

5 5 5

5 5 5

5 5 5

N=fix(10*rand(1,10))

N=

4 9 4 4 8 5 2 6 8 0

R=randn(4,4)

R=

1.0668 0.2944--0.6918--1.4410

0.0593--1.3362 0.8580 0.5711

--0.0956 0.7143 1.2540--0.3999

--0.8323 1.6236--1.5937 0.6900

零个所有零个

那些所有那些

rand一致地分发随机单元

randn以矩阵正常分发随机elements.Working