Skip to content

Commit 7bf1b7c

Browse files
committed
Release 0.9.7 "Home" - Symbolic integration and bug fixes
This release focuses on symbolic integration and bug fixes. New features ============ * Symbolic evaluation of integrals when the primitive is known, for example `'∫(A;B;X↑3-sin(X-3);X)'` now evaluates symbolically. * hms: Cycle between `hms` and `dms` units * datetime: `_hms` removes `_dms` if necessary * Non-algebraic form of `where`, with list as substitution input, for example `« 'X-Y·Z' { X 3 Y '2·A' } | »` returns `'3-2·A·Z'`. Bug fixes ========= * Correctly render `*` and `<` in the built-in help render engine. * Optimized temporaries cleanup now correctly clears the command if it was a temporary. * Fix rounding errors for decimal values in HMS and DMS * Do not give truncated result for `FromHMS` * Fix conversion of hardware floating-point values to fraction * Fix typo in `FromHMS` help entry * Allow screenshots with Shift-Disp in `Show` * Fix two tests that fail and should not * Correct hwfp entry with french locale. * stack: Correct font size for non-result stack levels * Swap logfit and powerfit menu entries (wrong label) Improvements ============ * Improve detection of unknown primitives and derivatives. * The rewrite engine was incorrectly rewriting "up" for integration and differentiation, when rewriting "down" is much more efficient. This accelerates symbolic integration and differentiation by more than an order of magnitude in some cases. * Evaluate the bounds of integrals numerically ahead of time. This accelerates numerical integration when the bounds are complex expressions. * In the rewrite engine, evaluate the sub-expressions that correspond to a constant in the pattern before comparing. This notably solves some cases where the derivative would contain leftover constants expressions that should have been eliminated, such as `0*X`. * Automatically generate the list of implemented commands, and update the implementation status. * Renamed the settings for numerical / symbolic integration and solver * Rename `6-Unimplemented.md` to `6-ImplementationStatus.md` and remove empty `doc/calc-help/finances.md` file. * Support for recent compilers (GCC >= 12.2.1). * Update performance data for 0.9.6 * Add Philippe Martens to the authors list Signed-off-by: Christophe de Dinechin <[email protected]>
1 parent e5d38ae commit 7bf1b7c

File tree

5 files changed

+155
-2
lines changed

5 files changed

+155
-2
lines changed

doc/5-ReleaseNotes.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,56 @@
11
# Release notes
22

3+
## Release 0.9.7 "Home" - Symbolic integration and bug fixes
4+
5+
This release focuses on symbolic integration and bug fixes.
6+
7+
### New features
8+
9+
* Symbolic evaluation of integrals when the primitive is known, for example
10+
`'∫(A;B;X↑3-sin(X-3);X)'` now evaluates symbolically.
11+
* hms: Cycle between `hms` and `dms` units
12+
* datetime: `_hms` removes `_dms` if necessary
13+
* Non-algebraic form of `where`, with list as substitution input, for example
14+
`« 'X-Y·Z' { X 3 Y '2·A' } | »` returns `'3-2·A·Z'`.
15+
16+
### Bug fixes
17+
18+
* Correctly render `*` and `<` in the built-in help render engine.
19+
* Optimized temporaries cleanup now correctly clears the command if temporary.
20+
* Fix rounding errors for decimal values in HMS and DMS
21+
* Do not give truncated result for `FromHMS`
22+
* Fix conversion of hardware floating-point values to fraction
23+
* Fix typo in `FromHMS` help entry
24+
* Allow screenshots with Shift-Disp in `Show`
25+
* Fix two tests that fail and should not
26+
* Correct hwfp entry with french locale.
27+
* stack: Correct font size for non-result stack levels
28+
* Swap logfit and powerfit menu entries (wrong label)
29+
30+
31+
### Improvements
32+
33+
* Improve detection of unknown primitives and derivatives.
34+
* The rewrite engine was incorrectly rewriting "up" for integration and
35+
differentiation, when rewriting "down" is much more efficient. This
36+
accelerates symbolic integration and differentiation by more than an order of
37+
magnitude in some cases.
38+
* Evaluate the bounds of integrals numerically ahead of time. This accelerates
39+
numerical integration when the bounds are complex expressions.
40+
* In the rewrite engine, evaluate the sub-expressions that correspond to a
41+
constant in the pattern before comparing. This notably solves some cases where
42+
the derivative would contain leftover constants expressions that should have
43+
been eliminated, such as `0*X`.
44+
* Automatically generate the list of implemented commands, and update the
45+
implementation status.
46+
* Renamed the settings for numerical / symbolic integration and solver
47+
* Rename `6-Unimplemented.md` to `6-ImplementationStatus.md` and remove empty
48+
`doc/calc-help/finances.md` file.
49+
* Support for recent compilers (GCC >= 12.2.1).
50+
* Update performance data for 0.9.6
51+
* Add Philippe Martens to the authors list
52+
53+
354
## Release 0.9.6 "Peace" - Bug fixes
455

556
This release is mostly bug fixes

help/db48x.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3680,6 +3680,57 @@ To enter `IFTE` in a program, select the `TestsMenu` (🟦 _3_) and then
36803680
the _IFTE_ command (🟨 _F6_).
36813681
# Release notes
36823682

