Commit 9f3216da authored by Hynek Baran's avatar Hynek Baran

v 5.90 RC1

* jet: option remember bug (multiple eqs problem as reported by JSK) fixed by introducing `eqn/table`
* lengthselect introduced
parent 6bcd7c8b
Pipeline #7 failed with stages
......@@ -108,7 +108,7 @@
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">read(&quot;../mc/Jets.s&quot;);</Text-field>
</Input>
<Output>
<Text-field style="2D Output" layout="Maple Output"><Equation executable="false" style="2D Output">ST1KZXRzfjUuODd+YXN+b2Z+T2N0fjI1LH4yMDE3RzYi</Equation></Text-field>
<Text-field style="Line Printed Output" layout="Line Printed Output">`Jets 5.90 RC 1 as of Oct 10, 2018`</Text-field>
</Output>
</Group>
<Group hide-output="false" labelreference="L936" drawlabel="true">
......@@ -889,6 +889,11 @@
<Text-field style="2D Output" layout="Maple Output"><Equation executable="false" style="2D Output">STdDbGVhcmluZ35kZXBlbmRlbmNlJ3MuRzYi</Equation></Text-field>
</Output>
</Group>
<Group labelreference="L965" drawlabel="true" applyint="true" applyrational="true" applyexponent="false">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
</Input>
</Group>
<Group hide-output="false" labelreference="L48" drawlabel="true">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">A := 'A': B := 'B': C := 'C':</Text-field>
......@@ -1006,6 +1011,41 @@
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
</Input>
</Group>
<Group labelreference="L975" drawlabel="true" applyint="true" applyrational="true" applyexponent="false">
<Input>
<Text-field style="Text" layout="Normal">jet: option remember bug (multiple eqs problem as reported by JSK) fixed by introducing `eqn/table`fixed in 5.90 Oct 10, 2018</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">equation():</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">coordinates([x,y], [u,v,w], 3):</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">equation(
'v_x' = u_y,
'w_x' =TD(v_y,x)):</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">T(TD(v_x,y), u_yy, &quot;Multiple eqs 1&quot;);</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">T(TD(v_y,x), u_yy, &quot;Multiple eqs 1&quot;);</Text-field>
</Input>
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">equation():</Text-field>
</Input>
</Group>
<Group labelreference="L971" drawlabel="true" applyint="true" applyrational="true" applyexponent="false">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
</Input>
</Group>
<Group labelreference="L972" drawlabel="true" applyint="true" applyrational="true" applyexponent="false">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
</Input>
</Group>
<Group hide-input="false" hide-output="false" labelreference="L1" drawlabel="true">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal">if OK then lprint(`O.K.`);</Text-field>
......@@ -1021,6 +1061,11 @@
<Text-field style="2D Output" layout="Maple Output"><Equation executable="false" style="2D Output">SScwfnNlYy5HNiI=</Equation></Text-field>
</Output>
</Group>
<Group labelreference="L967" drawlabel="true" applyint="true" applyrational="true" applyexponent="false">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
</Input>
</Group>
<Group hide-output="false" labelreference="L964" drawlabel="true">
<Input>
<Text-field prompt="&gt; " style="Maple Input" layout="Normal"></Text-field>
......
......@@ -177,6 +177,10 @@
#
# v 5.89
# * run: linear eqs are ALL passed to resolve
#
# v 5.90
# * jet: option remember bug (multiple eqs problem as reported by JSK) fixed by introducing `eqn/table`
# * lengthselect introduced
###########################################################################################
###########################################################################################
......@@ -185,7 +189,7 @@
###########################################################################################
interface(screenwidth=120):
lprint(`Jets 5.89 as of Apr 19, 2018`);
lprint(`Jets 5.90 RC 1 as of Oct 10, 2018`);
#
# Source code configuration, options and parameters
......@@ -1222,7 +1226,7 @@ unassign('`put/limit/size`', '`put/limit/length`'): # use with extreme care!
fi;
else
if simpl(p-a) = 0 then
printf ("ignoring redundand put of %q\n", p);
printf ("ignoring redundant put of %q\n", p);
else
lprint(p);
lprint(a);
......@@ -1938,9 +1942,11 @@ end:
#
jet := proc (u::`f/var`,x::`b/count`)
option remember;
option remember, system, threadsafe;
global `eqn/table`;
local y, ans;
if op(4,op(jet)) = NULL then 'jet'(u,sort(x,`b/var/list`))
if assigned(`eqn/table`[u,x]) then
RETURN (`eqn/table`[u,x])
else
for y in `b/var/s` do
if type (x/y, 'count') then
......@@ -1953,6 +1959,8 @@ jet := proc (u::`f/var`,x::`b/count`)
fi
end:
`eqn/table` := table():
`simpl/jet` := op(simpl):
......@@ -2012,8 +2020,11 @@ equation := op(equations):
#
refresh := proc()
global `eqn/table`;
forget(jet);
`eqn/table` := table():
map (`refresh/1`, `refresh/list`);
op(map(proc(e) assign('jet'(op(1,e)) = simpl(eval(op(2,e)))) end,
op(map(proc(e) assign(`eqn/table`[op(1,e)] = simpl(eval(op(2,e)))); forget(jet); end,
`eqn/list`));
end:
......@@ -4022,6 +4033,10 @@ unksselect := proc(Z,A)
select(proc(z,A) unks(z) minus A = {} end, Z, A)
end:
lengthselect := proc(Z,d, sizefun := length)
select(proc(z,d) sizefun(z) < d end, Z, d)
end:
# Compute coefficients of multivariate polynomials
# mcoeff (expr, x1 = n1, x2 = n2, ...);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment