三阶常微分方程边值问题 用有ode45,限差分法和打靶法的matlab 程序

2024-05-19 00:50

1. 三阶常微分方程边值问题 用有ode45,限差分法和打靶法的matlab 程序

bzd

三阶常微分方程边值问题 用有ode45,限差分法和打靶法的matlab 程序

2. 用有限差分法和打靶法的matlab 程序有么

参考代码: % 解的初始估计solinit = bvpinit(linspace(0,1,100),[1 -50]); % BVP问题求解ode = @(t,x) [x(2); -pi^2/4*(1-x(1))];bc = @(ya,yb)[ya(2)-pi; yb(2)+pi/2];sol = bvp4c(ode,bc,solinit); % 结果绘图t=sol.x;vars={'x', 'x'''};for ...

3. 不好意思,再次打扰。 刚忘了回答 有限差分法 解三阶微分方程的思路了。 有matlab方面的程序么?

没有,三阶微分方程一般都用matlab ode解算器算了,很少自己编,除非是偏微分

不好意思,再次打扰。 刚忘了回答 有限差分法 解三阶微分方程的思路了。 有matlab方面的程序么?

4. 想用matlab编一个简单的微分方程的边值问题,具体如下(有酬劳)

老哥,这个问题你解决了没?我现在也在学这个,能否交流一下

5. 打靶法求边值的matlab实现

参考代码:
% 解的初始估计solinit = bvpinit(linspace(0,1,100),[1 -50]); % BVP问题求解ode = @(t,x) [x(2); -pi^2/4*(1-x(1))];bc = @(ya,yb)[ya(2)-pi; yb(2)+pi/2];sol = bvp4c(ode,bc,solinit); % 结果绘图t=sol.x;vars={'x', 'x'''};for i=1:length(vars)    subplot(2,1,i);    plot(t,sol.y(i,:));    xlabel('t');    ylabel(vars{i});end

打靶法求边值的matlab实现

6. MATLAB大神请进。。用打靶法或者bvp方法都行。 求一下这个多自变量 常微分方程组边值问题!

4个微分方程应该只有4个约束(包括初值或终值)吧?
但按照你给的初值和终值,一共有6个约束。
可以这样理解:如果4个初值都给定了,那么微分方程就有充足的条件可以直接求解了,不一定保证终值符合你的要求。

7. 用matlab求解有限差分法问题

那是因为绘图的轴限制错了,也改过来就行了
axis ( [ 0 ,17 ,0 ,10 ,0 ,100 ]) ; 
这个地方改成
axis ( [ 0 ,42 ,0 ,24,0 ,100 ]) ; %表示的意思是限制x,y,z三个轴的显示长度
%方括号里面的意思是[x的最小值,x的最大值,y的最小显示值,y的最大显示值,z的最小显示值,z的最大显示值]
还有后面的text那几句可以改了,改轴的标签吗,可以这样
text ( - 6 ,10 ,120 ,'v' ,'FontSize' ,10) ; 
	text ( - 4 ,12 ,0 ,'h' ,'FontSize' ,10) ; 
	text (18 ,0 ,0 ,'b' ,'FontSize' ,10) ;三句改成下面一句
xlabel('b'),ylabel('h'),zlabel('v')
同样的下面的也可以改
text ( - 2 ,10 ,'h' ,'FontSize' ,10) ; 
	text (17 ,1 ,'b' ,'FontSize' ,10) ;改成:
xlabel('b'),ylabel('h'), 

也就是成图开始下面改成:
%- - - - - - - - - - - - 结果成图- - - - - - - - - - 
	subplot (1 ,2 ,1)      % 分割图形窗口为1 ×2 个子坐标系,且第1个为当前坐标系 
	mesh ( v2)                        % 绘三维曲面图 
	h1 = mesh ( v2) ; 
	set ( h1 ,'LineWidth' ,1 ,'EdgeColor' ,' b' ) 
    xlabel('b'),ylabel('h'),zlabel('v')
	axis ( [ 0 ,42 ,0 ,25 ,0 ,100 ]) ; 
	subplot (1 ,2 ,2) 
	contour ( v2 ,'k-' )                % 绘等值线图 
    xlabel('b'),ylabel('h')

用matlab求解有限差分法问题

8. matlab求解四阶常微分方程边值问题的程序。。跪求

1、存在问题:
微分方程函数和边界条件函数的定义,function后面没有空格,导致两个函数被误作为变量,根本没起到作用。之所以没有报错,是因为twoode和twobc作为系统提供的例子,确实有这两个函数。这也是从系统示例修改程序时应该尽量避免的做法。
 
2、不知道你的初始估计solinit是怎么生成的,可以考虑使用下面的做法:
solinit = bvpinit(linspace(0,4,5),[0 0 0 0]);