How to define a variable as a condition of other variables
古いコメントを表示
Hi there, I am working on a project for an environmental science class where I need to plot the change in temperature as a function of the change in the solar constant from 1000wm-2 to 2000wm-2. The equation I need to use is TSI=r^2*Stefan-Boltzmann constnat*T^4 / L^2, where I know the values of r, SB constant, and L, but I'm not sure how to write the program such that it calculates a new temperature for each TSI value between 1000-2000, if that makes sense. I have an intial condition for the temperature as well. I assume I need a for loop somewhere, but I'm not sure how to start writing the equation for finding each temperature.
Thanks very much.
2 件のコメント
Cris LaPierre
2022 年 3 月 16 日
What have you tried so far? You'll find the community happy to help you fix your code, but more hesitant to code your assignment for you.
Madison Cocker
2022 年 3 月 16 日
採用された回答
その他の回答 (2 件)
David Hill
2022 年 3 月 16 日
TSI=1000:2000;
T=(TSI/r^2/SB_constant*L^2).^.25;
Enrico Gambini
2022 年 3 月 16 日
編集済み: Enrico Gambini
2022 年 3 月 16 日
Hi.
Generally matlab "doesn't like" for loops like other programming languages. That's because in most of the cases there is the possibility to indicize an array in a simpler (and faster) way.
Hence, for your specific problem I propose:
r=input("Insert the value of r:\n");
L=input("Insert the value of L:\n");
Sb_const=input("Insert the value of Stefann-Boltzmann constant :\n");
TSI=[1000:2000];
T=(TSI*L^2/(r^2*Sb_const)).^(1/4); %I inverted the formula and it is computing the Temperature at an interval of 1 W/m2 between 1000 and 2000
plot(TSI,T); %plot TSI vs T
カテゴリ
ヘルプ センター および File Exchange で MATLAB についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!