Apply a function to a vector - Printable Version +- HP Forums (https://www.hpmuseum.org/forum) +-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html) +--- Forum: HP Prime (/forum-5.html) +--- Thread: Apply a function to a vector (/thread-5736.html) |
Apply a function to a vector - Maro - 02-22-2016 11:10 AM I would like to apply an arbitrary function to a predefined vector in HOME environment or in a program for some numerical analysis, similar to Matlab. For example in Matlab I define a vector of discrete time values and apply a function to this vector simply by two commands: t = (0:0.001:1); ➝ time vector from 0 to 1 sec with 1001 samples y = sin(t); ➝ y is a vector with 1001 sampled sin(t) - values Is that also possible with the prime in Home or in programs? I think the CAS functions "apply" or "map" can do this job, but I would like to avoid using CAS functions for the numerical analyses I'm working on. Thanks for any input! Maro RE: Apply a function to a vector - DrD - 02-22-2016 11:28 AM Perhaps, something like this? t:=MAKELIST(X,X,0,1,0.001); y:=SIN(t); -or- y:=SIN(MAKELIST(X,X,0,1,0.001)); // y:=sin(X) -or- M1:=SIN(t); // Uses reserved variable M1 to save in matrix (vector) form. -Dale- RE: Apply a function to a vector - Maro - 02-22-2016 12:31 PM Great! Thanks a lot, Dale. That works doing it with MAKELIST. I didn't think about lists and only noticed that functions like SIN don't accept vectors as arguments. When using a list as argument it works fine. Thanks again Maro RE: Apply a function to a vector - cyrille de brébisson - 02-23-2016 07:10 AM Hello, Mathlab does not have a distinction between lists and vectors/matrices. Prime does as they are different mathematical objects and behave differently with regard to some mathematical operations. Therefore the difference. Cyrille |