summaryrefslogtreecommitdiff
path: root/math
AgeCommit message (Collapse)AuthorFilesLines
2012-03-03More pcre PKGREVISION bumps.wiz2-4/+4
2012-03-03Changes 3.3.1:adam3-7/+9
* Reduced planning time in estimate mode for sizes with large prime factors. * Added AVX autodetection under Visual Studio. * Modern Fortran interface now uses a separate fftw3l.f03 interface file for the long double interface, which is not supported by some Fortran compilers. Provided new fftw3q.f03 interface file to access the quadruple-precision FFTW routines with recent versions of gcc/gfortran. * Added support for the NEON extensions to the ARM ISA. * MPI code now compiles even if mpicc is a C++ compiler.
2012-03-03Recursive bump for pcre-8.30* (shlib major change)wiz23-45/+46
2012-03-01 Honor CFLAGS/CXXFLAGS and avoid to override the optimizer levels.obache2-5/+17
2012-03-01Add comment.obache2-3/+5
2012-02-29Recursive bump from devel/boost-libs update.hans2-2/+4
2012-02-27Add cgal, Computational Geometry Algorithms Library to the math Makefilereinoud1-1/+2
2012-02-27Import math/cgal version 3.9, Computational Geometry Algorithms Libraryreinoud6-0/+2636
2012-02-24update to 0.7.1drochner4-370/+646
This is a major update, many additions and improvements. Dropped Python-2.4 support.
2012-02-24update to 0.17drochner3-16/+27
changes: -various additions and improvements -bugfixes -dropped Puthon-2.4 support
2012-02-24Changes 1.37:adam3-27/+25
* Updated test files from the Math::BigInt distribution * Updated bundled Devel::CheckLib from v0.92 to v0.93 * Math::BigInt::GMP now requires Math::BigInt v1.997 * Include "^MYMETA\.(yml|json)\z" in MANIFEST.SKIP. Whereas META.* are generated by the distribution author at packaging time, MYMETA.* are generated by the end user at configure time after any dynamic dependencies are known. * Changed Makefile.PL so that a "make dist" makes a META.yml and META.json. * Updated common test files from the Math::BigInt distribution.
2012-02-23Update to FriCAS 1.1.6asau3-15/+55
Notable changes in FriCAS 1.1.6 (compared to version 1.1.5): - Added experimental graph theory package. - Added power series expanders for Weierstrass elliptic functions at 0. - New functions: kroneckerProduct and kroneckerSum for matrices, numeric weierstrassInvariants and modularInvariantJ, symbolic Jacobi Zeta, double float numeric elliptic integrals. - New domains for vectors and matrices of unsigned 8 and 16 bit integers. - Changes to Spad compiler: underscores which are not needed as escape are now significant in Spad names and strings, macros with parameters are supported, added partial support for exceptions, braces can be used for grouping. - A few speedups. - Reduced disc space usage during build. Bug fixes, in particular: - Fixed eval of hypergeometricF at 0 - Fixed problem with scope of macros. - Worked around problems with openinig named pipes in several Lisp implementations. - Fixed a problem with searching documentation via HyperDoc. - Fixed build problem on Mac OSX. Notable changes in FriCAS 1.1.5 (compared to version 1.1.4): - Added numeric version of lambertW. - New function 'rootFactor' which tries to write roots of products as products of roots. - 'try', 'catch' and 'finally' are now Spad keywords. - Experimental support for using gmp with Closure CL (64-bit Intel/Amd only). - New categoris CoercibleFrom and ConvertibleFrom. New domain for ordinals up to epsilon0. New domain for matrices of machine integers. New package for solving linear equations written as expressions (faster then general expression solver). - Functions exported by Product() are now called 'construct', 'first' and 'second' (instead of 'makeprod', 'selectfirst' and 'selectsecond' respectively). - Some functions are now much faster, in particular bivariate factorization over small finite fields. - When using sbcl FriCAS now tries to preload statistical profiler. Bug fixes, in particular: - Fixed handling of Control-C in FriCAS compiled by recent sbcl. - Fixed HyperDoc crash due to bad handling of '#'. - Fixed power series expanders for elliptic integrals. - Fixed 'possible wild ramifcation' problem with algebraic integrals. - 'has' in interpreter now correctly handles '%'. - Spad compiler can now handle single '=>' at top level of a function. - Fixed few problems with conditional types in Spad compiler. Notable changes in FriCAS 1.1.4 (compared to version 1.1.3): - New domains for combinatorial probability theory by Franz Lehner. - Improved integration of algebraic functions. - Initial support for semirings. - Updated framework for theory of computations. - In Spad parser '**', '^' and '->' are now right-associative. - Spad parser now longer transforms relational operators. - Join of categories is faster which speeds up Spad compiler. Bug fixes, in particular: - Retraction of 'rootOf' from Expression(Integer) to AlgebraicNumber works now. - Attempt to print error message about invalid type no longer crash (SF 2977357). - Fixed few problems in Spad compiler dealing with conditional exports. - HyperDoc now should find all function descriptions (previously it missed several).
2012-02-23Update to Mathomatic 15.8.0asau4-19/+30
CHANGES MADE TO MATHOMATIC 15.7.3 TO BRING IT UP TO THE NEXT VERSION: 02/05/12 - The variables command now returns false (with error message) if no normal variables are listed with the default or "count" command line options. This is so it can detect numeric-only expressions, which may be useful. 02/08/12 - The set command now returns the string "Success." upon success, if the debug level is positive or zero. m4 Mathomatic startup m4 scripts required adjustment, so they wouldn't repeatedly say "Success.". 02/13/12 - The variables command by default now displays e, i, pi as e#, i#, and pi#, so you can tell they are not normal variables. This affected other functionality of the variables command, fix was uploaded before the end of the day. 02/14/12 - Change of 12/24/11 was undone. Many expressions containing the imaginary unit, such as the complex exponential expansion of the tangent function, were not getting simplified with the simplify command. See the complex number problem in "misc/known_bugs.txt". Simplification should work better now for expressions containing division by complex numbers. Mathomatic version 15.8.0 released Saturday 02/18/12. CHANGES MADE TO MATHOMATIC 15.7.2 TO BRING IT UP TO THE NEXT VERSION: Some minor user interface improvements were made. 12/14/11 - Further improved parse_complex(), so simplify works better and the divide command no longer approximates, giving more accurate symbolic answers. 12/18/11 - Combining powers and different denominators that contain absolute values like ((x^2)^.5) is now prevented. This allows correct simplification and solving when dealing with absolute values. Tested with the Batman equations, which, when plotted display the Batman logo ("tests/batman_plot"). 12/21/11 - Moved place where 1/i is converted to -i to within the complex number division handler, making complex number results more consistent and correct. 12/23/11 - Changed the chief author's main email address to "gesslein@mathomatic.org". The old linux.com email address didn't seem to work, reliability issues, etc. 12/24/11 - Combining different denominators that contain the imaginary unit (i) is now prevented. This prevents getting different answers after simplifying a complicated complex number expression. 01/01/12 - All copyright dates updated to include the new year 2012. Happy New Year everybody! "set html" in the library now allows pretty HTML output with redirected output and with 2D library result string expression output ("set display2d" or display command). Still no color HTML output for the library. 01/04/12 - Improvement to simplification made, less unnecessary divisions and prettier results of the simplify command. Needs testing. 01/05/12 - Added color HTML output for redirected output when using the symbolic math library. 01/24/12 - Increased the size of icons/mathomatic.png to 64x64 and made it look nicer. This is the new, resizeable Mathomatic logo: icons/mathomatic.svg. 01/25/12 - Published makenews.sh script to make the NEWS file out of the changes.txt file. 01/26/12 - Added tests/demo and tests/demo_sub, to run specific scripts, and create complete HTML output files from them. These are used to create the examples on the Mathomatic website. Mathomatic version 15.7.3 released Wednesday 02/01/12. CHANGES MADE TO MATHOMATIC 15.7.1 TO BRING IT UP TO THE NEXT VERSION: A C code cleanup was performed and new debugging/self-checking code was added. 11/19/11 - "make uninstall" now uninstalls the prime number tools and symbolic math library too. 11/20/11 - Cleaned up calculate command to allow feedback iteration of more than one expression at a time, for a consistent user interface. 11/22/11 - The Mathomatic command "help geometry" now enters the common geometry formulas for you, into equation spaces. Added "help conversions" which enters some common metric/English conversion formulas; with it, you just select the equation that does what you want, solving for the desired unit of measurement. Then you just type "repeat calculate" to try different values. "tests/geometry.in" and "tests/conversions.in" have been subsequently removed. 11/25/11 - When compiled for the Symbolic Math Library, Mathomatic defaults to single-line output ("set no display2d"), so that output can be easily fed back into the input. Otherwise, output defaults to 2D mode ("set display2d"). Mathomatic no longer ignores the display2d flag when using the Symbolic Math Library. 11/26/11 - The command "factor number" now works in the symbolic math library, similarly to the way it works in the Mathomatic application. 11/27/11 - matho-sumsq in the Prime Number Tools now gets its input from standard input, if invoked with no arguments. 11/29/11 - Added shell script "misc/testprimes" for a parallel, brute force test for the first 50,000,000 primes generated by matho-primes. Read the shell script for more information. Runs in 30 seconds on a fast, dual-core computer. 11/30/11 - Added -m option to matho-primes, which allows specifying a memory size multiplier. 12/02/11 - Added ability to push a text string into the readline history buffer, with the "push string" command. Whenever the command "push equation-number-ranges" fails, the entire argument text string is pushed, instead. 12/03/11 - Made it so that entering "#" followed by a variable name at the main prompt searches backwards through all equation spaces for that variable, and then selecting and displaying that equation space. "/" followed by a variable name performs similarly, but searches forward. 12/04/11 - Added "help main" command, which lists all things allowed at the main prompt. Added "tests/cubic2.in", which is the general cubic polynomial formula using 2 equations. Improved display order and functionality of "optimize all" command. 12/11/11 - Better detection of complex numbers with fixed parse_complex() internal function. Rationalizing denominators that contain absolute values ((x^2)^.5) is now prevented. This was a bug. Mathomatic version 15.7.2 released Tuesday 12/13/11. CHANGES MADE TO MATHOMATIC 15.7.0 TO BRING IT UP TO THE NEXT VERSION: 11/03/11 - Added "tests/heart.in", which plots a nice looking heart with gnuplot while running Mathomatic. Displaying thousands separators in MinGW was failing, now it must be specified with the THOUSANDS_SEPARATOR compile-time define. Thousands separators are not well supported in most standard C libraries, causing failure to display numbers, so they are now turned off. So now "set finance" works in the MS-Windows version, it was not working at all before (bug reports, anyone?). 11/04/11 - Testing "set finance" mode when doing the standard Mathomatic tests now. "tests/finance.in" now does "set finance" first thing. Do we need a round-up option for "set finance" mode? Currently rounds to nearest cent. 11/06/11 - Some minor improvements to the Mathomatic symbolic math library error handling output were made. And no more redundant nor inappropriate things are sent to standard output when SILENT=0, only helpful messages are output. Added the "unfactor count" command option, which also displays the resulting number of additive terms in each equation side. 11/10/11 - Improved error and warning messages. Rearrangements were made for future reliability and thorough testing. 11/11/11 - Allow multiple equation-number-ranges for the simplify command. 11/12/11 - Code cleanup and added more DEBUG error checking. Added a little helpful color to the help command. 11/13/11 - "repeat echo -" now draws a line of dashes, "repeat echo" clears the screen, etc. The derivative command now properly terminates as soon as the derivative reaches 0, whenever an order greater than 1 is specified. Previously it just kept differentiating, order times. The number of derivatives taken until the result reached 0 is displayed. No primes are added to the LHS variable if the required number of primes to add won't fit in the variable name. Previously it gave the wrong number of primes (') if they all didn't fit. Cleanup of the Mathomatic Prime Number Tools and their man pages. 11/14/11 - Fixed a missing check for out of memory failure in plot command. Plotting expressions with sign variables in them now gives a suggestion to try "simplify sign" first, because gnuplot doesn't handle +/- or sign variables, but it can plot multiple expressions at once. 11/17/11 - Made "make test" and ./t work under Cygwin, by ignoring trailing carriage returns when comparing test output. Mathomatic version 15.7.1 released Friday 11/18/11. CHANGES MADE TO MATHOMATIC 15.6.5 TO BRING IT UP TO THE NEXT VERSION: A C code cleanup was done. 10/02/11 - Allow an equation-number-range to be specified on the calculate command command-line, so that multiple equation spaces can be calculated automatically with a single command. 10/19/11 - Improved nintegrate command results. nintegrate of cos(sin(x+1)) wrt x from 0 to 1 now always gives the correct simplified result. Rewrote to allow specifying lower and upper bounds on command line. 10/20/11 - Divide command improved: Allow specifying the dividend and divisor on the command line. Other minor fixes. The Mathomatic command "plot x^2" works now, Mathomatic automatically replaces all ^ with ** on the plot command line. 10/21/11 - Added compilation option -fexceptions to CFLAGS in the Mathomatic application and library makefiles and build scripts. May be why exception handling wasn't working well in the past. 10/22/11 - Fixed the display command in the symbolic math library to respond to "set columns=number" to cut-off the 2D expression output string at the number column, instead of always 80 columns. And Unix shell style redirection for the display command works now, to be consistent with the other library commands, simultaneously returning a single 2D expression string (width controlled by the "set columns" variable) and outputting all specified 2D expressions to the file pointed to by gfp (width limit set to infinity). Trying to remove -lncurses from ld command line again, getting more build failures because of it. To compile under old Red Hat Linux, "LDLIBS=-lncurses make READLINE=1" must be used now. All other distros should easily compile with no changes now. 10/24/11 - Added the "variables count" option, to display the counts of each variable in the specified expressions or equations. 11/01/11 - Added "NEWS" file, which is just "changes.txt" reversed. "NEWS" is ordered neatly with the latest changes at the top. Mathomatic version 15.7.0 released Wednesday 11/02/11. CHANGES MADE TO MATHOMATIC 15.6.4 TO BRING IT UP TO THE NEXT VERSION: 8/25/11 - Now allowing balanced parentheses with anything inside them in variable names, so that they can preserve functions temporarily. Just type "set special ()" to use this option and stop getting errors when entering functions. They will not be real functions, just variables whose name is the complete function string. 8/27/11 - Added sinc(x) function to m4 Mathomatic, which is the normalized sinc function, defined as sin(pi*x)/(pi*x). 8/31/11 - Split off the generally useful stuff and general C math defines from am.h to standard.h; am.h only contains Mathomatic defines now. standard.h and complex_lib.c with complex.h can be included in your C math programs if you like, with no changes required. Use of gcd.c in other floating point programs that need a gcd() or double-to-fraction convert function is recommended. The code has been heavily tested by this CAS. 9/02/11 - Fixed and tested the variables command to handle complex number equations better. 9/04/11 - Cleaned up and improved documentation on modular arithmetic and its options. Mathomatic can simplify, calculate, and even solve modular arithmetic! 9/06/11 - The 2D display command's internals were rewritten to allow outputting to C string buffers. This allows the display command to return a multi-line, formatted expression string when using the Symbolic Math Library. Note that there is no color mode when outputting to a C string, but if you send the string to a terminal, it displays the specified equation space nicely in 2D fraction format. 9/18/11 - Mathomatic "help color" command page created. 9/19/11 - Ported Mathomatic to latest OpenIndiana SunOS operating system. Some changes were required and implemented for easier compilation. All tests passed! 9/24/11 - Improved set command error reporting. Mathomatic version 15.6.5 released Sunday 09/25/11. CHANGES MADE TO MATHOMATIC 15.6.3 TO BRING IT UP TO THE NEXT VERSION: 8/05/11 - Approximating complex number roots only when helpful or approximating, improving some results when imaginary numbers are used; for example, simplifying sqrt(sin(x)) now returns the best possible result. 8/06/11 - Added "make strip" target to allow easily running the Unix strip utility on the resulting binaries. Deleted the "make install-strip" and "make bininstall-strip" targets. Additionally display C compiler version number in version command. 8/09/11 - Added ability to make a shared library of the Symbolic Math Library, using the cmake utility. "CMakeLists.txt" was the only file changed. The shared library is thoroughly UNtested. :-) 8/13/11 - A colon character (:) placed before any main prompt input will make it ignore any error occuring in that particular line, so any current read operation won't abort. Any Mathomatic command preceded with a colon will always return with successful status. File "misc/identities.in" was added, showing a strength and weakness of Mathomatic. Removed "doc" target in makefile, due to interference from a directory of the same name; use the "html" target instead. Added cheat card "doc/quickrefcard.html", created by "make htmlcard" and scripts "makehtmlcard.sh" and "makehtmlcard.awk". The PDF of this currently has to be made manually with a web browser, using print to PDF file. Added ability to automatically create cheat sheet "quickref.pdf", created by "make pdfsheet", which invokes script "makepdfsheet.sh". 8/19/11 - General complex number root approximation bug fix: expressions like sqrt(sin(9)) now give the correct result, instead of a negative number, when using the calculate command. The calculate command is used to immediately evaluate it when you type "sqrt(sin(9))" into the m4 Mathomatic main prompt. 8/20/11 - The variables command now defines all "integer" and "sign" variables as "int" instead of "double". 8/21/11 - Rewrote the code command code lister to allow output to a C string. Code command is now completely available with string output in the Symbolic Math Library, meaning Mathomatic can automatically generate programming language code within other programs now. Mathomatic version 15.6.4 released Wednesday 08/24/11. CHANGES MADE TO MATHOMATIC 15.6.2 TO BRING IT UP TO THE NEXT VERSION: Source code and user documentation cleanup and corrections. Creating a PDF book from the Mathomatic man pages with "make bookman" is more likely to work now. Package txt2man must be installed to run "make bookman". 6/24/11 - Added file misc/known_bugs.txt, which is the current list of known bugs in Mathomatic. 7/04/11 - Added file tests/quadratic.in, just a script that solves the general quadratic equation. 7/06/11 - Fixed error messaging to not always give command usage information when a command fails or gives a negative result. Now only gives command usage info when helpful, like when something on the command line is incorrect. 7/07/11 - Fixed the Mathomatic derivative command to not fail with a helpful error message when the derivative is zero. Now it just gives a warning message along with the successful result of the constant zero. 7/23/11 - Mathomatic no longer compiles correctly with the latest Xcode gcc, due to a bug in Apple's gcc optimizer. Either turn the optimizer completely off when compiling with Xcode, or use the gcc provided by MacPorts. Xcode version 3.x and other non-Apple C compilers will work fine. All mention of Xcode has been removed from the Mathomatic distribution. 7/28/11 - Balanced parentheses and brackets are now allowed in variable names, if the "set special_variable_characters" command is run first. For example, "set special ()" will allow entry of named functions, converting them to variables, which might be useful in some cases. However, entry of variables like "f(x)" will not be differentiatable, because there is no "x" variable in that, only the "f(x)" variable. There can be no spaces encountered in the function; variable names end at any non-variable character, including space characters. I can change this, if anyone requests it. Entry of array elements is still possible with "set special []". This is the default. 7/29/11 - Prompts are now blue when reading files into Mathomatic in color mode. 7/30/11 - Allow an equation number range on the solve command line, for faster, more automated solving. If you want to solve all entered equations for x, just type "solve all x" or "solve verify all for x" to be sure. 7/31/11 - Allow "repeat read filename" command, which repeatedly reads a script until it fails or is aborted. 8/04/11 - "make install" now shows if installed executables are new or have changed since the last install. Mathomatic version 15.6.3 released Thursday 08/04/11. CHANGES MADE TO MATHOMATIC 15.6.1 TO BRING IT UP TO THE NEXT VERSION: 6/06/11 - Corrected datadir variable usage in the main Mathomatic makefile. Directly importing datadir could have catastrophically deleted the entire /usr/share directory with "make uninstall". 6/12/11 - Added proper compilation option (WIN32_CONSOLE_COLORS) for color mode in MinGW, in case use with mintty.exe is desired. Mathomatic version 15.6.2 released Sunday 06/12/11. CHANGES MADE TO MATHOMATIC 15.6.0 TO BRING IT UP TO THE NEXT VERSION: The Mathomatic user documentation and help have been shaped up. A BOLD_COLOR compile-time flag was added, to make Mathomatic default to using bold color mode. Used on the Mac and Windows versions of Mathomatic now. 5/8/11 - The "factor number" command now allows number ranges, in addition to integers and integer expressions. 5/9/11 - Install "m4/functions.m4" to proper directory (/usr/share/mathomatic/m4). The "m4" directory is no longer installed to the system doc directory. A big thanks to Terje Røsten of Fedora for showing me the way on this, and for his timely Mathomatic package maintenance in Fedora Linux. 5/11/11 - The matho-primes utility can now be run from within Mathomatic by typing "list primes". Put any arguments you want to pass to matho-primes on the "list primes" command line. Redirection doesn't work yet for this, so it remains undocumented. 5/15/11 - Added NOGAMMA compile-time define, which makes the factorial function integer only, if desired. Added color mode to the MinGW Windows version of Mathomatic, thanks to Doug Snead for the code. Tested in cmd.exe, command.com, and CygWin. The new color mode does not work in mintty.exe. 5/16/11 - Allow defining SILENT=0 when compiling the symbolic math library, so that "set debug level" works and normal Mathomatic debugging works within the library code. Thanks to Doug Snead for suggesting this. 5/21/11 - Changed "make check" to not use the time command, as /usr/bin/time is not available on all systems. "make test" performs the same function and still uses time. 5/23/11 - Updated the Free Software Foundation's address in the LGPL license text and in all source files. Mathomatic version 15.6.1 released Sunday 06/05/11.
2012-02-16Uses a BSD makefile.hans2-2/+4
2012-02-09Add SET_LIBDIR=yessbd1-1/+2
2012-02-09distutils pkg, register egg-info.obache2-6/+6
Bump PKGREVISION.
2012-02-09+gcalctool-gtk3drochner1-1/+2
2012-02-09import gcalctool-6.2.0 which requires gtk3, thus the name, fromdrochner4-0/+787
Patrick Welche per PR pkg/45923
2012-02-06Revbump forwiz25-49/+50
a) tiff update to 4.0 (shlib major change) b) glib2 update 2.30.2 (adds libffi dependency to buildlink3.mk) Enjoy.
2012-01-24Recursive dependency bump for databases/gdbm ABI_DEPENDS change.sbd1-2/+2
2012-01-21Update ruby-spreadsheet to 0.6.8.obache2-6/+6
=== 0.6.8 / 20.01.2012 * adds the fix to allow the writing of empty rows, by ClemensP. * Test also by ClemensP.
2012-01-18disable gnome desktop integration features which depend on libgsf-gnome,drochner2-17/+4
the latter is discontinued upstream bump PKGREV
2012-01-18Update ruby-spreadsheet to 0.6.7.obache3-7/+9
=== 0.6.7 / 18.01.2012 * http://dev.ywesee.com/wiki.php/Gem/Spreadsheet points point 2. * Tests by Michal * Patches by Timon === 0.6.6 / 18.01.2012 * http://dev.ywesee.com/wiki.php/Gem/Spreadsheet points 8 and 9. * Fixes byjsaak@napalm.hu * Patches by Vitaly Klimov
2012-01-16The gnu triple for Linux is *-*-linux not *-*-linux-gnu.sbd2-5/+14
2012-01-14gsed related clean up.obache2-11/+3
* Stop to treat NetBSD's sed as GNU sed, not full compatible. * Then, no need to reset TOOLS_PLATFORM.gsed for NetBSD if USE_TOOLS+=gsed and real GNU sed is required. * In addition, convert simple USE_TOOLS+=gsed to conditionally, without NetBSD. * convert {BUILD_,}DEPENDS+=gsed to USE_TOOLS, all tools from gsed are real gsed.
2012-01-14Force real gsed only on NetBSD.hans1-1/+4
2012-01-14Convert the remaining few packages that explicitly set DEPENDS orhans2-7/+4
BUILD_DEPENDS on bison to USE_TOOLS=bison. The minimum bison version required in mk/tools/bison.mk is good enough for all of them.
2012-01-13Recursive bump from audio/libaudiofile, x11/qt4-libs and x11/qt4-tools ABI bump.obache5-10/+10
2012-01-10Update to Maxima 5.26.0asau3-11/+63
No detailed list of changes since 5.24.0
2012-01-02Update from 5.3.1 to 5.5.2 to improve the chances of building.dholland6-247/+190
(Leaf package, so ok during freeze.) Upstream changelog: 2009.08.14: Changes between NTL 5.5.1 and 5.5.2 New routines MulAddTo and MulSubFrom for computing x += a*b and x -= a*b, where x and a are ZZ's and b is a ZZ or a long. In the case where b is a long, this may be much faster than writing mul(t, a, b); add(x, x, t). See ZZ.txt for details. These new routines are used in a number of places in NTL to get faster algorithms (for example, the LLL routine). Fixed a relatively benign indexing bug in GF2EX discovered by Berend-Benjamin Tams using the valgrind tool. 2009.05.05: Changes between NTL 5.5 and 5.5.1 If using GMP (via either NTL_GMP_LIP or NTL_GMP_HACK), then the new version (4.3.0) of GMP implements the XGCD functionality differently, so that the coefficients do not always agree with those returned by the classical extended Euclidean algorithm. This version of NTL corrects the coefficients, so that the "classical" coefficients are always produced, regardless of GMP's implementation. This version of NTL also works around a bug in GMP 4.3.0's XGCD code (although that bug should be fixed in GMP 4.3.1). The configure script has been slightly modified: there is a new configuration variable DEF_PREFIX, whose value can be used to set PREFIX, GMP_PREFIX, and GF2X_PREFIX in one stroke. Also, the (somewhat esoteric) configure variables GMP_LIBDIR, GMP_INCDIR, GF2X_LIBDIR, and GF2X_INCDIR have slightly different meanings now. 2009.04.08: Changes between NTL 5.4.2 and 5.5 Added the ability to generate a shared library (with help from Tim Abbott). Details. Fixed some standardization issues (with help from Tim Abbot): default location of installed documentation files now conforms to standards; use of EOF now conforms to standards. Added a callback mechanism to NTL's error reporting function. See ErrorCallback in tools.txt. Added support for the gf2x library for speeding up arithmetic in GF2X (with help from Emmanuel Thom?). Details. In conjuction with the above, I also changed the GF2X so that it works better with very large polynomials: large blocks of memory are released, recursive HalfGCD algorithms are used for large polynomials. Fixed a bug in void TraceMod(zz_p& x, const zz_pX& a, const zz_pXModulus& F) (reported by Luca De Feo). Fixed a performance issue in various versions of SetCoeff (reported by Luca De Feo). Fixed the declaration of mat_zz_p transpose(const mat_zz_p& a) (reported by Benoit Lacelle). 2008.03.05: Changes between NTL 5.4.1 and 5.4.2 Fixed a bug in the sub(ZZ_pEX, ZZ_pE, ZZ_pEX) and sub(zz_pEX, zz_pE, zz_pEX) routines (reported by Charanjit Jutla). Under certain circumstances, these could outout wrong answers. 2007.05.09: Changes between NTL 5.4 and 5.4.1 Fixed rounding bug in expm1 (reported by Paul Zimmermann). Fixed memory leak in several LLL routines (reported by Friedrich Bahr). Fixed infinite loop in several LLL routines (this only occurred on machines, like x86, with double rounding). Improved GF2X timing tests (suggested by Paul Zimmermann). 2005.03.24: Changes between NTL 5.3.2 and 5.4 By default, NTL now compiles in ISO mode (using namespaces, etc.). You can always revert to traditional mode by unsetting the flag NTL_STD_CXX (either pass NTL_STD_CXX=off to the configure script, or manually edit the config.h file). Some bug fixes: The sqrt and log1p routines for the RR class would produce incorrectly rounded results in certain circumstances (although this only affected the relative error of the result very marginally). The SqrRootPrec routine for the RR class could not be called, because it was defined incorrectly. Thanks to Paul Zimmermann for finding (and fixing) these bugs! Paul has also validated NTL's RR class by cross-checking it with the MPFR library. Some performance enhancements: Added a new MulModPrecon inline function for computing (a * b) % n for single precision numbers, when b and n are fixed for several computations. On some platforms this can be twice as fast or more than the old MulMod2 routine. This indirectly affects a lot of computations that are done via homomorphic imaging (polynomial multiplication over zz_p, ZZ_p, and ZZ, matrix computations over zz_p and ZZ). Rewrote the small prime FFT to take advantage of the new MulModPrecon, and to be more cache friendly. Improved the performance of the GF2X multiplication routine. On some platforms, it can be twice as fast as the old one. Thanks (again) to Paul Zimmermann for suggesting some of these improvements and supplying some of the code. Miscellany: Rewrote several of the installation scripts in Perl (the old shell scripts were getting too messy to maintain). However, the syntax for all of the command-line interfaces remains identical. 2004.05.21: Changes between NTL 5.3.1 and 5.3.2 Some bug fixes. Re-wrote SqrRootMod to make it run faster.
2011-12-29Don't try to use namespace with math functions, it doesn't work reliablejoerg2-1/+37
with different compilers.
2011-12-24Update to Octave 3.4.3asau15-518/+448
This makes the package build and work at least in NetBSD on some platforms. Summary of important user-visible changes for version 3.4.3: ----------------------------------------------------------- ** Octave 3.4.3 is a bug fixing release. Summary of important user-visible changes for version 3.4.2: ----------------------------------------------------------- ** Octave 3.2.4 fixes some minor installation problems that affected version 3.4.1. Summary of important user-visible changes for version 3.4.1: ----------------------------------------------------------- ** Octave 3.4.1 is primarily a bug fixing release. ** IMPORTANT note about binary incompatibility in this release: Binary compatibility for all 3.4.x releases was originally planned, but this is impossible for the 3.4.1 release due to a bug in the way shared libraries were built in Octave 3.4.0. Because of this bug, .oct files built for Octave 3.4.0 must be recompiled before they will work with Octave 3.4.1. Given that there would be binary incompatibilities with shared libraries going from Octave 3.4.0 to 3.4.1, the following incompatible changes were also made in this release: * The Perl Compatible Regular Expression (PCRE) library is now required to build Octave. * Octave's libraries and .oct files are now installed in subdirectories of $libdir instead of $libexecdir. Any future Octave 3.4.x release versions should remain binary compatible with Octave 3.4.1 as proper library versioning is now being used as recommended by the libtool manual. ** The following functions have been deprecated in Octave 3.4.1 and will be removed from Octave 3.8 (or whatever version is the second major release after 3.4): cquad is_duplicate_entry perror strerror ** The following functions are new in 3.4.1: colstyle gmres iscolumn isrow mgorth nproc rectangle ** The get_forge_pkg function is now private. ** The rectangle_lw, rectangle_sw, triangle_lw, and triangle_sw functions are now private. ** The logistic_regression_derivatives and logistic_regression_likelihood functions are now private. ** ChangeLog files in the Octave sources are no longer maintained by hand. Instead, there is a single ChangeLog file generated from the Mercurial version control commit messages. Older ChangeLog information can be found in the etc/OLD-ChangeLogs directory in the source distribution. Summary of important user-visible changes for version 3.4: --------------------------------------------------------- ** BLAS and LAPACK libraries are now required to build Octave. The subset of the reference BLAS and LAPACK libraries has been removed from the Octave sources. ** The `lookup' function was extended to be more useful for general-purpose binary searching. Using this improvement, the ismember function was rewritten for significantly better performance. ** Real, integer and logical matrices, when used in indexing, will now cache the internal index_vector value (zero-based indices) when successfully used as indices, eliminating the conversion penalty for subsequent indexing by the same matrix. In particular, this means it is no longer needed to avoid repeated indexing by logical arrays using find for performance reasons. ** Logical matrices are now treated more efficiently when used as indices. Octave will keep the index as a logical mask unless the ratio of true elements is small enough, using a specialized code. Previously, all logical matrices were always first converted to index vectors. This results in savings in both memory and computing time. ** The `sub2ind' and `ind2sub' functions were reimplemented as compiled functions for better performance. These functions are now faster, can deliver more economized results for ranges, and can reuse the index cache mechanism described in previous paragraph. ** The built-in function equivalents to associative operators (`plus', `times', `mtimes', `and', and `or') have been extended to accept multiple arguments. This is especially useful for summing (multiplying, etc.) lists of objects (of possibly distinct types): matrix_sum = plus (matrix_list{:}); ** An FTP object type based on libcurl has been implemented. These objects allow ftp connections, downloads and uploads to be managed. For example, fp = ftp ("ftp.octave.org); cd (fp, "gnu/octave"); mget (fp, "octave-3.2.3.tar.bz2"); close (fp); ** The default behavior of `assert (observed, expected)' has been relaxed to employ less strict checking that does not require the internals of the values to match. This avoids previously valid tests from breaking due to new internal classes introduced in future Octave versions. For instance, all of these assertions were true in Octave 3.0.x but false in 3.2.x due to new optimizations and improvements: assert (2*linspace (1, 5, 5), 2*(1:5)) assert (zeros (0, 0), []) assert (2*ones (1, 5), (2) (ones (1,5))) ** The behavior of library functions `ismatrix', `issquare', and `issymmetric' has been changed for better consistency. * The `ismatrix' function now returns true for all numeric, logical and character 2-D or N-D matrices. Previously, `ismatrix' returned false if the first or second dimension was zero. Hence, `ismatrix ([])' was false, while `ismatrix (zeros (1,2,0))' was true. * The `issquare' function now returns a logical scalar, and is equivalent to the expression ismatrix (x) && ndims (x) == 2 && rows (x) == columns (x) The dimension is no longer returned. As a result, `issquare ([])' now yields true. * The `issymmetric' function now checks for symmetry instead of Hermitianness. For the latter, ishermitian was created. Also, logical scalar is returned rather than the dimension, so `issymmetric ([])' is now true. ** Function handles are now aware of overloaded functions. If a function is overloaded, the handle determines at the time of its reference which function to call. A non-overloaded version does not need to exist. ** Overloading functions for built-in classes (double, int8, cell, etc.) is now compatible with Matlab. ** Function handles can now be compared with the == and != operators, as well as the `isequal' function. ** Performance of concatenation (using []) and the functions `cat', `horzcat', and `vertcat' has been improved for multidimensional arrays. ** The operation-assignment operators +=, -=, *= and /= now behave more efficiently in certain cases. For instance, if M is a matrix and S a scalar, then the statement M += S; will operate on M's data in-place if it is not shared by another variable, usually increasing both time and memory efficiency. Only selected common combinations are affected, namely: matrix += matrix matrix -= matrix matrix .*= matrix matrix ./= matrix matrix += scalar matrix -= scalar matrix *= scalar matrix /= scalar logical matrix |= logical matrix logical matrix &= logical matrix where matrix and scalar belong to the same class. The left-hand side must be a simple variable reference. Moreover, when unary operators occur in expressions, Octave will also try to do the operation in-place if it's argument is a temporary expresssion. ** The effect of comparison operators (<, >, <=, and >=) applied to complex numbers has changed to be consistent with the strict ordering defined by the `max', `min', and `sort' functions. More specifically, complex numbers are compared by lexicographical comparison of the pairs `[abs(z), arg(z)]'. Previously, only real parts were compared; this can be trivially achieved by wrapping the operands in real(). ** The automatic simplification of complex computation results has changed. Octave will now simplify any complex number with a zero imaginary part or any complex matrix with all elements having zero imaginary part to a real value. Previously, this was done only for positive zeros. Note that the behavior of the complex function is unchanged and it still produces a complex value even if the imaginary part is zero. ** As a side effect of code refactoring in liboctave, the binary logical operations are now more easily amenable to compiler optimizations and are thus significantly faster. ** Octave now allows user-defined `subsasgn' methods to optimize out redundant copies. For more information, see the manual. ** More efficient matrix division handling. Octave is now able to handle the expressions M' \ V M.' \ V V / M (M is a matrix and V is a vector) more efficiently in certain cases. In particular, if M is triangular, all three expressions will be handled by a single call to xTRTRS (from LAPACK), with appropriate flags. Previously, all three expressions required a physical transpose of M. ** More efficient handling of certain mixed real-complex matrix operations. For instance, if RM is a real matrix and CM a complex matrix, RM * CM can now be evaluated either as complex (RM * real (CM), RM * imag (CM)) or as complex (RM) * CM, depending on the dimensions. The first form requires more temporaries and copying, but halves the FLOP count, which normally brings better performance if RM has enough rows. Previously, the second form was always used. Matrix division is similarly affected. ** More efficient handling of triangular matrix factors returned from factorizations. The functions for computing QR, LU and Cholesky factorizations will now automatically return the triangular matrix factors with proper internal matrix_type set, so that it won't need to be computed when the matrix is used for division. ** The built-in `sum' function now handles the non-native summation (i.e., double precision sum of single or integer inputs) more efficiently, avoiding a temporary conversion of the whole input array to doubles. Further, `sum' can now accept an extra option argument, using a compensated summation algorithm rather than a straightforward sum, which significantly improves precision if lots of cancellation occurs in the summation. ** The built-in `bsxfun' function now uses optimized code for certain cases where built-in operator handles are passed in. Namely, the optimizations concern the operators `plus', `minus', `times', `ldivide', `rdivide', `power', `and', `or' (for logical arrays), the relational operators `eq', `ne', `lt', `le', `gt', `ge', and the functions `min' and `max'. Optimizations only apply when both operands are of the same built-in class. Mixed real/complex and single/double operations will first convert both operands to a common type. ** The `strfind' and `strrep' functions now have compiled implementations, facilitating significantly more efficient searching and replacing in strings, especially with longer patterns. The code of `strcat' has been vectorized and is now much more efficient when many strings are concatenated. The `strcmpi' and `strncmpi' functions are now built-in functions, providing better performance. ** Matlab-style ignoring input and output function arguments using tilde (~) is now supported. Ignored output arguments may be detected from a function using the built-in function `isargout'. For more details, consult the manual. ** The list datatype, deprecated since the introduction of cells, has been removed. ** The accumarray function has been optimized and is now significantly faster in certain important cases. ** The behavior of isreal and isnumeric functions was changed to be more Matlab-compatible. ** The integer math & conversion warnings (Octave:int-convert-nan, Octave:int-convert-non-int-val, Octave:int-convert-overflow, Octave:int-math-overflow) have been removed. ** rem and mod are now built-in functions. They also handle integer types efficiently using integer arithmetic. ** Sparse indexing and indexed assignment has been mostly rewritten. Since Octave uses compressed column storage for sparse matrices, major attention is devoted to operations manipulating whole columns. Such operations are now significantly faster, as well as some other important cases. Further, it is now possible to pre-allocate a sparse matrix and subsequently fill it by assignments, provided they meet certain conditions. For more information, consult the `spalloc' function, which is no longer a mere dummy. Consequently, nzmax and nnz are no longer always equal in Octave. Octave may also produce a matrix with nnz < nzmax as a result of other operations, so you should consistently use nnz unless you really want to use nzmax (i.e. the space allocated for nonzero elements). Sparse concatenation is also affected, and concatenating sparse matrices, especially larger collections, is now significantly more efficient. This applies to both the [] operator and the cat/vertcat/horzcat functions. ** It is now possible to optionally employ the xGESDD LAPACK drivers for computing the singular value decomposition using svd(), instead of the default xGESVD, using the configuration pseudo-variable svd_driver. The xGESDD driver can be up to 6x times faster when singular vectors are requested, but is reported to be somewhat less robust on highly ill-conditioned matrices. ** Configuration pseudo-variables, such as page_screen_output or confirm_recursive_rmdir (or the above mentioned svd_driver), now accept a "local" option as second argument, requesting the change to be undone when the current function returns: function [status, msg] = rm_rf (dir) confirm_recursive_rmdir (false, "local"); [status, msg] = rmdir (dir, "s"); ... endfunction Upon return, confirm_recursive_rmdir will be restored to the value it had on entry to the function, even if there were subsequent changes to the variable in function rm_rf or any of the functions it calls. ** pkg now accepts a -forge option for downloading and installing packages from Octave Forge automatically. For example, pkg install -forge general will automatically download the latest release of the general package and attempt to install it. No automatic resolving of dependencies is provided. Further, pkg list -forge can be used to list all available packages. ** The internal data representation of structs has been completely rewritten to make certain optimizations feasible. The field data can now be shared between structs with equal keys but different dimensions or values, making operations that preserve the fields faster. Economized storage is now used for scalar structs (just like most other scalars), making their usage more memory-efficient. Certain array-like operations on structs (concatenation, uniform cellfun, num2cell) have gained a significant speed-up. Additionally, the octave_scalar_map class now provides a simpler interface to work with scalar structs within a C++ DLD function. ** Two new formats are available for displaying numbers: format short eng format long eng Both display numbers in engineering notation, i.e., mantissa + exponent where the exponent is a multiple of 3. ** The following functions are new in Octave 3.4: accumdim erfcx nfields pqpnonneg uigetdir bitpack fileread nth_element quadcc uigetfile bitunpack fminbnd onCleanup randi uiputfile blkmm fskipl pbaspect repelems uimenu cbrt ifelse pie3 reset whitebg curl ishermitian powerset rsf2csf chop isindex ppder saveas daspect luupdate ppint strread divergence merge ppjumps textread ** Using the image function to view images with external programs such as display, xv, and xloadimage is no longer supported. The image_viewer function has also been removed. ** The behavior of struct assignments to non-struct values has been changed. Previously, it was possible to overwrite an arbitrary value: a = 1; a.x = 2; This is no longer possible unless a is an empty matrix or cell array. ** The dlmread function has been extended to allow specifying a custom value for empty fields. ** The dlmread and dlmwrite functions have been modified to accept file IDs (as returned by fopen) in addition to file names. ** Octave can now optimize away the interpreter overhead of an anonymous function handle, if the function simply calls another function or handle with some of its parameters bound to certain values. Example: f = @(x) sum (x, 1); When f is called, the call is forwarded to @sum with the constant 1 appended, and the anonymous function call does not occur on the call stack. ** Deprecated functions. The following functions were deprecated in Octave 3.0 and have been removed from Octave 3.4. beta_cdf geometric_pdf pascal_pdf beta_inv geometric_rnd pascal_rnd beta_pdf hypergeometric_cdf poisson_cdf beta_rnd hypergeometric_inv poisson_inv binomial_cdf hypergeometric_pdf poisson_pdf binomial_inv hypergeometric_rnd poisson_rnd binomial_pdf intersection polyinteg binomial_rnd is_bool setstr chisquare_cdf is_complex struct_contains chisquare_inv is_list struct_elements chisquare_pdf is_matrix t_cdf chisquare_rnd is_scalar t_inv clearplot is_square t_pdf clg is_stream t_rnd com2str is_struct uniform_cdf exponential_cdf is_symmetric uniform_inv exponential_inv is_vector uniform_pdf exponential_pdf isstr uniform_rnd exponential_rnd lognormal_cdf weibcdf f_cdf lognormal_inv weibinv f_inv lognormal_pdf weibpdf f_pdf lognormal_rnd weibrnd f_rnd meshdom weibull_cdf gamma_cdf normal_cdf weibull_inv gamma_inv normal_inv weibull_pdf gamma_pdf normal_pdf weibull_rnd gamma_rnd normal_rnd wiener_rnd geometric_cdf pascal_cdf geometric_inv pascal_inv The following functions were deprecated in Octave 3.2 and will be removed from Octave 3.6 (or whatever version is the second major release after 3.2): create_set spcholinv splu dmult spcumprod spmax iscommand spcumsum spmin israwcommand spdet spprod lchol spdiag spqr loadimage spfind spsum mark_as_command sphcat spsumsq mark_as_rawcommand spinv spvcat spatan2 spkron str2mat spchol splchol unmark_command spchol2inv split unmark_rawcommand The following functions have been deprecated in Octave 3.4 and will be removed from Octave 3.8 (or whatever version is the second major release after 3.4): autocor cellidx gammai krylovb values autocov dispatch glpkmex replot betai fstat is_global saveimage * For compatibility with Matlab, mu2lin (x) is now equivalent to mu2lin (x, 0). * The ARPACK library is now distributed with Octave so it no longer needs to be available as an external dependency when building Octave.
2011-12-22Make sure that printf format specifiers are defined for C++ codejoerg1-1/+3
2011-12-20Make sure that builds with g95 create position independent code.joerg3-3/+23
Bump revision.
2011-12-20Fix build with newer GTK2.wiz2-1/+62
2011-12-20pkglint cleanupwiz1-2/+2
2011-12-20Requires libffi when using ECL.asau1-1/+2
2011-12-20Ignore compilation failure on CLISP: COMPILE-FILE returns failure-pasau2-1/+18
but CLISP doesn't list any errors.
2011-12-20Update MASTER_SITES; distfile has been moved to the archives as a newdholland1-2/+2
version is out.
2011-12-19s/fortran77/fortran/ - use same fortran as R itself.markd7-14/+14
No PKGREVISION bump as either this is unchanged or didn't previously build
2011-12-18If BLAS_LIBS comes back empty, run with it instead of detonating.dholland2-6/+16
This makes it build for me.
2011-12-18math/mcsim: Make sure package doesn't try to use tex and friendsmarino2-1/+15
Although mcsim.dvi, mcsim.html, and mcsim.texinfo aren't on the PLIST, the package tries to build them anyway, at least on DragonFly. This modifies the documentation makefile to prevent this. DragonFly doesn't have dvips and thus the package was failing to build.
2011-12-18math/randlib: force MKPROFILE=yes to avoid PLIST divergencemarino1-1/+2
2011-12-18math/meschach: force MKPROFILE=yes to avoid PLIST divergencemarino1-1/+2
2011-12-18math/dcdflib.c: revert last, force MKPROFILE=yes to avoid PLIST divergencemarino2-9/+4
2011-12-18math/gtklife: Add indirectly linked libraries to LDFLAGS for v2.22marino1-1/+2
2011-12-18math/extcalc: Add indirectly linked libraries to LDFLAGS for v2.22marino1-1/+2
2011-12-18math/dcdflib.c: conditional PLIST for DragonFlymarino2-3/+9
DragonFly has not produced _p.a files in a long time. The PLIST to modified to exclude libdcdflib_c_p.a if build on DragonFly.
2011-12-18math/clisp-pari: Needs devel/gettext-libmarino1-1/+2
2011-12-18math/calcoo: Add indirectly linked libraries to LDFLAGS for ld v2.22marino1-1/+2