## Need help with symbolic variables (if else statement)

### Akbar (view profile)

on 13 Jul 2018
Latest activity Edited by Akbar

on 18 Jul 2018

### Walter Roberson (view profile)

if a > 10^-8
switch1 = b;
else
switch1 = 0;
end
i get the following error:
Conversion to logical from sym is not possible.
at line:
if a > 10^-8
I Need the above code to work with symbolic variables.

on 13 Jul 2018
...and what is stored in a? what does a equal?
Akbar

### Akbar (view profile)

on 13 Jul 2018
Just one number

on 13 Jul 2018
Ok, see answers. If 'a' must be 'sym' Walter's answer is best. If 'a' can be converted to 'double', see my answer.

R2017b

### Walter Roberson (view profile)

on 13 Jul 2018

You need to use piecewise() for this purpose.

on 13 Jul 2018

According to your comments, 'a' is a symbol symbolizing a scalar number. If that's the case, you can convert 'a' to numerical.
a = sym('3.14159');
a = double(a); % Convert to double
if a > 10^-8
...
else
...
end
If you prefer to keep 'a' in the sym class, use Walter's answer.

Akbar

### Akbar (view profile)

on 17 Jul 2018
Thank you very much Walter for trying to help out. I dont want to share files on public. I can send to your email if you provide it.
Walter Roberson

### Walter Roberson (view profile)

on 17 Jul 2018
Sorry, I only answer public questions.
Akbar

### Akbar (view profile)

on 18 Jul 2018
Ok. I have just solved my issue by substituting if else statement with tanh().