# getting error with symengine

25 views (last 30 days)
Tommy Lim on 13 Dec 2021
Edited: Awais Saeed on 13 Dec 2021
Below is my code, literally get the error and didnt find any solution, pls help me
syms u v x y z
F = @(x,y,z) log (x.^2-2.*y) - z;
x = @(u,v)u+v;
y = @(v)exp(v);
F = subs(F)
Error using symengine
Arithmetical expression expected.
Error in sym/subs>mupadsubs (line 160)
G = mupadmex('symobj::fullsubs',F.s,X2,Y2);
Error in sym/subs (line 145)
G = mupadsubs(F,X,Y);
Error in subs (line 68)
r_unique_name = subs(sym(f_unique_name),varargin{:});
##### 1 CommentShowHide None
Tommy Lim on 13 Dec 2021
i run this code in MATLAB r2014a, everthing fine... but when i switch to MATLAB r2020a, i get error

Sign in to comment.

### Answers (2)

Awais Saeed on 13 Dec 2021
Edited: Awais Saeed on 13 Dec 2021
It is good to provide a variable list and expressions you want to replace using subs(). Read more about subs() here.
syms u v x y z
F = @(x,y,z) log (x.^2-2.*y) - z
F = function_handle with value:
@(x,y,z)log(x.^2-2.*y)-z
old = {x,y}; % replace these with 'new' expressions
new = {@(u,v)u+v,@(v)exp(v)};
Fnew = subs(F, old, new)
Fnew =
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

Walter Roberson on 13 Dec 2021
syms u v x y z
x(u,v) = u+v;
y(u,v) = exp(v);
F = log (x(u,v).^2-2.*y(u,v)) - z
F =
This produces the same result as would have been produced before (I tested.)
##### 0 CommentsShowHide -1 older comments

Sign in to comment.

### Categories

Find more on Number Theory 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!