MATLAB: Solving multiple related variables using if statement

if statement

hi everyone
i have 3 variables (Temp, Voltage, Battery) that i want to correlate
what i want is that i get errors in temp variable using limits of all the three variables
limits are
when Temp<44 or Temp>56 with Volatge between 9.8 to 13.5 and battery 1 i should get errors of my variable Temp if it is <44 or if it is >56
battery limits are 1 or 0 (ON or OFF)
kindly help me

Best Answer

  • Nobody was offended, we're just trying to understand what you want as a result, which you haven't clearly explained. As said, coding the test is trivial but we don't know what to do with the result. You still haven't told us what you want as an output. I want errors doesn't mean anything.
    So I'm going to take a guess as to the desired output. If that's not what you want, then please explain.
    In matlab, using if and loops should be a last resort. There are usually much simpler ways of obtaining the result you want, as is the case here:
    batterytest = readtable('Test.xlsx'); %import the data in a table
    batterytest.isError = batterytest.Temp < 44 | batterytest.Temp > 56 %create new table variable which is true when temperature outside [44, 56]
    You can trivially add more conditions to the isError test. eg.
    batterytest.isError = batterytest.Temp < 44 | batterytest.Temp > 56 | batterytest.Voltage < 9.8 | batterytest.Voltage > 13.5 | batterytest.Battery == 0