私はMatlabで任意の長さの多項式関数を作成することに問題があります。これは、ベクトルを引数として使用するとうまくいくでしょう。ベクトルを受け入れる多項式の作成方法は?
多項式の値を含み、それを含むアルゴリズムを実行する必要があります。かんなこれが行く
n = 4 % For simplicity, could be arbitrary positive integer
f = @(x) x.^[0:n] %Coefficients are 1 (for this example), if not, would be multiplied with vector of them
p = @(x) sum(f(x)) %My polynomial
>> p(5)
ans =
781
: ベローは私のコードです。しかし、私はプロットが必要なので、値のベクトルを受け取って返すことができるように多項式を必要とします。しかし、私がこれをすると、エラーがポップアップします。 例:
>>p([1 2 3 4])
Error using .^
Matrix dimensions must agree.
Error in @(x)x.^[0:n]
Error in @(x)sum(f(x))
私はそれを返すようにしたいことは、それを私がforループで値ベクトルを作成することによってこの問題を回避ましたが、ちょうど疑問に思って[p(1) p(2) p(3) p(4)]
多項式である私の値が長さ4のベクトルです私のコードを変更することができるので、これはうまくいくでしょうか?
私はあなたが示唆したことを試してみて、前と同じエラーが発生しました。 – Ravonrip
使用しているMATLABのバージョンは? – m7913d
MatlabバージョンR2015bを使用しています – Ravonrip