Define variable based on input condition
2 views (last 30 days)
Show older comments
I have a function which calculates two possible output values (psi positive or negative) for a given input value (th2) as th2 sweeps from 0 to 360.
th2 = 0: 0.1: 360;
A = 2*a*c.*cosd(th2)-2*d*c;
B = 2*a*c.*sind(th2);
C = (d^2) + (c^2) + (a^2) - (b^2) - (2*a*d.*cosd(th2)) ;
psi_pos = (atan2d(B,A) + acosd(C ./ (sqrt((A.^2) + (B.^2)))));
psi_neg = (atan2d(B,A) - acosd(C ./ (sqrt((A.^2) + (B.^2)))));
The outputs for psi_pos and psi_neg are 1x3601 doubles,
I want a final variable psi defined as
psi_pos when 0 < th2 < 180
psi_neg when 180 < th2 < 360
So I can then plot one continuous function (psi vs th2)
0 Comments
Accepted Answer
madhan ravi
on 15 Nov 2023
Edited: madhan ravi
on 15 Nov 2023
psi = ((0 <= th2) & (th2 < 180)) .* psi_pos + ((180 <= th2) & (th2 < 360)) .* psi_neg;
plot(th2, psi)
0 Comments
More Answers (0)
See Also
Categories
Find more on Data Type Identification 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!