matlab解微分方程

来源:百度知道 编辑:UC知道 时间:2024/06/09 23:56:23
解微分方程"D2v=M/(E*I)".
其中E,I都是常数,M=(l-b)Fx/b,"F,l,b"由用户输入.
由于M(x)要随输入参数变化,不能把它的解析式直接写到dsolve里,请问这种方程该怎么解?
感谢您不吝赐教,但本人是初学者,有具体程序段最好,谢谢!

刚发现你的帖子,^_^
给你写写具体的程序吧

clc
prompt = {'输入参数F:','输入参数I:','输入参数b','输入参数E'};
dlg_title = '请输入参数';
num_lines= 1;
def = {'1','2','3','4'};
answer = inputdlg(prompt,dlg_title,num_lines,def);
f=sprintf('D2v=(%c-%c)*%c*x/%c/%c/%c',answer{2,1},answer{3,1},answer{1,1},answer{3,1},answer{4,1},answer{2,1});
v=dsolve(f,'x')

程序给你写好了,在matlab中新建一个M文件,直接复制,再运行就行了,我已经试过了,没问题,有疑问再找我,QQ:369388513,我晚上10点后一般都在

那简单,写个M函数不就解决问题了?让这些参数通过函数的形参数传入