diff subsSymfun.m @ 599:489bea7fc33f feature/grids

Add some functions to make symbolic life easier
author Jonatan Werpers <jonatan@werpers.com>
date Tue, 26 Sep 2017 15:38:25 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/subsSymfun.m	Tue Sep 26 15:38:25 2017 +0200
@@ -0,0 +1,14 @@
+% Subs for a symfun
+% f remains a symbolic function. If any of it's arguments is eliminated
+% it is removed from the argument list while preserving the order of the
+% other arguments
+function f = subsSymfun(f, old, new)
+    args = argnames(f);
+
+    newExpr = subs(f, old, new);
+    vars = symvar(subs(args, old, new));
+
+    newArgs = args(ismember(args,vars));
+
+    f = symfun(newExpr, newArgs);
+end
\ No newline at end of file