[go: up one dir, main page]

Menu

[fb6a16]: / NEWS  Maximize  Restore  History

Download this file

318 lines (306 with data), 15.2 kB

EQC NEWS -- history of user-visible changes.  12 May 2018

Copyright (C) 2001-2018 Jan Rheinlaender
See the end for copying conditions.

Please send EQC bug reports to jrheinlaender@users.sourceforge.net
^L
Version 1.4.20
  * Avoid unnecessary conversion of numerics to floats when searching for values of expressions
  * Avoid crashes when printing non-commutative symbols, functions, vectors and matrices
  * Fix bug in ceil() and floor() functions that did not allow a parameter of 0 digits
  * Add support for GiNaC 1.7
  * Ensure that QUANTITY always reduces numbers to floating point values (which VAL does not necessarily do)
  * Add missing keywords \diff and \pdiff which immediately (partially) differentiate an expression to the given variable
  * Miscellaneous bug fixes
^L
Version 1.4.18
  * Enhance SOLVE keyword to handle matrices and linear systems
  * Enhance ifelse() function to interpret integer values (false=0, true=!false, -1=not able to evaluate)
  * Improve mindex() function for vectors
  * Add conjugate() function
  * Allow defining real and positive variables (that is, not complex, greater than zero). Currently for iMath only
  * Fix bug in printing degenerated complex numbers (where the imaginary part is zero)
  * Fix bug in the algorithm for solving quartic equations, for the case where the depressed form is biquadratic
  * Add option showlabels (currently only used by iMath)
  * Print conjugate(p) as bar{p} in imath_print context
  * Fix bug in round() function that did not allow rounding to 0 digits
  * Added function charpoly to calculate characteristic polynomial of a matrix
  * Improve CONSTDEF so that constant values do not get automatically evaluated to floats
  * Fix option suppress_units in iMath by replacing all units with 1 in the GiNaC expression before printing
  * Fix bug that did not clear the expression splitting cache in eqc::clear
^L
Version 1.4.16
  * Return real positive nth roots as the result of VAL() instead of the root on the principal branch (which is complex for negative bases)
  * Added option to control evaluation of nth roots to either real values or the principal branch value
  * Fixed bug when printing expressions with complex floating-point numbers
  * Fixed bug when printing powers of negative numbers
  * Added function det() to calculate determinants of matrices
  * Added internal function setsymprops() to allow changing symbols to vectors or matrices
  * Added internal method get_string() to access the content of a stringex object
  * Improved handling of matrices
  * Skip library equations when searching for values
  * Fix several bugs in det(), vmin() and vmax() functions
  * Improve handling of powers of differentials. Two rules for working with differentials
    - Always use DIFFERENTIATE instead of DIFFERENTIAL whenever possible, e.g. DIFFERENTIATE(f(x), x, 1) instead of DIFFERENTIAL(f(x))/DIFFERENTIAL(x)
    - When using DIFFERENTIAL, make sure that the grade in numerator and denominator match, e.g. DIFFERENTIAL(f(x), 2) = x^2 DIFFERENTIAL(x,2)
  * Add specialised printing method for factorials
^L
Version 1.4.14
  * Improve evaluation of integrals by expanding expressions first to get a
  * sum of simpler expressions
  * Added method to find precedence of an expression
  * Enabled eqc::clearall() to persist symbols across compilation runs
  * Removed version.h which was superfluous
  * Added method to dump all variables with their values and assignments
  * Enhanced ifelse() function to handle quantities (numerics plus units)
  * Added option suppress_units to suppress printing of units
  * Some enhancements to sum function: Implement differentiation. Remove
  * brackets if the argument of the function is a mul
  * Enhance unsafe simplifications to combine powers with same basis and
  * different exponents
  * Improve printing of functions with multiple arguments. Add spaces to fix
  * formatting error when subscripts are in used in the argument list.
  * Change the argument delimiter if the de
  * Improve printing of polynomials with complex coefficients
