Integration of MATLAB function - NOT Mathematic function.
2 views (last 30 days)
Show older comments
Hi, I have three MATLAB script, with one serve as a main class. I want to integrate an expression which contain two other functions,
Code:
x = 0:180;
TB = integral(getCt_Theta(x)*getQ_2(x),1,180);
Where: getCt_Theta(x), is a function to calculate coefficient of lift, will return one values for each inputs Same goes for getQ_2(x), The reason for this task is to evaluate half revolution of the turbine. Should I do symbolic first? or should I Simulink it?
Thanks everyone!
2 Comments
Walter Roberson
on 2 Sep 2016
Your x is the integral values from 0 to 180, but you mention x in your integral() and you want the integral to be over 1 to 180. Is your x intended to be continuous or discrete, and is it intended to be 0 to 180 or 1 to 180 ?
Accepted Answer
Walter Roberson
on 3 Sep 2016
f = @(x) getCt_Theta(x).*getQ_2(x)
and integral that:
integral(f, 0, 180)
However, this depends upon getCt_Theta and getQ_2 accepting vectors of values. If they cannot, if they can only accept scalars, then you need
integral( @(X) arrayfun( f, X), 0, 180)
More Answers (1)
Pawel Ladosz
on 2 Sep 2016
You could try and change your matlab function to function handle by:
getCt_Theta_fun=@getCt_Theta
Then you can use this is as input to integral. However I am not sure whether it would deal with multiplication of the function handles.
3 Comments
See Also
Categories
Find more on Matrix Computations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!