Age | Commit message (Collapse) | Author | Files | Lines |
|
Changes in Mathomatic version 15.6.0:
------------------------------------
Many tweaks and corrections to simplification and polynomial operations were made.
Created m4 Mathomatic input file "tests/trig". Lists all trig and
hypertrig functions, allowing testing of their simplification
and manipulation.
Sped up polynomial operations to be another 30 times faster
in some cases. Finished and cleaned up the polynomial factoring
and division C code. Thanks again to Kingsley G. Morse Jr. for
showing me this needed to be done.
The "simplify quick" command was changed to not combine unlike
denominators, making it much more useful, doing better
simplification than any other simplify option sometimes.
The tally command now returns the ending total and sets it as the
current equation.
Fixed an old bug just discovered today where expressions like
(x - y)*(x^99 - y^99) were being factored into something huge
with the simplify and fraction commands, which are the only
commands that do polynomial factoring.
Improved coloring scheme: all prompt and normal text is now the
terminal emulator's default color for text (usually uncolored).
Expressions remain colored if color mode is enabled. Thanks to
Carl U. Grayser for the good idea.
Improved the fraction command by factoring polynomials first.
Specifying the "numerator" and "denominator" options together
will make the fraction command return with failure if the result
is not a fraction, otherwise the entire fraction is returned.
Changes in Mathomatic version 15.5.3:
------------------------------------
Simplify expressions with positive bases like 16^(x/2) and (2^m)^n by default;
previously only simplified these with the "simplify symbolic" command.
The exit status of Mathomatic now shows any errors when run with the
-e option. So if a command fails, it exits to the OS with the exit
status 1. Exit status is 0 if everything went OK. Also works without
the -e option, when files are specified on the shell command line.
An error will abort the script, returning you to the operating system
with an exit status of 1.
Changed makefile to allow installing m4 Mathomatic without installing
the documentation. Use "sudo make bininstall matho-rmath-install" to
install m4 Mathomatic executables and man pages.
Then "sudo make docinstall" installs all documentation.
The rmath man page math function and constant lists have been corrected
and the rmath man page has been added to the main user documentation.
Output of universal constants is now prettier when displaying. No
more i#, e#, and pi#, they are displayed as they are entered: i, e,
and pi. HTML mode displays the small Greek letter pi for pi.
The nintegrate command now works with complex numbers and trigonometry,
and does not change the current equation to the result.
Link the man page rmath.1 to matho.1 when installing, so that every
executable has a man page.
Added "numerator" and "denominator" options to the fraction command,
which returns only the numerator or denominator after making sure the
expression is a simple algebraic fraction.
Autocalc now deletes only the previous autocalc when autocalc is used.
It was deleting all autocalc results except for the current one every
time, preventing copying.
Improved simplification of expressions like (x + (2^(1/2)))^{3,4,5,6}.
It broke a while back when factor_times() constant factoring was
improved. The fix uses factor_times() less, preserving reduced surds.
Saving "plot_prefix" with the "set save" command was not escaping
semicolons, so they were disappearing from the prefix. Fixed now.
Changes in Mathomatic version 15.5.2:
------------------------------------
Renamed the "factorial" directory to "examples".
Fixed entering negative odd roots like (-32)^(1/3) to not approximate,
instead simplifying to -2*4^(1/3). So all surds are preserved, now.
Added man pages for the Mathomatic Symbolic Math Library functions.
Allow building a PDF book of all Mathomatic man pages.
Simplify command simplification sped up even more, by putting algebraic
fraction reduction in the right place and not overusing it.
Responsiveness has greatly improved for large expressions. Thanks go
to Kingsley G. Morse Jr. for help with this and for filing a bug report.
The simplify command functionality was improved. It was fixed to
not mess up with unwanted fractional coefficients.
Changes in Mathomatic version 15.5.1:
------------------------------------
Many minor cleanups and corrections were made.
Renamed Mathomatic User's Manual to Official Mathomatic User Guide.
Calculate command now outputs fewer newlines. Not so much blank space.
Allow equation-number-ranges on the plot command line. For example,
"plot all" works now, to plot all stored equations and expressions
at once, for easy comparison.
Changes in Mathomatic version 15.5.0:
------------------------------------
Fixed result of (constant % inf) to equal constant.
Restored explicitly linking with ncurses library when compiled
with readline, because Red Hat Linux wrongly requires this.
There is no way to know ahead of time whether this is needed, so
remove the "-lncurses" from the makefile if there is a problem
linking.
Upgraded set option "fractions_display_mode" to display fractions
as mixed fractions when possible, when set to mode 2. A mixed
fraction is possible when the numerator of a simple fraction is
greater than the denominator, like 9/4, which displays as (2+(1/4))
in mixed fraction display mode 2. Mode 1 is the default, which
functions as before, displaying 2.25 as the simple fraction 9/4.
To display mixed fractions only on command, just type "display mixed"
to display the current expression with mixed fractions output
that one time.
Autocalc (used when typing a numerical only expression at the main
prompt) now keeps the result until next time autocalc is used,
so that it can be acted on further by Mathomatic commands, if desired.
All previous autocalc results are erased every time autocalc is used.
This provides much better calculator functionality for Mathomatic
and improves ease-of-use.
Use HTML infinity symbol (∞) for infinities in HTML output mode.
Allow solid fraction bar display in HTML output mode by using "–".
Previously the ASCII dash character "-" was used, making a dashed line
that separated the numerator and denominator of fractions. Now the line
should be solid in HTML output mode.
Improved divide command for numerical division. Added mixed fractions
and cleaned up output.
Ported matho-primes to MS-Windows and included it in the Windows
version on my website: "http://mathomatic.org/winam2.zip".
The fraction command is now repeatable by preceding it with "repeat".
This repeatedly runs it until the smallest expression is achieved.
Simplification was sped up, especially with "simplify quick", therefore
differentiating and the Taylor command are faster.
Removed the requirement for the Unix "time" command with m4 Mathomatic.
Allow array variable refs like a[2] or a[1][2] when generating C code.
Just "set special []" to allow straight brackets in variable names.
Another ease-of-use enhancement was implemented, making it possible to
use "#equation-number" anywhere in any expression, it will insert the
expression at that equation number. This is an improvement that should
have been done long ago. However, don't expect it to work with the
plot command, "plot #1" does not work because the argument to plot is a
string and/or the current equation. For example, typing things like
"y=#1^2" is a convenient way to raise the expression in equation space
number 1 to the power of 2 and set it equal to y, or whatever you wish.
Changes in Mathomatic version 15.4.4:
------------------------------------
Many minor but obnoxious bugs were fixed.
Fixed result of constant modulo 0 (e.g. 9 % 0) and infinity modulo
constant (e.g. inf % 9) to be NaN.
Disabled shelling out and the edit command only in m4 Mathomatic.
The terminal hung when shelling out or editing with an m4 front-end.
Plotting still works and pagination is working now for m4 Mathomatic.
Cleaned up tests/quartic.in, it now works without m4 Mathomatic, and is
a single formula to solve most fourth degree polynomial equations.
Created a nice man page for rmath and matho (rmath.1).
Changes in Mathomatic version 15.4.3:
------------------------------------
Fixed negate priority to be the same as TIMES/DIVIDE like Maxima (yay!).
So now entering -x^2 is meaningful. Previously negate was the highest
priority (high precedence) operator. Entering -2^2 now results in -4
instead of 4, as in most other mathematics programs (except for pure
calculators like bc).
Flush standard output before reading a line of input from the user
when not using readline, so that the MinGW version works with mintty.
Added a new "for" command, for plugging in sequential values into a
variable in the current expression and displaying the results.
The syntax is the same as the sum and product commands.
Changes in Mathomatic version 15.4.1:
------------------------------------
Upgraded the plot command towards always giving gnuplot a proper plot command,
no matter what the user input is. The plot command now automatically renames the
variable in a single variable expression to the x variable, so plotting
will always succeed.
Removed Python script "misc/mp"; Couldn't get mpmath to work properly for
all input.
Improved results of the fraction command.
Now saving readline history in $HOME/mathomatic_history when compiled for CygWin.
Now additionally searching for "mathomatic.rc" in $HOME when compiled for CygWin.
Ported matho-pascal and matho-primes to double floats if USE_DOUBLES is defined,
for systems that don't support long double floats.
Changes in Mathomatic version 15.4.0:
------------------------------------
Added "compare approximate" command option, use of which is more likely to
result in a successful comparison. Runs the approximate command on
both expressions before comparing, if needed.
The variables command syntax was upgraded to be the same as the code command.
Added code to delete identities in the optimize command. When identical
equations were optimized, identities would result. These are now removed.
Fixed incorrect syntax in the menu files in menu directory.
Added "tests/quartic.in". At last, a working set of equations for calculating
the four solutions of any quartic equation, similar to "tests/cubic.in".
Fixed parser routine to give a helpful error message when a cursor or function key
string is encountered. Escape, carriage return, and form-feed are ignored now.
Changes in Mathomatic version 15.3.7:
------------------------------------
Fixed the modulus operator (%) to always evaluate to an integer when
both arguments are integer.
7921%14 was giving 11.000000000001, now gives exactly 11.
Equation number ranges for commands may include unallocated equation
spaces now, allowing entry of any reasonable range.
Changes in Mathomatic version 15.3.6:
------------------------------------
Many minor fixes for consistency and helpfulness were made.
Cleaned up "factor numbers" command for consistency in operation and to
work as documented.
Warn when substituting a non-integer expression into an integer variable.
Added m4/degrees.m4, this can be read into rmath with "rmath degrees.m4"
to use degree units instead of radians for trig functions.
"sudo make m4install-degrees" installs degree mode as the default for
matho and rmath by appending m4/degrees.m4 to m4/functions.m4.
Allow input of #equation-number as the LHS or RHS of any equation. It is
replaced with the expression or RHS at the specified equation-number.
Note that #equation-number is also the current equation selector, so entering
it as the LHS at the main prompt will function differently.
Simplify (integer % 1) and the like to 0. Generalized to instantly simplify
to 0 the following: (integer_expression % +/-unit_fraction).
Changes in Mathomatic version 15.3.4:
------------------------------------
Fixed an error reporting bug in the solve command.
There was the possibility of spewed space characters with improper input.
Added code so that solving for 0^2 or variable^2 will properly square both
sides of an equation. Solving for variable^2 will isolate the square root of
the largest expression containing that variable, and then square both sides of
the equation. Works for any power and variable with any equation with roots.
Changes in Mathomatic version 15.3.3:
------------------------------------
Fixed -e option to be more like entering what follows into the main prompt;
That is, the autosolve option is left on and errors do not abort.
"set finance" option now groups output with thousands' grouping characters
if the locale information indicates any. For example: 2,000,000.00
Changes in Mathomatic version 15.3.2:
------------------------------------
Added "help options" command which lists invocation options (like -h).
Entering "nan" now gives a warning, instead of an error,
so that expressions containing NaN can be read back in without aborting.
Added "-c count" option to matho-primes, optionally limiting the number
of lines of primes that are output to "count" lines.
Fixed an old, important bug in the Mathomatic solve routine, where solve was
failing on some easy to solve equations indeterminately, because of
incorrect infinite loop detection code. Solving should work perfectly now.
This problem was discovered today with the input: "a=a+b" "a" "b".
Changes in Mathomatic version 15.3.1:
------------------------------------
Improved the help command, allowing multiple help topics on the help
command line.
Improved upon "misc/roots.c", the automatic polynomial root finder.
Increased the maximum number of equation spaces from 100 to 200.
They do not consume memory unless they are used.
Solving things like 0=(x+1)^15+x for x exited the solve routine without grace.
This problem is now fixed for all solve requests that aborted with error.
When using the symbolic math library, the display command now outputs
all specified equation spaces in fraction format and returns the last
equation space listed as a result.
Before it was just a crippled list command with a little simplification
that didn't output anything.
Changes in Mathomatic version 15.3.0:
------------------------------------
Changed -u option to also echo line input, so that m4 Mathomatic is easier to use.
X-Windows icon for the Mathomatic entry within desktop menu systems.
The repeat command can now be shortened to 4 characters, like any other command.
Capitalized E, I, and PI are now no longer parsed as universal constants.
Entering E, I, or PI will now result in the general variables E, I, and PI,
unless "set no case" is previously entered.
This change undoes version 15.2.0 Mathematica compatibility, due to kind user feedback.
Entering e, i, or pi still gives the universal constants e#, i#, and pi#.
Removed "set negate_highest_precedence" option.
This was done for compatibility and so that less parentheses are displayed
within expressions. Polynomials should display very nicely now, powers
like "x^2", "y^3", and "x^y" are not parenthesized unless need be.
Added "list hexadecimal" command option, which displays expressions
exactly as stored internally in hexadecimal. No precision is lost,
this is because the floating point values are not converted to decimal.
Error reporting was improved.
Changes in Mathomatic version 15.2.2:
------------------------------------
Added "set plot_prefix" option, which allows custom plot functionality.
Changes in Mathomatic version 15.2.1:
------------------------------------
Added the -e option, which processes mathematical expressions and Mathomatic commands
instead of input files on the shell command line.
Improved results of solving for zero. Results should have reduced integer coefficients,
by factoring out the GCD of rational coefficients.
|
|
CHANGES MADE TO MATHOMATIC 15.2.0 TO BRING IT UP TO THE NEXT VERSION:
All makefiles were improved. Library test/example program is renamed to "testmain".
Package maintainers please take note: support for the DESTDIR environment variable was
added to the makefiles; for proper operation when packaging version 15.2.1 or higher,
please remove any patches for missing DESTDIR support.
m4 Mathomatic should work now when included in the Mathomatic package (make m4install).
Thank you for packaging Mathomatic! If I did anything wrong, please let me know.
8/26/10 - Added the -e option, which processes mathematical expressions and Mathomatic commands
instead of input files on the shell command line. For example, entering
"mathomatic -eq 2+3" gives "answer = 5". This functionality has been requested
many times by Mathomatic command line users. A complete example:
CHANGES MADE TO MATHOMATIC 15.1.6 TO BRING IT UP TO THE NEXT VERSION:
Minor improvements were made to the user documentation.
8/22/10 - Removed "Complex number roots approximated" warning message, since this happens often.
Capitalized E, I, PI, and Pi are now accepted as the universal constants e, i, and pi,
without needing to enter "set no case". This allows Mathomatic to easily
accept Mathematica style expression input.
m4 Mathomatic now additionally accepts Mathematica style capitalized function input.
matho and rmath now display elapsed, CPU, and system times in seconds upon exit.
8/23/10 - Fixed #equation-number entry at the main prompt to always work and allow an expression
or equation following on the same line to be entered at that equation space.
For example: "#10 y=1/x" will work now;
previously only worked if equation space number 10 was previously allocated and used.
The way it works is: all equation spaces up to and including number 10 are allocated,
if not already allocated, upon entry of "#10".
Equations spaces are allocated with the memory allocator malloc(3).
CHANGES MADE TO MATHOMATIC 15.1.5 TO BRING IT UP TO THE NEXT VERSION:
7/26/10 - Disabled ncurses call for auto-color detection when CYGWIN is defined while
compiling the source code, due to a reported problem of readline failing with
ncurses in Cygwin.
7/28/10 - Disabled readline history save file for the Cygwin port,
because it is a filename that starts with a period.
7/31/10 - Added "set fractions_display" option, to allow disabling the automatic conversion of
fractions like .5 to 1/2 for display.
Developer requested and useful in the symbolic math library,
when numerical fraction output isn't wanted.
8/01/10 - Fixed a memory leak when ignoring the output string in the symbolic math library.
8/04/10 - Preserve overflowed powers like 2^2222 rather than aborting with an error message.
Allow simplification of math like 2*2^2222 and 2/2^2222.
8/08/10 - matho-primes runs twice as fast with the -ffast-math gcc compilation option,
which is now enabled by default. Don't try -ffast-math with the main Mathomatic
program though, because then Mathomatic won't work properly.
CHANGES MADE TO MATHOMATIC 15.1.4 TO BRING IT UP TO THE NEXT VERSION:
Many minor tweaks and improvements.
7/03/10 - Makefiles and compile scripts were corrected and enhanced
per http://www.gnu.org/prep/standards/
7/06/10 - Changed all "#if true" and "#if false" conditional commenting to "#if 1" and "#if 0"
in the C source code, thanks to Min Sik Kim of NetBSD pkgsrc.
CHANGES MADE TO MATHOMATIC 15.1.3 TO BRING IT UP TO THE NEXT VERSION:
All of the Unix man pages and user manuals for Mathomatic were fixed.
The compare and "solve verify" commands now simplify more thoroughly with "repeat simplify"
for better expression equality determination.
6/17/10 - Greatly improved file operation error reporting by using the perror(3) function.
6/18/10 - Fixed categories in "icons/mathomatic.desktop";
Mathomatic now goes under valid categories, mainly Education.
CHANGES MADE TO MATHOMATIC 15.1.2 TO BRING IT UP TO THE NEXT VERSION:
6/6/10 - I made mistakes in the improvement to the simplify command of version 15.1.2,
the original working simplify logic of version 15.1.1 is now restored, sorry.
CHANGES MADE TO MATHOMATIC 15.1.1 TO BRING IT UP TO THE NEXT VERSION:
A general cleanup was done.
A small improvement was made to the final result of the simplify and fraction commands.
Showing intermediate results in the calculate, sum, and product commands is now done with "set debug 1".
5/28/10 - Added "tests/collatz.in", the Collatz conjecture as an automatically computable equation.
CHANGES MADE TO MATHOMATIC 15.1.0 TO BRING IT UP TO THE NEXT VERSION:
Code and documentation cleanup.
5/21/10 - Added "primes/matho-sum", a utility that sums its command line arguments or standard input.
Use "matho-primes 0 2000000 | matho-sum" to find the sum of all primes less than 2,000,000.
Solves Project Euler problem #10: http://projecteuler.net/index.php?section=problems&id=10
5/23/10 - Primes (') are allowed in variable names now, if not using the symbolic math library, so that the
derivative, integrate, and nintegrate commands can change the dependent variable to y', y'', etc.
This can be turned on in the symbolic math library by the command "set special_variable_characters='".
Non-alphanumeric characters in variable names are now converted to underline characters (_)
when exporting to a programming language or to a different program.
CHANGES MADE TO MATHOMATIC 15.0.8 TO BRING IT UP TO THE NEXT VERSION:
5/10/10 - Added "help constants" command.
5/11/10 - Integer variables are now specified by using a variable name that starts with "integer",
like "integer1", "integer_x", etc. Currently only the modulus operator "%" checks
for integer variables, to help with simplification.
5/12/10 - Corrected the output string type of the symbolic math library API. It was erroneously declared
as type "const", possibly causing a memory leak.
5/13/10 - Moved and adapted "makefile.lib" to "lib/makefile", so the symbolic math library build is isolated.
Previously "make clean" was required between different builds. All makefiles require GNU make now.
CHANGES MADE TO MATHOMATIC 15.0.7 TO BRING IT UP TO THE NEXT VERSION:
4/26/10 - Allow "make pdf" to generate PDF documentation from the HTML documentation with htmldoc.
Please read the comments in the makefile for all available options.
4/29/10 - For every makefile, CFLAGS has been modified to include OPTFLAGS as required by the Fedora Linux
build system, and OPTFLAGS defaults to the optional gcc specific flags like optimization.
In the symbolic math library, made available the equation number of the result of calling the API,
if also stored in an equation space. The result equation number is stored in the global "result_en".
Useful if you want to know where the result was stored, to act on it with further commands.
CHANGES MADE TO MATHOMATIC 15.0.6 TO BRING IT UP TO THE NEXT VERSION:
Corrections and improvements to the documentation were made.
4/3/10 - Vastly improved the "factor number" user interface, now factors integer expressions like 2^32-1.
"factor number" is disabled in library mode.
4/13/10 - The real and imaginary commands no longer fail when the expression is not complex,
just a warning is given.
4/14/10 - Changed normal display of "-1*" to "-", for prettier 2D expression output,
so things like "-a" display properly, not as "-1*a".
CHANGES MADE TO MATHOMATIC 15.0.5:
1/28/10 - Added a Python utility called "primorial" to the Prime Number Tools install
that multiplies together the results of matho-primes, displaying the primorials
of the integers given on the command line.
3/18/10 - Changed author email address to "gesslein@linux.com".
3/23/10 - Catch SIGHUP and SIGTERM signals for proper termination of the Mathomatic program;
readline was messing up when Mathomatic was terminated by closing the shell window.
The plot command now always plots expressions with grid marks displayed for reference.
CHANGES MADE TO MATHOMATIC 15.0.4:
1/21/10 - In the makefile, changed the HTML man page generator back to rman because
groff HTML output looks really bad and rman allows linking to other man pages.
groff is no longer used.
1/24/10 - Fixed "make m4install", the installed rmath and matho programs weren't working.
1/27/10 - Added GNU LGPL license notices to every C source file with a copyright notice,
for proper protections.
CHANGES MADE TO MATHOMATIC 15.0.3:
1/9/10 - Fixed a problem only in the version 15.0.3 makefile, where it didn't respect
the CC environment variable set by the user, instead it always used "gcc"
as the C compiler.
CHANGES MADE TO MATHOMATIC 15.0.2:
12/27/09 - Moved get_screen_size() from main.c to am.c because it is used in the library when
compile-time options UNIX or CYGWIN are defined.
Thanks to Cygwin port maintainer Reini Urban for noticing and fixing this problem.
Defining UNIX or CYGWIN in library mode is not recommended.
12/31/09 - Added code to allow any command to be preceded by "repeat", which sets the
repeat flag for the following command. Most commands ignore the repeat flag.
1/1/10 - Ported divide and roots commands to be repeatable. Also repeatable are the
calculate and eliminate commands.
1/2/10 - Allow Taylor series computation even if the specified differentiation variable
is not found in the expression, giving a warning.
Ported simplify command to be a repeatable full simplify; that is, typing
"repeat simplify" repeatedly runs the simplify command until the result stabilizes
to the smallest size expression.
1/7/10 - Thanks to pretty C code submitted by Simon Geard,
the code and variables commands have been made much more readable.
1/8/10 - Made Mathomatic easier to compile under Solaris, thanks to Michael Pogue of Sun.
Fixed failure to compile under BSD Unix when compiling with readline support.
CHANGES MADE TO MATHOMATIC 15.0.1:
12/19/09 - The last few versions fix the ugliness caused by the GCD factoring change made on 6/22/09.
Today's change factors out the numerical GCD of rational coefficients as needed to simplify.
Most simplification results should be beautiful and the simplest possible again now,
without the misleading observed magnitude caused by always factoring out the GCD,
which was why the change of 6/22/09 was made.
CHANGES MADE TO MATHOMATIC 15.0.0:
12/12/09 - Fixed a problem with the -q (quiet mode) option being ignored if the session options
were ever saved with the "set save" command.
12/13/09 - Added code to allow Mathomatic output to be redirected by default.
Fixed the derivative command to be successful even when the result is 0,
when compiled as a library.
12/14/09 - Added ability to log symbolic math library results, and made command behavior
more consistent in the library by always returning the final result string.
12/16/09 - The factor command now factors more by factoring out the GCD of rational coefficients.
CHANGES MADE TO MATHOMATIC 14.6.3 TO BRING IT UP TO 15.0.0:
Cleanup and more bug fixes.
11/26/09 - Added detection of the terminal's ANSI color availability, when readline is enabled.
11/28/09 - Added detection of divide by zero and NaN when using the "solve verify" command,
for more correct results.
Solving now factors out the GCD of rational coefficients, for improved results.
The fixes today are from errors solving equations like (2*x/(x - 3)) + 3 = 6/(x - 3)
11/29/09 - Disallow the variable named "nan". NaN cannot be directly entered into Mathomatic.
11/30/09 - Added shell scripts "t" and "tests/t" to easily test Mathomatic by typing "./t".
12/2/09 - The fraction command now factors out the GCD of rational coefficients like the
solve command does, so that coefficients in algebraic fractions become integers.
The GCD verifying routine was perfected by making it very strict, like it should be.
|
|
Important changes since 14.4.4:
- General cleanup and addition of helpful descriptive text.
- Cleanup and major bug fixes.
- Enhanced code for use with iPhone.
- Minor corrections and additions to the code and documentation.
|
|
|
|
Changes since 14.3.6:
- Perfected the user interface for the sum, product, and integrate
commands.
- Restored initial full simplify in the limit command for better
results, that was unintentionally removed in version 14.1.0.
- Fixed an endless loop in simplification; results look better, too.
- Added "set save" command, which makes all current session options
permanent, by saving them in "~/.mathomaticrc". "set no save"
removes this file.
- Added "mathomatic -s" option, which stands for secure mode. This is
a run-time option that disallows shelling out and writing files, and
was created for use on public servers that can't use the SECURE
compile-time define.
- Doubled the default maximum mathematical expression size to allow
larger expressions.
- A fatal compilation error when compiling with defines other than
UNIX was fixed.
- Slight improvement made to simplification; results are more simple
and stable.
- The maximum integer that can be factored has been raised from 14 to
15 decimal digits.
- Small fix made to fraction command and "simplify fraction" for
better looking fractions.
- Added a "simplify quickest" command option, which does no
unfactoring nor factoring.
- Made full simplification more efficient and simpler by cutting out
unnecessary loops.
- Improved the divide command and enabled its use in the symbolic math
library. Enabled code and variables commands in library, too.
Currently, library output of these 3 commands can only be gathered
by redirecting to a file.
- Added "set autoselect" and "set auto" options. Use "set no auto" to
always store entered expressions into equation spaces, unless it is
a command.
|
|
major change.
Reported by Robert Elz in PR 41345.
|
|
Changes since 14.2.7:
12/23/08 - Simplified makefile.
12/26/08 - Fixed rules for simplifying "(x^n)^m" so "misc/john.in" and
others simplify better. Works similar to Maxima now.
12/27/08 - Numeric GCD now properly returns the other parameter, if
either parameter is 0. Renamed "misc/polyroots.c" to
"misc/roots.c" and simplified this example code.
12/30/08 - Added "update" script, which updates the function
prototypes in "cproto.h".
1/1/09 - Optionally factor out the gcd of integer coefficients when
improving readability, for example: 6x+4y becomes 2*((3*x) +
(2*y)). This is now the default.
1/13/09 - Added descriptions of all interesting math scripts in
"tests/README.txt".
1/16/09 - Allow nintegrate and "integrate definite" commands in the
symbolic math library; the bounds are specified in the two
equation spaces following the current equation.
1/18/09 - Made expression and equation entry always consecutively
numbered equation spaces, unless memory is exhausted.
1/19/09 - Made consistent list command output with only one newline
after each equation space.
1/21/09 - Fixed erroneous doubling of parentheses display when solving
and showing steps with "set debug 2".
1/22/09 - Added -b option, to conveniently set bold color mode from
the command line.
1/25/09 - Improved looks of eliminate command by not solving if
equation is already solved.
2/3/09 - Table of contents was added to the Mathomatic User's Manual.
2/5/09 - Added display of any numerical fractions when calculating or
using calculate command; for example, entering "1/2+3/8" now
results in "answer = 0.875 = 7/8".
2/6/09 - Removed erroneous lsqrt() routine obtained from Wikipedia, so
that matho-sumsq works properly now.
2/7/09 - Disable pause command when appropriate (when input not a tty
and for symbolic math library).
2/8/09 - Polished up educational example scripts in "tests" directory.
2/11/09 - Entry of a function now results in "Named functions
currently not implemented" error message.
2/12/09 - Bugfix to matho-primes and added "misc/limits.c".
2/15/09 - The fraction command was fixed to give better results. "set
display2d" flag now no longer affects any results at all, it
only affects 2D output mode.
2/17/09 - Renamed -h (HTML) option to -x, -h is now the help option.
Added -w option to set wide output mode.
3/9/09 - Found the correct formulas for solving the general cubic
equation on Wikipedia, so "tests/cubic.in" always gives
correct answers now.
3/12/09 - Tweak made to simplify result beautifier: factoring priority
only given to real variables now, special constant variables
pi#, e#, and i# have no effect and behave like any constant
now.
3/15/09 - Corrected and improved parse_complex() C function for more
complex number functionality and a bug fix.
3/18/09 - Added "set negate_highest_precedence" option, which allows
the negate operator to be the lower precedence of times and
divide, like it is in Maxima and most other math programs.
3/24/09 - Made "set no autosolve" mode more useful by making it solve
if a solve variable is entered with an equals sign. This
allows easy entry of both single variable expressions (with
no =) and solve variables (with =) while in this mode.
3/27/09 - Selecting equations by entering the equation number was
returning with error if the equation space was empty.
Fixed, you can now select any previously allocated equation
space.
|
|
Numerous improvements since 14.0.5. See
http://mathomatic.orgserve.de/changes.txt for the complete list of changes.
|
|
Major changes since 12.8.0:
- Improved the "solve verify" command option.
- Added "derivative nosimplify" command option.
- Added "simplify sign" command option.
- More correct simplification restriction added.
- Disallow variable name "all" in expressions.
- Turned off readline file name completion.
- Implemented integral divide operator "//".
|
|
their files via a custom do-install target.
|
|
Changes since 12.7.7:
10/10/07 - Proper error reporting for shelling out (! command).
10/12/07 - Created directory "m4" to play with using m4 to allow easily
entering functions through macros.
10/14/07 - Improved "set dir" to display the new current directory and to
default to the home directory.
10/17/07 - Entering "=" by itself now swaps equation sides instead of doing
nothing.
10/18/07 - New "mathomatic.ico" file with transparent background.
10/21/07 - Increased speed of taylor command up to 3 times by not doing an
unnecessary simplification.
Added "tests/distance.in".
10/22/07 - Fixed a small problem in calculate command, allowing instant
calculation of (2+2i)^99 now.
Entering any power of any complex number should work now.
10/29/07 - Solving now reports what degree polynomial the equation is.
11/12/07 - Fixed 3 bugs in optimize command.
11/16/07 - Fixed another bug in optimize command.
|
|
Changes:
- Stabilized simplify command.
|
|
Changes since 12.7.2:
Improved documentation.
Added display of maximum memory usage to version command.
Allow read command in the Mathomatic library and fixed memory leak with it.
Added echo command per a user's request.
Improved factoring out constants, to make all coefficients reduced integers by
factoring out their gcd.
Added gcd_verified() function, to weed out false floating point gcds.
Made limit command say whether it is substituting or solving.
Added "mathomatic.desktop" and "mathomatic.png", which are the desktop and
icon files for Linux.
Minor code, documentation, and makefile improvements.
Added "tests/quartic.in" and fixed incomplete simplification in the calculate
command.
Allow upper case when parsing infinity constant name "inf", required by CygWin
version and maybe others.
The makefiles no longer strip the created executables.
Reordered source code so many functions can be defined returning "void" (which
means no return value).
Added "tests/how_limit_works.in" tutorial and restored "doc/notes.html".
Testing change to only one kind of partial unfactoring (partial_flag =
true/false, default true), completely distinct from full unfactoring. Used
throughout, let me know if this breaks anything.
Added "simplify fraction" option, which simplifies like Maxima's ratsimp().
|
|
Changes:
- Added order parameter to extrema command, which specifies the number of
derivatives to take.
- Renamed flist command to "display".
|
|
Changes:
- Remove GPL preamble in "primes/*.c", so everything is LGPL.
- Allow entering "e#" and "i#" as "e" and "i". Display "e", "i", and "pi" as
"e#", "i#", and "pi#".
- Require a space between command and command line, so variables don't get
confused with commands. This is a bug fix.
- Added a directory named "hard_stuff".
- Fixed error in "tests/finance.in".
|
|
|
|
Bump PKGREVISION.
|
|
Changes since 12.6.8:
12/16/06 - Add "set special_variable_character" option.
12/26/06 - Comment makefiles and add "INSTALL.txt" for first-time users.
12/31/06 - Add "primes/primorial" Python program.
2/10/07 - "make install" wasn't working - fixed.
2/24/07 - Allow calculating large powers of complex numbers at the prompt,
like (i#+1)^99.
3/06/07 - Display which color mode is in effect on startup of Mathomatic.
3/08/07 - Some minor interface improvements to the taylor command.
3/31/07 - Corrected limit command for infinity limits.
4/3/07 - Updated root "README.txt" and created "tests/limits.in".
|
|
INSTALLATION_DIRS, as well as all occurrences of ${PREFIX}/man with
${PREFIX}/${PKGMANDIR}.
Fixes PR 35265, although I did not use the patch provided therein.
|
|
Changes:
- Add "set autocalc" option.
- Fix limit command so it fails instead of giving wrong answers.
|
|
Changes since 12.6.3:
Fix sign bug for negative factorials (gamma function).
Improve user interface of solve command.
Add alternate command syntax for sum and product commands.
Add "-r" option, which disables readline input processing.
Fix optimize command.
Documentation changes.
|
|
Changes since 12.6.1:
8/20/06 - Fixed many very minor bugs. Added variable display precision.
8/21/06 - Display single digit primes when using "matho-primes pal".
8/24/06 - Increase display precision from 12 to 14 decimal digits.
8/27/06 - Added some tiny python programs: "fact/factorial" and "primes/mult".
8/31/06 - Add alternate command name "display" to flist command.
9/04/06 - Improve eliminate command by allowing "eliminate all all ..." to
eliminate all variables two or more times.
|
|
|
|
Major changes:
- Added alternate command names.
- Don't allow imaginary numbers in integer only expressions.
- Made poly_gcd_simp() do its job in one pass.
- Add "set autosolve" option.
- Make entry of "=(expression)" into "0=(expression)", instead of being an
error.
- Add fraction command.
- Made simplification default to polynomial simplify.
- "replace constants" command now approximates constants with roots.
- Fixed a floating point accuracy issue recently introduced.
- Other bug fixes and improvements.
|
|
Changes:
6/18/06 - Made entering "a=b=c" give an error, instead of just ignoring "c".
6/18/06 - Made "inf" an invalid variable, should be a constant only.
6/18/06 - Improved prompting for a variable.
6/18/06 - Mathomatic now properly removes all trailing spaces from input.
6/21/06 - Beautified the Mathomatic manuals.
6/23/06 - Remove semicolon from output of "code python" command.
6/27/06 - Add "tests/trig.in" to the tests.
6/29/06 - Allow typing "?" as a quick way to get help.
|
|
Changes:
Fixed some gcc compiler warnings.
Code and documentation cleanup.
Removed BASICS define.
Removed all isascii() tests from the source code.
|
|
Changes since 12.5.15:
Allow curly brackets ("{}") as parentheses.
Allow all taylor command input on the command line.
Add taylor command to tests.
Added -u option (Unbuffered mode). Previously output was always unbuffered.
Fixed compilation failure with some versions of GCC, when using readline.
Made some nice changes to "gcd.c".
Added "solve" as a command.
Adjust copyright dates and file comments in all source files.
Fix display of -0 (now displays as 0).
Restore matho-sumsq to Prime Number Tools.
|
|
Changes:
- Excess variables cleanup of taylor command.
- Changed argument of push command from an equation number to an equation
number range.
- Added easy selection of equation spaces, just type the number at the
prompt.
- Allow flist command when Mathomatic is compiled as a library.
|
|
Changes:
A number of minor changes.
Fixes and improvements to the Mathomatic Command Reference.
Upgraded clear and set commands to accept more than one argument.
Gave real and imaginary commands a useful argument.
Fixed a sloppiness in command line parsing in function get_range().
Code cleanup.
|
|
Changes:
Improved matho-primes by making primes buffer variable size.
Added "set factor_integers" option.
Removed "simplify poly" option, it was rarely useful.
Code cleanup, commenting, and speed optimization.
Improved simplification, added the fixed problem ("tests/linear.in") to the tests.
|
|
RECOMMENDED is removed. It becomes ABI_DEPENDS.
BUILDLINK_RECOMMENDED.foo becomes BUILDLINK_ABI_DEPENDS.foo.
BUILDLINK_DEPENDS.foo becomes BUILDLINK_API_DEPENDS.foo.
BUILDLINK_DEPENDS does not change.
IGNORE_RECOMMENDED (which defaulted to "no") becomes USE_ABI_DEPENDS
which defaults to "yes".
Added to obsolete.mk checking for IGNORE_RECOMMENDED.
I did not manually go through and fix any aesthetic tab/spacing issues.
I have tested the above patch on DragonFly building and packaging
subversion and pkglint and their many dependencies.
I have also tested USE_ABI_DEPENDS=no on my NetBSD workstation (where I
have used IGNORE_RECOMMENDED for a long time). I have been an active user
of IGNORE_RECOMMENDED since it was available.
As suggested, I removed the documentation sentences suggesting bumping for
"security" issues.
As discussed on tech-pkg.
I will commit to revbump, pkglint, pkg_install, createbuildlink separately.
Note that if you use wip, it will fail! I will commit to pkgsrc-wip
later (within day).
|
|
Changes:
- Documentation improvements.
- Updated command description text in help command.
- Converted many functions to inline that are only used once and should be
inline.
- Code cleanup.
|
|
Changes:
- "matho-primes pal" wasn't working, fixed.
- Improved the "Equation not defined" error message for new users.
- Worked on matho-primes program.
- Automatically determine the variable if none is specified
with the extrema command.
- Code cleanup.
- Helped simplification of complex exponentials.
- Parse things like "2 2" as "2*2", instead of giving a syntax error.
The default operator is always times.
|
|
Changes since 12.5.8:
- Bug fix for nintegrate command. Result was correct but not fully reduced.
- Added "twin" option to "primes/matho-primes", removed "primes/matho-twin".
- Automatically determine the variable if none is specified
with the derivative and taylor commands.
- Increased the maximum variable length to 1000 characters.
|
|
Changes:
- Doubled the default max expression size. Display current size on
startup.
- Made solve_sub() return -1 for an identity.
- Speedup of the simplify command.
|
|
Changes:
- Fixed compatibility problem with "list export" and "list maxima".
- Added "tests/conversions.in".
- Made "code integer" command work with more languages than C and Java.
- Added "code python" command option.
- Added "fact/fact.c" and "fact/fact.py", which are factorial functions.
- Completed "help geometry" page.
|
|
Changes:
- Added "doc/manpage.html", which is the man page for Mathomatic
generated with "groff -Thtml -man".
- Made sure all HTML files have the extension ".html".
- Made sure we can allocate at least 1 equation space on startup.
- Made entering things like "#1 a" succeed at entering a single variable
expression.
- Fix-ups to the symbolic math library.
- Increased power of limit command.
- A limit expression with infinity in it is assumed to be infinity.
|
|
Changes:
- Removed parsing of "infinity" and fixed parsing of "inf".
- Removed matho-around. Use GNU "seq | factor" instead.
- Allow "#+"number and "#-"number at main prompt, to select relative
equation numbers.
- Removed all primes (') support from variable names.
- Added version command.
- Added "-v" option.
- Split off super.c into super.c and poly.c.
- All polynomial routines are now in poly.c.
- Improved roots command and put it in tests.
- Fixed bug simplifying "a = (e# + (e#*i#))^(pi + (pi*i#))".
|
|
Changes:
- Ported matho-primes, matho-twin, and matho-pascal to long doubles.
"make test" added in "primes" directory.
- Alphabetic case sensitive mode set by default.
- Added "list maxima" option. "list export" is now for other programs.
- Code cleanup.
|
|
Changes:
- Fixed sum and product command docs and code.
- Added [hyper]trig functions.
- Documentation updates.
|
|
Changes:
- Corrected color and html mode routines.
- get_expr() now has equation space pull.
- You may now enter a "#" followed by an equation space number when
prompted for an expression.
- Ported nintegrate command to non-equations. No more commands to port.
- Made redirected output ignore screen_columns.
- Added "-q" option (quiet mode, don't display prompts).
= The Mathomatic man page was improved.
|
|
Changes:
- Made library work with constant strings passed as input to matho_process().
- Added "set bold_colors" option. Use this if equations are difficult to read.
- Removed "doc/ctips.html".
- Cleaned up and improved makefiles.
- Fixed bug in "compile.secure".
|
|
Changes:
- Perfected process() (the input processor).
- Code cleanup.
- Display polar coordinates in roots command.
- Parse "**" as "^".
- The docs were clarified.
- Increased sizes of many input buffers.
|
|
Changes:
- The C complex number library was finished and perfected (complex_lib.c).
- Yet another code cleanup.
- Added "UNIX" compile-time define to the Prime Number Tools.
- Some improvements to the Mathomatic documentation.
|
|
|
|
package.
|
|
packages. Thank you Bruce for helping with pkgsrc.
|
|
Changes:
- Created "complex.h".
- Fixed and documented "help all >filename", for quickly creating a
quick command reference.
- Fixed up and commented "main.c".
- Split off "complex.c" into "complex_lib.c" and made it an
independent complex number library.
- Added "integrate definite" command option.
- Corrected makefile install.
- Added check in nintegrate command to fail if result contains
infinity or nan.
- A few complex number improvements were made.
- Allow a text pre-processor to pipe input into Mathomatic.
|
|
Changes:
- Added display of average to tally command.
- Fixed tests.
- Fixed output redirection for some commands.
|
|
Changes:
- Fixed minor bug in real and imaginary commands.
- Fixed roots command.
- Cleaned up Prime Number Tools man pages.
- Cleaned up the Mathomatic source code.
- Corrected the Mathomatic library.
- Ported taylor command to non-equations.
|