s = nonzeros(A) 返回 A 中非零元素的整个列向量,并且按列排序。
clc, clear
a=textread('data4.txt'); %把原始数据保存在纯文本文件data4.txt中
x=a([2:2:6],:)'; %提出人口数据
x=nonzeros(x); %s = nonzeros(A) 返回 A 中非零元素的整个列向量,并且按列排序。
t=[1790:10:2000]';
t0=t(1); x0=x(1);
fun=@(cs,td)cs(1)./(1+(cs(1)/x0-1)*exp(-cs(2)*(td-t0))); %cs(1)=xm,cs(2)=r
cs=lsqcurvefit(fun,rand(2,1),t(2:end),x(2:end),zeros(2,1))%zeros(2,1)为左边界
xhat=fun(cs,[t;2010]) %预测已知年代和2010年的人口
/:右除。a/b表示矩阵a乘以矩阵b的逆。
\:左除。a\b表示矩阵a的逆乘以b。
clc, clear
a=textread('data4.txt'); %把原始数据保存在纯文本文件data4.txt中
x=a([2:2:6],:)'; x=nonzeros(x);
t=[1790:10:2000]';
a=[ones(21,1), -x(2:end)];
b=diff(x)./x(2:end)/10; %b即为(6.25)左边
cs=a\b;
r=cs(1), xm=r/cs(2)
[ r s ] ∗ [ 1 1 1 . . − x 1 − x 2 − x 3 . . ] = b \left[ \begin{matrix} r &s \end{matrix} \right]* \left[ \begin{matrix} 1 &1&1&.&.&\\ -x1 &-x2&-x3&.&.& \end{matrix} \right]=b [rs]∗[1−x11−x21−x3....]=b
syms f(x) g(x) %定义符号变量
[f2,g2]=dsolve(diff(f,2)+3*g==sin(x),diff(g)+df==cos(x),df(2)==0,f(3)==3,g(5)==1)%右边为初值
clc,clear
syms x(t) y(t) z(t) %定义符号变量
X=[x;y;z]; A=[1,0,0;2,1,-2;3,2,1];B=[0;0;exp(t)*cos(2*t)];
X0=[0;1;1]; %初值条件
X=dsolve(diff(X)==A*X+B,X(0)==X0) %求符号解
X=simplify([X.x;X.y;X.z]) %原本解为struct结构,显示解的各个分量
pretty(X) %分数线居中的显示方式
由于struct结构,所以需要X=simplify([X.x;X.y;X.z])。
clc, clear
syms g t(h) %定义符号常量和变量
t=dsolve(diff(t)==10000*pi/sqrt(2*g)*(h^(3/2)-2*h^(1/2)),t(1)==0) %求符号解
t=simplify(t) %化简
pretty(t) %分数线居中的显示方式
结果t会含有g和h。
subs(s,{m,V,rho,g,k},{239.46,0.2058,1035.71,9.8,0.6})
将s中的m,v,rho,g,k用后面的数代替
tt=solve(s==90)
tt=double(tt) %求到达海底90米处的时间
double()将sym形式变成数字形式