need help with problem

2 views (last 30 days)
dulanga
dulanga on 3 Apr 2019
Commented: dulanga on 4 Apr 2019
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

Accepted Answer

Matt J
Matt J on 3 Apr 2019
is my code correct i dont get the correct answer
Then by definition, it is not correct...
  8 Comments
Matt J
Matt J on 4 Apr 2019
Edited: Matt J on 4 Apr 2019
Why is there no M1? The only thing that has changed is b=c=0.
dulanga
dulanga on 4 Apr 2019
yes so when it goes to M equation since b is zero M1 doesnt matter anymore ?
There is a M1 yes since b*M1 and b is zero M1 holds no impact on M then ?

Sign in to comment.

More Answers (1)

Muhammad Ibrahim
Muhammad Ibrahim on 4 Apr 2019
Edited: Muhammad Ibrahim on 4 Apr 2019
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.

Categories

Find more on Mathematics in Help Center and File Exchange

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!