Answer to Question #149152 in MatLAB for rock

Question #149152
Write a MATLAB program to solve the following BVP
. Perform two iterations to solve the following one dimensional heat equation
using FTCS and Crank−Nicolson scheme, with ∆x =
1
4
.
∂u
∂t = 4
∂
2u
∂x2
, 0 < x < 1, t > 0.
u(0, t) = u(1, t) = 0, t ≥ 0 and u(x, 0) = x(1 − x), 0 < x < 1.
1
Expert's answer
2020-12-11T08:47:50-0500
% a.
% defining eqn
bvpfcn = @(t,Theta) [Theta(2) -Theta(1)];

% coding boundary condition
bcfcn = @(Ta,Tb) [Ta(1)-0.7  Tb(1)-0.7];

% defining guess function
guess = @(t) [sin(t) cos(t)];

% defing tmesh
tmesh = linspace(0,2*pi,20);
% defining solution
solinit = bvpinit(tmesh, guess);

% solve eqn
sol = bvp4c(bvpfcn, bcfcn, solinit);

% plot sulution
figure;
plot(sol.x, sol.y, '-o');
% label
xlabel("t");
ylabel("Theta");
title("a. t vs Theta");
legend("Theta","Theta'");

% b.
% defining eqn
bvpfcn = @(t,Theta) [Theta(2) -sin(Theta(1))];

% coding boundary condition
bcfcn = @(Ta,Tb) [Ta(1)-0.7  Tb(1)-0.7];

% defining guess function
guess = @(t) [sin(t) cos(t)];

% defing tmesh
tmesh = linspace(0,2*pi,20);
% defining solution
solinit = bvpinit(tmesh, guess);

% solve eqn
sol = bvp4c(bvpfcn, bcfcn, solinit);

% plot sulution
figure;
plot(sol.x, sol.y, '-o');
% label
xlabel("t");
ylabel("Theta");
title("b. t vs Theta");
legend("Theta","Theta'")

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS