annotate subsSymfun.m @ 1015:9b7fcd5e4480 feature/advectionRV

Debug ResidualViscosity - Pass exact time derivative to RungeKuttaExteriorRV and use that for evaluating the residual - Start bootstrapping from later time level with higher order bdf
author Vidar Stiernström <vidar.stiernstrom@it.uu.se>
date Thu, 06 Dec 2018 17:03:22 +0100
parents 489bea7fc33f
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
599
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
1 % Subs for a symfun
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
2 % f remains a symbolic function. If any of it's arguments is eliminated
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
3 % it is removed from the argument list while preserving the order of the
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
4 % other arguments
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
5 function f = subsSymfun(f, old, new)
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
6 args = argnames(f);
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
7
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
8 newExpr = subs(f, old, new);
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
9 vars = symvar(subs(args, old, new));
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
10
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
11 newArgs = args(ismember(args,vars));
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
12
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
13 f = symfun(newExpr, newArgs);
489bea7fc33f Add some functions to make symbolic life easier
Jonatan Werpers <jonatan@werpers.com>
parents:
diff changeset
14 end