Info

This question is closed. Reopen it to edit or answer.

how to create a function m-file in Matlab v.7.12?

1 view (last 30 days)
MissA
MissA on 12 Dec 2012
Closed: MATLAB Answer Bot on 20 Aug 2021
How to create a function m-file to evaluate the function f(x)=((1+a)*sin(a*x)*exp(-a*x))/x
where a is given and a=0.3
??
Please Help
Thanks in advance
MissA

Answers (2)

Walter Roberson
Walter Roberson on 12 Dec 2012
function f = my_func(x)
a = 0.3;
f = ((1+a) * sin(a*x) .* exp(-a*x)) ./ x;
end

Muruganandham Subramanian
Muruganandham Subramanian on 12 Dec 2012
[f]=my_func(x)
a=0.3;
f(x)=((1+a)*sin(a*x)*exp(-a*x))/x
return;
  3 Comments
Muruganandham Subramanian
Muruganandham Subramanian on 13 Dec 2012
Edited: Muruganandham Subramanian on 13 Dec 2012
If you want to write as a function file, this is the way, and 'x' is an i/p argument, that you can read it from workspace, beore running the function file, like >>x=3; % 'x' is variable
function f =my_func(x)
a=0.3;
f(x)=((1+a)*sin(a*x)*exp(-a*x))/x
return;
otherwise, you can do this using for looping operation.
Walter Roberson
Walter Roberson on 13 Dec 2012
If you try that and x contains any values that are not positive integers, then MATLAB will complain about you trying to index the array f. For example, if x was 1/2 then
f(x) = .....
would mean
f(1/2) = .....
and that is trying to assign a value to element # (1/2) in array f, which is not legal.
See my solution.

Community Treasure Hunt

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

Start Hunting!