I am trying to make this loop through so that I get a J1, J2, J3, and J4 matrix.
s1 = -.5773;
t1 = -.5773;
s2 = -.5773;
t2 = .5733;
s3 = .5773;
t3 = -.5773;
s4 = .5773;
t4 = .5773;
W1 = 1;
W2 = 1;
W3 = 1;
W4 = 1;
x1 = 3;
y1 = 2;
x2 = 5;
y2 = 2;
x3 = 5;
y3 = 5;
x4 = 3;
y4 = 4;
X_c = [x1 x2 x3 x4];
Y_c = [y1;y2;y3;y4];
for i = 1:4
J_i = (1/8)* X_c *[0 1-ti ti-si si-1; ...
ti-1 0 si+1 -si-ti; si-ti -si-1 0 ti+1; ...
1-si si+ti -ti-1 0] *Y_c
end
Sorry it has been a while since I have written any code and I am very inefficient.

1 件のコメント

Stephen23
Stephen23 2015 年 3 月 23 日
編集済み: Stephen23 2023 年 9 月 12 日
Do not use dynamically names variables in MATLAB. Put your variables in a cell array or structure instead.

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

回答 (1 件)

dpb
dpb 2015 年 3 月 23 日

2 投票

"...this loop through so that I get a J1, J2, J3, and J4 matrix"
Don't do that! See the FAQ for why not and "more better" ways...

4 件のコメント

Carlen
Carlen 2015 年 3 月 23 日
移動済み: DGM 2023 年 9 月 13 日
It says that ti is undefined...still can't get it to work.
dpb
dpb 2015 年 3 月 23 日
移動済み: DGM 2023 年 9 月 13 日
That's why it's strongly recommended to not try to "poof" variables into the workspace. Use arrays or cell arrays or even dynamically-name structures, but not this which results in having to use eval to do anything with the resulting variables.
Carlen
Carlen 2015 年 3 月 23 日
移動済み: DGM 2023 年 9 月 13 日
Thanks for the reply. I am certainly a beginner to coding and some of this stuff is a bit over my head. It looks like I will have to do some more research on this and maybe get some external help.
Stephen23
Stephen23 2015 年 3 月 23 日
移動済み: DGM 2023 年 9 月 13 日
It is not clear why you need to define all of these values as separate variables. It would be much neater and simpler if you just did this:
W = [1,1,1,1];
x = [3,5,5,3];
y = [2,2,5,4];
... etc.
And then you could also use MATLABs very powerful code vectorization abilities to make the rest of your code neater and faster too.

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

カテゴリ

ヘルプ センター および File Exchange で Loops and Conditional Statements についてさらに検索

質問済み:

2015 年 3 月 22 日

移動済み:

DGM
2023 年 9 月 13 日

Community Treasure Hunt

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

Start Hunting!

Translated by