need help with problem
3 ビュー (過去 30 日間)
古いコメントを表示
what is wrong in this code i dont get the correct answer
xleft=0;
xright=(9*pi)/4;
N=20;
x=linspace(xleft,xright,N);
x=x';
dx=(xright-xleft)/(N-1);
yleft=1;
yright=1;
a=1;
b=-2;
c=-2;
% M is the matrix when multiplied by y gives y'' y' and y
M2=(diag(-2*ones(N,1),0)+diag(ones(N-1,1),-1)+diag(ones(N-1,1),1))/dx^2;
M1=(diag(ones(N-1,1),1)-diag(ones(N-1,1),-1))/(2*dx);
M0=eye(N);
M=a*M2+b*M1+c*M0;
%treating boundaries separate
M(1,:)=[1,zeros(1,N-1)];
M(end,:)=[zeros(1,N-1),1];
k=(sin(x))/((cos(x))+2);
k(1) = yleft;
k(end) = yright;
y=M\k
0 件のコメント
採用された回答
Matt J
2019 年 4 月 3 日
is my code correct i dont get the correct answer
Then by definition, it is not correct...
8 件のコメント
その他の回答 (1 件)
Muhammad Ibrahim
2019 年 4 月 4 日
編集済み: Muhammad Ibrahim
2019 年 4 月 4 日
k=(sin(x))/((cos(x))+2);
should be
k=(sin(x))./((cos(x))+2);
That small dot after sin(x) can make a big difference.
Also. read the question carefully, you might be keying the maximum value when it maybe asking minimum value.If you still have problems just ask again in this forum maybe I can help out.
参考
カテゴリ
Help Center および File Exchange で Numerical Integration and Differential Equations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!