Gegeben:Wie summiere ich eine beliebige Polynomreihe in MATLAB?
y=[y(1),y(2),...,y(n)]
Wo n
Eingabe durch den Benutzer ist, und:
x=[x(1),x(2),...,x(n)]
a=[a0,a1,...,am]=[a(1),a(2),...,a(m+1)]
Wo m
ist auch durch den Benutzer eingegeben, dann muss ich berechnen:
y(p) = a0*x(p)^0 + a1*x(p)^1 + a2*x(p)^2 + ... + am*x(p)^m
y(p) = a(1)*x(p)^0 + a(2)*x(p)^1 + a(3)*x(p)^2 + ... + a(m+1)*x(p)^m.
dh Jedes Element von y
ist ein Polynom in m
, y=a0+a1x+a2x^2+...+amx^m
, mit der thx
Wert für die thy
Wert.
In Summe Notation:
y(p) = **sum** (from q=0 to m) **[a(q+1)*x(p)^q]**
Ich bin mir nicht sicher, wie diese Serie in MATLAB zu summieren. Jede Hilfe würde sehr geschätzt werden!
EDIT:
ich versucht habe, jeden Wert von y(p)
durch folgende zu bewerten, zum Beispiel y(2)
:
syms q a x
f=a(q+1)*x(2)^q
y(2) = symsum(f, q, 0, m)
Doch diese gibt den Fehler Invalid indexing or function definition
.
Wo genau haben Sie Schwierigkeiten, diese Serie zu summieren? Haben Sie versucht, dies zu programmieren? Wenn ja, wo versagt es? Kannst du uns einen [mcve] geben? – beaker
Ich habe den Beitrag bearbeitet – John