How to solve equation using math symbolic and get erfinv as output?
1 view (last 30 days)
Show older comments
Hi,
When I type this code:
syms x y
solve(erf(x) - y,x)
I get the following
ans =
[ empty sym ]
When it's clear that the answer is x = erfinv(y), if we assume that y belongs to (0,1).
Is there some way in which I can get erfinv(y)as an answer? I guess the problem is that I didn't specify that y is between 0 and 1. If so, how can I do that?
Thanks,
Caio
0 Comments
Accepted Answer
Alexander
on 20 Apr 2012
Hi Caio,
assume(0<y<1)
>> solve(erf(x) - y,x)
ans =
erfinv(y)
If you have an older version, you need to use evalin:
evalin(symengine, 'assume(0<y<1)')
You can also try to use the option IgnoreAnalyticConstraints. With this option, the symbolic engine is a little less restrictive when doing calculations:
syms y clear
solve(erf(x) - y,x, 'IgnoreAnalyticConstraints', true)
ans =
erfinv(y)
0 Comments
More Answers (1)
See Also
Categories
Find more on Assumptions 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!