"Error: not enough input arguments" even though all input arguments are in workspace.

1 visualizzazione (ultimi 30 giorni)
I use the function below and I have all input arguments in the workspace (f as function, x, y). It asks me to define f, x, and y when I press run and when I fill these in it works. This really irritates me!! Thanks in advance.
function [G] = TaylorSeries(f, x, y)
syms x y
G = f;
display(G)
end

Risposta accettata

Walter Roberson
Walter Roberson il 8 Ott 2017
When you run a function, MATLAB never looks inside the workspace of the place it was invoked from in order to try to locate variables whose names just happen to match the name of the parameter given in the function definition. You always have to pass the values into the function, such as going to the command line and invoking
f = @(x, y) sin(x) - 2*cos(2*y) + tan(x.*y);
x = 1.234;
y = 8.765;
TaylorSeries(f, x, y)

Più risposte (0)

Categorie

Scopri di più su Mathematics in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by