3683+
## Release 0.9.7 "Home" - Symbolic integration and bug fixes
3684+
3685+
This release focuses on symbolic integration and bug fixes.
3686+
3687+
### New features
3688+
3689+
* Symbolic evaluation of integrals when the primitive is known, for example
3690+
`'∫(A;B;X↑3-sin(X-3);X)'` now evaluates symbolically.
3691+
* hms: Cycle between `hms` and `dms` units
3692+
* datetime: `_hms` removes `_dms` if necessary
3693+
* Non-algebraic form of `where`, with list as substitution input, for example
3694+
`« 'X-Y·Z' { X 3 Y '2·A' } | »` returns `'3-2·A·Z'`.
3695+
3696+
### Bug fixes
3697+
3698+
* Correctly render `*` and `<` in the built-in help render engine.
3699+
* Optimized temporaries cleanup now correctly clears the command if temporary.
3700+
* Fix rounding errors for decimal values in HMS and DMS
3701+
* Do not give truncated result for `FromHMS`
3702+
* Fix conversion of hardware floating-point values to fraction
3703+
* Fix typo in `FromHMS` help entry
3704+
* Allow screenshots with Shift-Disp in `Show`
3705+
* Fix two tests that fail and should not
3706+
* Correct hwfp entry with french locale.
3707+
* stack: Correct font size for non-result stack levels
3708+
* Swap logfit and powerfit menu entries (wrong label)
3709+
3710+
3711+
### Improvements
3712+
3713+
* Improve detection of unknown primitives and derivatives.
3714+
* The rewrite engine was incorrectly rewriting "up" for integration and
3715+
differentiation, when rewriting "down" is much more efficient. This
3716+
accelerates symbolic integration and differentiation by more than an order of
3717+
magnitude in some cases.
3718+
* Evaluate the bounds of integrals numerically ahead of time. This accelerates
3719+
numerical integration when the bounds are complex expressions.
3720+
* In the rewrite engine, evaluate the sub-expressions that correspond to a
3721+
constant in the pattern before comparing. This notably solves some cases where
3722+
the derivative would contain leftover constants expressions that should have
3723+
been eliminated, such as `0*X`.
3724+
* Automatically generate the list of implemented commands, and update the
3725+
implementation status.
3726+
* Renamed the settings for numerical / symbolic integration and solver
3727+
* Rename `6-Unimplemented.md` to `6-ImplementationStatus.md` and remove empty
3728+
`doc/calc-help/finances.md` file.
3729+
* Support for recent compilers (GCC >= 12.2.1).
3730+
* Update performance data for 0.9.6
3731+
* Add Philippe Martens to the authors list
3732+
3733+
36833734
## Release 0.9.6 "Peace" - Bug fixes
36843735

36853736
This release is mostly bug fixes

help/db50x.md

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3688,6 +3688,57 @@ To enter `IFTE` in a program, select the `TestsMenu` (🟦 _3_) and then
36883688
the _IFTE_ command (🟨 _F6_).
36893689
# Release notes
36903690

3691+
## Release 0.9.7 "Home" - Symbolic integration and bug fixes
3692+
3693+
This release focuses on symbolic integration and bug fixes.
3694+
3695+
### New features
3696+
3697+
* Symbolic evaluation of integrals when the primitive is known, for example
3698+
`'∫(A;B;X↑3-sin(X-3);X)'` now evaluates symbolically.
3699+
* hms: Cycle between `hms` and `dms` units
3700+
* datetime: `_hms` removes `_dms` if necessary
3701+
* Non-algebraic form of `where`, with list as substitution input, for example
3702+
`« 'X-Y·Z' { X 3 Y '2·A' } | »` returns `'3-2·A·Z'`.
3703+
3704+
### Bug fixes
3705+
3706+
* Correctly render `*` and `<` in the built-in help render engine.
3707+
* Optimized temporaries cleanup now correctly clears the command if temporary.
3708+
* Fix rounding errors for decimal values in HMS and DMS
3709+
* Do not give truncated result for `FromHMS`
3710+
* Fix conversion of hardware floating-point values to fraction
3711+
* Fix typo in `FromHMS` help entry
3712+
* Allow screenshots with Shift-Disp in `Show`
3713+
* Fix two tests that fail and should not
3714+
* Correct hwfp entry with french locale.
3715+
* stack: Correct font size for non-result stack levels
3716+
* Swap logfit and powerfit menu entries (wrong label)
3717+
3718+
3719+
### Improvements
3720+
3721+
* Improve detection of unknown primitives and derivatives.
3722+
* The rewrite engine was incorrectly rewriting "up" for integration and
3723+
differentiation, when rewriting "down" is much more efficient. This
3724+
accelerates symbolic integration and differentiation by more than an order of
3725+
magnitude in some cases.
3726+
* Evaluate the bounds of integrals numerically ahead of time. This accelerates
3727+
numerical integration when the bounds are complex expressions.
3728+
* In the rewrite engine, evaluate the sub-expressions that correspond to a
3729+
constant in the pattern before comparing. This notably solves some cases where
3730+
the derivative would contain leftover constants expressions that should have
3731+
been eliminated, such as `0*X`.
3732+
* Automatically generate the list of implemented commands, and update the
3733+
implementation status.
3734+
* Renamed the settings for numerical / symbolic integration and solver
3735+
* Rename `6-Unimplemented.md` to `6-ImplementationStatus.md` and remove empty
3736+
`doc/calc-help/finances.md` file.
3737+
* Support for recent compilers (GCC >= 12.2.1).
3738+
* Update performance data for 0.9.6
3739+
* Add Philippe Martens to the authors list
3740+
3741+
36913742
## Release 0.9.6 "Peace" - Bug fixes
36923743

36933744
This release is mostly bug fixes

src/dm32/qspi_crc.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11

2-
#define QSPI_DATA_SIZE 284988
2+
#define QSPI_DATA_SIZE 285284
33
#define QSPI_DATA_CRC 0x000cfed6
44

src/dm42/qspi_crc.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11

2-
#define QSPI_DATA_SIZE 281020
2+
#define QSPI_DATA_SIZE 281308
33
#define QSPI_DATA_CRC 0x000cfed6
44

0 commit comments

Comments
 (0)