たとえば、私が持っている場合:
Q1=4;
Q2=5;
PG=2:60
A1=Q1./sqrt(PG);
A2=Q2./sqrt(PG);
plot(PG,A1)
plot(PG,A2)
次のようにできますか?
Q=[Q1,Q2];
A=Q./sqrt(PG);
plot(PG,A(1))
plot(PG,A(2))
またはA1とA2を避けるためにsth?
たとえば、私が持っている場合:
Q1=4;
Q2=5;
PG=2:60
A1=Q1./sqrt(PG);
A2=Q2./sqrt(PG);
plot(PG,A1)
plot(PG,A2)
次のようにできますか?
Q=[Q1,Q2];
A=Q./sqrt(PG);
plot(PG,A(1))
plot(PG,A(2))
またはA1とA2を避けるためにsth?
A=bsxfun(@rdivide,[Q1;Q2],sqrt(PG))
Q1
行います(との間のコンマではなくセミコロンに注意してくださいQ2
)が、質問のコードがあなたのユースケースであり、他の誰かにコードを読んで理解してもらいたい場合は、使用しないことをお勧めします.
andをA
使用する行に対処する必要があります(方法に関係なく) が、おそらくとにかくしたいでしょう。A(1,:)
A(2,:)
A
plot(PG,A)
[最初のコメントの後に編集:]
rdivide
は、通常 MATLAB コードで示される関数の名前であり./
、同じサイズの配列またはスカラーと配列に適用されます。bsxfun
2 つの引数の関数を、それに提供された他の 2 つの引数に、最も適していると見なされる方法で単純に適用します (少し簡略化するため)。arrayfun
同様のことを行います: 1 つの配列のすべての要素に関数を適用します。ここに適用するには、PG
内部にハードコーディングされた関数が必要です。