^L
Version 1.4.13
  * Print abs() without brackets around the argument (only vertical bars)
  * Handle imathprint print contecxt in func::print()
  * Completely reworked and enhanced symbolic integration for func objects
  * Fix bug in all hard-coded functions in func.cpp that introduced the LaTeX 
    names for iMath funcs
  * Removed pointless *_deriv() functions in func.cpp
  * Reworked integral support with a new class extintegral
  * Replaced \diff() function with new class differential
  * Enabled functions as integration variable for integrals
  * Moved hash functions into utils.cpp
  * Enabled hash calculation for ncsymbol objects
  * Fixed some bugs in printing.cpp
  * Print differentials nicely by matching numerators and denominators
  * Fix bugs in printing of integrals and differentials
  * Fix bugs in formatting of diff types line and dot
  * Fix bugs concerning partial differentiation
  * Added PKGBUILD file for archlinux, thanks to Cristóbal Tapia
  * Fixed bug in multiple differentiation
  * Fixed bug in func::print_diff_line()
  * Fixed printing format errors for exp() and ln()
  * Fixed printing format error for trigonometric functions unknown to Office
  * Fixed bug in printing of sums with differentials
  * Fixed bug that broke collect-common for terms that contain a differential
  * Fixed bug in evaluation of partial differentials
  * Print sums under an integral with brackets
  * Enhance the differential() function to take a second argument, the grade of the differential
  * Implemented ITERVAL keyword
  * Added functionality to return domain and range of functions
  * Avoid formatting an expression as a polynomial if the variable of the polynomial is not obvious
  * Add missing functionality to multiply two equations (multiplying LHS and RHS of each)
  * Fixed bug in printing of polynomials where last coefficient is negative
  * Added keyword EQCOLLECT
  * Fixed printing of imaginary numbers with too many brackets
  * Fixed printing format error for negative fractions
  * Added functions for direct partial differentiation of expressions and equations
  * Reject function definitions with non-symbolic arguments
  * Added option 'underflow' to control whether CLN should throw a floating point underflow exception
  * Fixed some bugs when dealing with inequalities
  * Avoid conversion from cl_N to double if possible
  * Reduce space between partial sign and symbol
  * Ignore errors like division by zero when searching for values with VAL()  
^L
Version 1.4.12
  * Fixed bug that caused problems with variables shadowed by functions with
    the same name
  * Added explanation and functions for temperature unit conversions
  * Fixed bug that crashed iMath when RHS is a func
  * Fixed bug that crashed EQC when called without arguments
  * Handle fderivative objects that might be introduced by diff()
  * Properly print exp(x) as e^x
  * Print abs() without brackets around the argument (only vertical bars)
  * Handle imathprint print contecxt in func::print()
  * Completely reworked and enhanced symbolic integration for func objects
  * Fix bug in all hard-coded functions in func.cpp that introduced the
    LaTeX names for iMath funcs
  * Removed pointless *_deriv() functions in func.cpp
  * Reworked integral support with a new class extintegral
  * Replaced \diff() function with new class differential
  * Enabled functions as integration variable for integrals
  * Moved hash functions into utils.cpp
  * Enabled hash calculation for ncsymbol objects
  * Fixed some bugs in printing.cpp
  * Print differentials nicely by matching numerators and denominators
^L
Version 1.4.11
  * Fixed bug in eqc-tour.tex
  * Fixed some stuff found by cppcheck
  * Replaced deprecated YYPARSE_PARAM with %parse-param
^L
Version 1.4.10
  * Fixed bug that mixed ln and log when used with iMath
  * Allow argument lists in \usepackage options
  * Fixed bug that did not print the '%' sign as a unit in iMath
  * Integrated imathprint code and fixed some bugs in it as well
  * Fixed bug that always printed the imaginary unit in brackets
  * Fixed bug when printing adds with all negative components in iMath
  * Fixed bug that sometimes printed real numbers in brackets
  * Removed all throw() specifications from function definitions
^L
Version 1.4.9
  * Fixed bug that ignored user formatting (option eqraw) for \constant
^L
Version 1.4.8
  * Fixed bug for operator* which refused to multiply expression with zero
  * Fixed bug for \integral which tried to raw-print it
^L
Version 1.4.7
  * Fixed bug where the RHS of "x = [m]^3" was not recognized as a quantity
^L
Version 1.4.6
  * Added string data type
  * Added "exponent" option to set a fixed exponent for printing floats
  * Added vmin and vmax functions
^L
Version 1.4.5
  * Reworked eqraw formatting completely
  * Parse unicode superscripts, subscripts and fraction characters
  * Minor changes for iMath 2.0.0

Version 1.4.4
  * Rebuilt for libginac2
^L
Version 1.4.3
  * Better matrix support
  * Output file cleaning with option cleancomments
  * Controlling debug output with option debug
  * Switching between \tg and \tan with option tan_is_tg
  * Unicode support
^L
Version 1.4.2
  * Minor changes
^L
Version 1.4.1
  * Minor changes
  * Changed class Unit to use a factory for creating Unit objects
^L
Version 1.4.0
  * Split code into libeqc and the eqc program
^L
Version 1.3.1
  * Removed most globals to make linking as a shared library easier
  * Added support for symbolic integrals
  * Upgraded to use libginac1.5
^L
Version 1.3.0
  * Added support for matrices
^L
Version 1.2.1
  * Upgrade to use libginac1.4 and libcln5         
