Ich versuche, eine Funktion in MATLAB zu erstellen, die eine Klammer auf die Potenz von n erweitern wird, wobei n eine natürliche Zahl ist. Das ist, was ich habe, so weit:2 Variablen in einem Array
function expandb = expandb(x,y,n)
z = my_bincoeff1(n);;
syms v x y
v=1:n+1
for i=1:n+1
v(i)=z(i)*x.^(n-i+1)*y.^(i-1);
end
a=0
for i=1+n+1
a=a+v(i)
end
expandb = a;
ich diesen Fehler, wenn ich es laufen:
??? The following error occurred converting from sym to double:
Error using ==> mupadmex
Error in MuPAD command: DOUBLE cannot convert the input expression into a double
array.
If the input expression contains a symbolic variable, use the VPA function instead.
Error in ==> expandb at 6
v(i)=z(i)*x.^(n-i+1)*y.^(i-1);
Wie speichere ich 2 Variablen in einem Array?
Sollte 'expandb' eine Funktion der symbolischen Variablen oder eine Zahl sein? – Jacob
Es sollte eine Funktion von 2 Variablen sein. Nehmen wir an ich muss expandieren (2x + 3y)^4 Ich würde expandb schreiben (2x, 3y, 4) und die Antworten wären von der Form (2x)^4 + ... – Mobix
Gibt es einen Grund, warum du das nicht tust möchte die Funktion [EXPAND] (http://www.mathworks.com/help/toolbox/symbolic/expand.html) verwenden, dh expandieren ((2 * x + 3 * y)^4) ;? – gnovice