The function isreal not working?
6 views (last 30 days)
Show older comments
function [calc_valid, EM] = input_check(N,t,S,EV)
inputs = [N,t,S,EV]; %The inputs are placed in a vector.
calc_valid = 0;
if isreal(inputs)==0 || isa(inputs,'numeric')==0 %This checks if other than real numbers and numbers are inputted.
EM = 'ERROR: The inputs are not real numbers.';
elseif N~=0 && N<1 || N>8000 %This checks if N is not within the range 1:8000 or not = 0.
EM = 'ERROR: N is not within the range 1:8000';
elseif t~=0 && t<(1/8000) || t>2 %This checks if t is not within the range 1/8000:2 or not = 0.
EM = 'ERROR: t is not within the range 1/8000:2';
elseif S~=0 && S<25 || S>51200 %This checks if S is not within the range 25:51200 or not = 0.
EM = 'ERROR: S is not within the range 25:51200';
elseif EV<-6 || EV>23 %This checks if EV is not within the range -6:23.
EM = 'ERROR: EV is not within the range -6:23';
elseif N==0 && t==0 || N==0 && S==0 || t==0 && S==0
EM = 'ERROR: Only EV and one other variable are permitted to be zero';
else
EM = '';
calc_valid = 1;
end
end
For some reason all the other checks work except isreal ?
4 Comments
Roger Wohlwend
on 22 May 2014
There's nothing wrong with the isreal command. Are you sure that it is not working properly? Can you give as example (e.g. values for the input variables) where the command fails?
Answers (0)
See Also
Categories
Find more on Logical in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!