^L
Version 1.2.0
  *  Minor bug fixes.
  * Any equations that do not have a user-defined label are not
    considered any more for finding values, except if they are a direct
    assignment to a symbol.
  * Added keywords \valwith, quantitywith, numvalwith and unitswith.
  * Some beautification for the LaTeX printing routine output.
  * Added simplification type gather-sqrt to combine single
    square roots into one root symbol.
  * Added option eqsplit and eqsplittext to split a
    long equation at a given operator.
  * Added option vecautosize to automatically size a vector
    (if the step count is given as 0).
  * Switched to using pkg-config instead of AM_PATH_GINAC, as
    required by ginac >= 1.3.7
^L
Version 1.1.0
  * Minor bug squashes
  * Added keywords ceil and \floor.
  * In equations, i is now recognized as the imaginary unit (square root of -1).
  * Sorted out some autoconf/automake problems and updated the documentation. 
    Cross-compiling to Windows now works with the configure/make commands (see that
    section for details).
  * \eqsolve now handles problems with denominators not equal to one.
  *  Added command-line parsing of options for unix version (see eqc --help)
  * Combined all option keywords into the common syntax \eqcoptions {'key' = 'val'}
  * Automatic aligning of equations (formerly eqautoalign) is now always on. It can be
    overriden by specifying a certain alignment type, e.g. \eq[eqalign=none]{...}.
^L
Version 1.0.0
  * First production release

  * Vectors can now be created with the syntax begin:end:step.
  * Port to gcc3.3.
  * Added wildcard function wild().
  * Made differentiation of functions work and print better.
  * Added keyword \diff to create derivatives. They can be evaluated (that
    is, the derivative can be explicitly calculated) by \eqsimpf{...}{diff}.
  * Added factorial function '!'.
  * Added the sum function \sum. It can be explicitly calculated by
    \eqsimpf{...}{diff}
  * Added keyword \eqevalp to evaluate functions given in parameter form.
  * Added keyword \eqwrite to save equations to a file and reuse them in another
    document.
  * Added taylor series creation of an expression with \tseries.
  * Optimized the value finding code for faster execution. 
  * Added the AM_PATH_GINAC macro to configure.in.in. This needs a patch
      to ginac.m4 on my system (see section Compilation and Installation)
  * Cross-compiled EQC to windows (see section Compilation and Installation)
  * Added Digits = 12 globally to aleviate problems of expressions
    evaluating to things like x^(0.99999999999999995)
^L
Version 0.9.0
  *  Updated and enhanced release
  
  *  Removed bug which did not print muls inside muls and adds inside
     adds.
  *  Removed automatic expansion and normalization after divisions,
      this must be done manually now using \eqsimpf.
  *  Changed \preferred_units to \preferredunits for LaTeX conformity. 
  *  Introduced dummy macros in eqc.sty to enable the raw tex file to
     be passed through LaTeX without generating too many errors. This
     allows the use of preview-latex in emacs, for example.
  *  Added keyword \eqfunc to apply a function to both sides of the
     equation.
  *  Added simplification type unsafe.  
  *  Added keyword \printoptions, this now replaces \autoalign.
     \raw and \eqc are now printing options eqraw and eqnoraw.
  *  Trigonometric functions now evaluate automatically if possible
      (for example, \cos(\pi) becomes 0).
  *  Made equation a subclass of GiNaC::relational and expression of
     GiNaC::ex, which allows a great deal of simplifications in the
     grammar.  
  *  Removed bug which prevented \val[\degree]{...} from working
     correctly.  
  *  Removed bug which prevented substitutions of user-defined
     functions from working correctly.  
  *  Changed the func::eval() routine so that it takes advantage of the
     simplification rules defined for GiNaC's hard-coded functions,
     e.g. \tan\arctan{x} = x.
^L
Version 0.8.0

* Updated and enhanced release
        
* Added keywords \aligneq, \autoalign, \noautoalign and \dumpeq
* The amsmath keywords \tfrac and \dfrac are now recognized (but
  not printed in eqc output)
* Implemented keyword nesting (e.g., \eqsubst{z = x^2}{\eqadd{x-y = 4}{y}}, 
  which would result in z = (4+y)^2)
* Merged the equation and the file parser to simplify the code.
* Implemented operators +, -, *, / and ^ for equations (e.g. \eqrev{"prev" + 3y}).
* Enabled operators +, -, * and / between two equations (e.g. 
  \eqrev{"prev" + "eq:other"} ).
* Added simplification type collect_common.
* Added keywords \denom and \numer.
* Added keyword \eqsolve
^L
Version 0.7

* First Debian release
^L
----------------------------------------------------------------------
Copyright information:

Copyright (C) 1992, 1993 Free Software Foundation, Inc.

Permission is granted to anyone to make or distribute verbatim copies
of this document as received, in any medium, provided that the
copyright notice and this permission notice are preserved,
thus giving the recipient permission to redistribute in turn.
            
Permission is granted to distribute modified versions of this document, or
of portions of it, under the above conditions, provided also that they carry
prominent notices stating who last changed them.
^L
Local variables:
version-control: never
mode: indented-text
end: