~peterpall/maxima/+git/maxima.code:rtoy-fix-sech-csch

Last commit made on 2022-01-06
Get this branch:
git clone -b rtoy-fix-sech-csch https://git.launchpad.net/~peterpall/maxima/+git/maxima.code

Branch merges

Branch information

Name:
rtoy-fix-sech-csch
Repository:
lp:~peterpall/maxima/+git/maxima.code

Recent commits

b7dddd3... by Raymond Toy <email address hidden>

Add a couple of tests for sech/csch/acsch.

Verifies that we don't overflow for the arguments where we used to
overflow unnecessarily.

29a9d80... by Raymond Toy <email address hidden>

Actually commit the last change.

We use least-positive-normalized-double-float instead of sqrt(epsilon)
to determine when we use asinh(1/x) or not.

96e9cfc... by Raymond Toy <email address hidden>

Handle very small values for acsch.

For acsch(x) with x < least-positive-normalized-double-float, we would
get an unnecessary overflow. We can fix this by using the logarc
formula for acsch and noting that for such small x, the result is
log(2) - log(x). Use this to compute acsch for very small x.

Note that we then sinh(acsch(x)) signals an overflow for such small
x. I think this is ok since for such small x, 1/x also overflows.

b6e6399... by Raymond Toy <email address hidden>

Carefully evaluate sech and csch.

sech/csch was being evaluated by taking the reciprocal of cosh/sinh.
But for large x, this was causing an overflow, which shouldn't happen
since sech/csch approach zero as x approaches infinity.

Update the computation of these functions to more careful by using the
fact that both sinh/cosh are very close to exp(-|x|)/2. Thus,
sech/csch is 2*exp(-|x|).

bc4d6f1... by kjak

Fix the bogus MFEXPR* property for MPOIS

The MFEXPR* prop for MPOIS has been the list (LAMBDA (X) X) instead
of the desired identity function. Attempting to apply this list to
args would cause a lisp error.

Here's one way to trigger the bug:

(%i1) define (foo (), intopois (1))$

(%i2) foo ();
<lisp error>

This used to work in Macsyma under Maclisp and some other older
lisp dialects.

This bogus definition for the MFEXPR* prop for MPOIS is in pois3.
It turns out that a valid definition for this is in pois2. Given
the way that Maxima is being built, the definition from pois2 is
being replaced by the one in pois3.

I'm removing the definition from pois3, and moving the definition
from pois2 to pois3. The move is just because there is already a
comment in pois3 about this property.

No problems with the test suite or share test suite.

033d4bd... by kjak

Fix the docs for mapatom

I updated the mapatom docs when I extended the definition of mapatom
in commit abed19ac, but this update to the docs was removed a few days
later in commit d134c8c1.

af26eb9... by Stavros Macrakis

Correct errors and add fuller explanation to intro of ratpow

854bb0a... by Wolfgang Dautermann <email address hidden>

Windows installer: show VTK license info only, if VTK is included.

If one builds an installer with the option -DUSE_VTK=FALSE
it makes no sense to show links to VTK and the VTK license in
the license info page in the start menu.

4bc59b7... by Wolfgang Dautermann <email address hidden>

Windows installer: update SBCL.

a157d75... by Wolfgang Dautermann <email address hidden>

Partly revert commit [b08335729] (Typos fixed).

I was criticized, that that commit introduced some
typos, since the rule 'before an vowel comes "an", not "a"'
is not generally true.
Hopefully I fixed all these issues now. (I think, the
commit was not *completly* wrong).

Probably spelling fixes should only be done by native speakers
(and english is not my mother tongue), sorry for that.