vectorization of anonymous function?

3 Ansichten (letzte 30 Tage)
Jan Valdman
Jan Valdman am 18 Dez. 2016
Kommentiert: Jan am 18 Dez. 2016
I managed to vectorize the function below using inline command:
u_function=inline(vectorize('sin(x*y*z^2)'),'x','y','z') x=[1 2 3 4]; y=[3 4 3 4]; z=[1 2 4 4]; u=u_function(x,y,z)
How do I rewrite it in terms of an anonymous function?
Cheers, Jan

Antworten (1)

Mischa Kim
Mischa Kim am 18 Dez. 2016
Bearbeitet: Mischa Kim am 18 Dez. 2016
Jan, is the resulting u(x,y,z) also a 1-by-4?
How about:
u = str2func(vectorize('@(x,y,z)sin(x*y*z^2)'));
x = [1 2 3 4]; y = [3 4 3 4]; z = [1 2 4 4];
u_eval = u(x,y,z)
  2 Kommentare
Jan
Jan am 18 Dez. 2016
Move from Answer section (please pst comments in the comment section - Thanks)
Hi Mischa,
thank you, all vectors should have the size, yes. However, I am going to use more difficult forms of functions instead of x*y*z^2 and would like Matlab to put dots automatically (using vectorize?) within anonymous function. Is there a way to do it?
Jan
Jan am 18 Dez. 2016
Mischa wrote: Jan, understood. Check out the updated answer above. Does this do the trick?

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Function Creation finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by