matlab二阶微分方程求解及画图
取m=10600kgk=31986497N/mc=8.9×10^4kg/mx(0)=5;x'(0)=3.66求区间t:【0,1】的图像求全部代码...
取m=10600kg k=31986497 N/m c=8.9×10^4kg/mx(0)=5; x'(0)=3.66求区间t:【0,1】的图像求全部代码
展开
展开全部
可这样:
m=10600; %单位kg
k=31986497; %单位 N/m
c=8.9e4; %单位kg/m
syms x(t)
[V,Y] = odeToVectorField(m*diff(x,2)==k*diff(x)-c*diff(x)/abs(diff(x))*(diff(x))^2,'x(0)==5', 'Dx(0)==3.66');
M = matlabFunction(V,'vars', {'t','Y'});
sol = ode45(M,[0 1],[5,3.66]);
x1 = linspace(0,1,100);
y = deval(sol,x1,1:2);
plot(x1,y);
grid on
legend('x','x''')
m=10600; %单位kg
k=31986497; %单位 N/m
c=8.9e4; %单位kg/m
syms x(t)
[V,Y] = odeToVectorField(m*diff(x,2)==k*diff(x)-c*diff(x)/abs(diff(x))*(diff(x))^2,'x(0)==5', 'Dx(0)==3.66');
M = matlabFunction(V,'vars', {'t','Y'});
sol = ode45(M,[0 1],[5,3.66]);
x1 = linspace(0,1,100);
y = deval(sol,x1,1:2);
plot(x1,y);
grid on
legend('x','x''')
追问
??? Error using ==> syms
Not a valid variable name.
On line 4 ==> syms x(t);
有问题啊
追答
我这里没有这个提示,程序运行正常,有图形。你的matlab是哪个版本?syms是符号工具箱中最基本的一个命令,怎么会不识别呢?
富港检测技术(东莞)有限公司_
2024-04-02 广告
2024-04-02 广告
正弦振动多用于找出产品设计或包装设计的脆弱点。看在哪一个具体频率点响应最大(共振点);正弦振动在任一瞬间只包含一种频率的振动,而随机振动在任一瞬间包含频谱范围内的各种频率的振动。由于随机振动包含频谱内所有的频率,所以样品上的共振点会同时激发...
点击进入详情页
本回答由富港检测技术(东莞)有限公司_提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询