generalize a function according to input

Hi, i need your suggestion about generalize a code for each variable. For example, i have a code, but it is special for x. I have a function like f(x)=x.^2-3*x+5; and this code generate f(x) according to x. I want to generalize code for x,y,z,... and more variable, for example if my function is f(x,y)= x.^2-2*y+6, i want code to work for x and y variable.
So i need some beginning suggestions, i'm in searching process. Thank you.

3 commentaires

FirefoxMetzger
FirefoxMetzger le 15 Août 2016
Is the function you are trying to generate always a mathmatical function? Further, is it allways polynomial?
Ozge Moral
Ozge Moral le 15 Août 2016
Modifié(e) : Ozge Moral le 15 Août 2016
it will include exponentials, sinusoids(sin(5x+6).^2) and it is always mathematical function. i have already a code for doing necessary calculation. but i want to apply this x,y,z,... may be there is a practical way to control these.

Connectez-vous pour commenter.

 Réponse acceptée

hcai
hcai le 16 Août 2016
Modifié(e) : hcai le 16 Août 2016
You can try using varargin, which allows functions to take a variable number of inputs.
function result = f(varargin)
Inside your function, use nargin or the length of the varargin cell array to determine the number of function inputs. From there, use if statements to specify what do to for each case.
if nargin == 1
x = varargin{1};
x.^2-3*x+5;
elseif nargin == 2
...
Examples can be found here .

Plus de réponses (0)

Catégories

En savoir plus sur Operators and Elementary Operations dans Centre d'aide et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by