フィルターのクリア

Help with plot values

2 ビュー (過去 30 日間)
Yogesh Bhambhwani
Yogesh Bhambhwani 2020 年 12 月 17 日
コメント済み: Yogesh Bhambhwani 2020 年 12 月 17 日
Hi I am plotting my matrix and the x values are not what they are suppose to be. There is an example of the plot I have to make and the x-values should be from 0 to L (L is defined in my work) with 100 evenly spaced points. But I am getting that its from 1 to 5 can somepne help me please my work is below. My T_matrix is the y axis.
%initializing parameters
k=20;
P=0.1;
h=490;
A_c=4.4*10^-4;
L=0.08;
T_b=400;
T_inf=900;
nodes=5;
%build Coefficient and Constants (right hand side of eqn) matrices
T_1 = T_b;
dx = L/4;
x = dx*.5;
m = sqrt((h*P)/(k*A_c));
M = [ 1 0 0 0 0;
-1 (2+(m*dx)^2) -1 0 0;
0 -1 (2+(m*dx)^2) -1 0;
0 0 -1 (2+(m*dx)^2) -1;
0 0 0 -1 (2+(m*dx)^2)/2];
K = [T_b;
(m*dx)^2*T_inf;
(m*dx)^2*T_inf;
(m*dx)^2*T_inf;
(m*dx)^2/2*T_inf];
T = M\K;
%solove matrix
T_matrix= T;
%define analytical solution
T_analytic= ((cosh(m*(L-x)))/(cosh(m*L)))*(T_b-T_inf)+T_inf;
%plot matrix and analytic solutions
plot(T_matrix,'r')
  7 件のコメント
Yogesh Bhambhwani
Yogesh Bhambhwani 2020 年 12 月 17 日
So I read the document and looked at the Modify Lines After Creation section and I got an error saying that the vectorsmust be the same length
Daniel Pollard
Daniel Pollard 2020 年 12 月 17 日
As I mentioned in my first comment, T_matrix has 5 elements. You need 100 T values to plot against 100 x values. Alan Stevens seems to have a better grasp of your problem and has left an answer.
I recommend checking out the Matlab onramp course if you're going to be using Matlab more. It's free, and introduces the basics of the programming language and is highly recommended you do that when you're starting out with Matlab.

サインインしてコメントする。

採用された回答

Alan Stevens
Alan Stevens 2020 年 12 月 17 日
編集済み: Alan Stevens 2020 年 12 月 17 日
You need to define two different sets of x values. Your matrix solution results in 5 temperatures, so define
x = linspace(0,L,5)
and then plot T_matrix against this set of x's (preferably using points not lines).
You also need to define, say,
X = linspace(0,L,100)
and calculate the analytic values at these X's
T_analytic= ((cosh(m*(L-X)))/(cosh(m*L)))*(T_b-T_inf)+T_inf;
You can then plot XT_analytic against X (using lines).
  1 件のコメント
Yogesh Bhambhwani
Yogesh Bhambhwani 2020 年 12 月 17 日
Thank you

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeCalendar についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by