当我运行我的代码,我继续这个错误:“未定义的函数或变量‘y’。”
24日视图(30天)
显示旧的评论
关闭所有clc;
tspan = [0 1];
y0 (1) = 2;
y0 (2) = 1;
y0 (3) = 3;
源= 0;
托尔= 1 e - 3;%КритериидопускадляопределениянаилучшейстоимостиМойкритерийостановки-托尔= 1 e - 3。
错误= 1.0;%Начальнаяошибказапуска
而错误>托尔%ЗАПУСТИТЕЦИКЛ而
索尔=数值(@ (t, y) ode2 (t、y、源),[0,1],y0);%ВЫЗЫВАЕМСОЛВЕРBVP4C:
t = linspace (0, 1100);
source_new = trapz (t、y (3:));
错误= abs (source_new -源);
源= source_new;
结束
图(1);
次要情节(1,1)
情节(sol.x sol.y (1:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel ($ $ $ $ y的,“翻译”,“乳胶”,“字形大小”16);
次要情节(1、2)
:情节(sol.x sol.y (2),“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ \点{y} $ $’,“翻译”,“乳胶”,“字形大小”16);
次要情节(3、1,3)
情节(sol.x sol.y (3:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ y“$ $”,“翻译”,“乳胶”,“字形大小”16);
函数dy = ode2 (~ y源)% int y“+ y = 1 + ^ 1 _0 (y ' * x) dx; y (0) = 2, y (1) = 4;
m = 0.05;
dy = 0 (3,1);%создаетнулевойвектор-столбец
dy (1) = y (2);
dy (2) = y (3);
dy (3) = 3 / m * y (3) + 1 / (m ^ 2) * (1 - 2 * y(2) + 4。*源);
结束
未定义的函数或变量“y”。
错误IDTinitial6(14)行
source_new = trapz (t、y (3:));
0评论
答案(2)
沃尔特·罗伯森
2023年5月26日16:47
后来你一直指sol.y也许y应该sol.y的参考
2的评论
沃尔特·罗伯森
约2小时前
修复未定义的变量是很容易的,但是你的歌唱需要的数学工作。你的算法是背离的,而不是汇合。
关闭所有clc;
tspan = [0 1];
y0 (1) = 2;
y0 (2) = 1;
y0 (3) = 3;
源= 0;
托尔= 1 e - 3;%КритериидопускадляопределениянаилучшейстоимостиМойкритерийостановки-托尔= 1 e - 3。
错误= 1.0;%Начальнаяошибказапуска
而错误>托尔%ЗАПУСТИТЕЦИКЛ而
索尔=数值(@ (t, y) ode2 (t、y、源),[0,1],y0);%ВЫЗЫВАЕМСОЛВЕРBVP4C:
source_new = trapz (sol.x sol.y (3,:))
错误= abs (source_new -源);
源= source_new;
结束
图(1);
次要情节(1,1)
意思是(isfinite (sol.x))
意思是(isfinite (sol.y))
情节(sol.x sol.y (1:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel ($ $ $ $ y的,“翻译”,“乳胶”,“字形大小”16);
次要情节(1、2)
:情节(sol.x sol.y (2),“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ \点{y} $ $’,“翻译”,“乳胶”,“字形大小”16);
次要情节(3、1,3)
情节(sol.x sol.y (3:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ y“$ $”,“翻译”,“乳胶”,“字形大小”16);
函数dy = ode2 (~ y源)% int y“+ y = 1 + ^ 1 _0 (y ' * x) dx; y (0) = 2, y (1) = 4;
m = 0.05;
dy = 0 (3,1);%создаетнулевойвектор-столбец
dy (1) = y (2);
dy (2) = y (3);
dy (3) = 3 / m * y (3) + 1 / (m ^ 2) * (1 - 2 * y(2) + 4。*源);
结束
明星黾
2023年5月26日16:56
这样的尝试
关闭所有clc;
tspan = [0 1];
y0 (1) = 2;
y0 (2) = 1;
y0 (3) = 3;
源= 0;
托尔= 1 e - 3;%КритериидопускадляопределениянаилучшейстоимостиМойкритерийостановки-托尔= 1 e - 3。
错误= 1.0;%Начальнаяошибказапуска
而错误>托尔%ЗАПУСТИТЕЦИКЛ而
索尔=数值(@ (t, y) ode2 (t、y、源),[0,1],y0);%ВЫЗЫВАЕМСОЛВЕРBVP4C:
t = linspace(0, 1,元素个数(sol.x));%的变化
source_new = trapz (t, sol.y (3:));%的变化
错误= abs (source_new -源);
源= source_new;
结束
图(1);
次要情节(1,1)
情节(sol.x sol.y (1:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel ($ $ $ $ y的,“翻译”,“乳胶”,“字形大小”16);
次要情节(1、2)
:情节(sol.x sol.y (2),“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ \点{y} $ $’,“翻译”,“乳胶”,“字形大小”16);
次要情节(3、1,3)
情节(sol.x sol.y (3:)“颜色”,“r”,“线宽”,1.2);
网格在
持有在
包含(“\ t男朋友”);ylabel (“$ $ y“$ $”,“翻译”,“乳胶”,“字形大小”16);
函数dy = ode2 (~ y源)% int y“+ y = 1 + ^ 1 _0 (y ' * x) dx; y (0) = 2, y (1) = 4;
m = 0.05;
dy = 0 (3,1);%создаетнулевойвектор-столбец
dy (1) = y (2);
dy (2) = y (3);
dy (3) = 3 / m * y (3) + 1 / (m ^ 2) * (1 - 2 * y(2) + 4。*源);
结束
您的代码将超过允许的
55
秒,所以对此进行实验得到期望的结果。
。