Discussions

News: Dude, I Love Math: Commons Math 1.0 RC1 Released

  1. Dude, I Love Math: Commons Math 1.0 RC1 Released (18 messages)

    The Commons Math team hopes to release the first stable version of Commons Math 1.0 in the next two weeks, based on community response for the First RC.
    Commons Math, released under an Apache 2.0 license, provides functions for statistics, linear algebra, random data generation, root finding, interpolation, gamma and beta functions, arrays, factorials, complex numbers, distributions, matrices, and solving linear systems and much more.

    Here is a listing of the packages included in the commons-math library, and brief notes on what they implement:

    • Analysis: implements of common numerical analysis procedures, including root finding and function interpolation
    • Complex: implements complex number type and implementations of complex transcendental functions
    • Distribution: implements common discrete and continuous distributions
    • Linear: implements linear algebra support
    • Random: implements random number and random data generators
    • Special: implementations of special functions such as Beta and Gamma
    • Stat: implements data storage, manipulation and summary routines
    • Util: implements Convenience routines and common data structure used throughout the commons-math library
    Read more: Dude, I Love Math: Commons Math 1.0 RC1 Released

    Commons Math home page

    So, wear your testing caps, bash the Math library, and get that feedback rolling. Also, what would you like to contribute to commons-math? Let the TheServerSide community know of what design ideas you have for Commons Math.

    Threaded Messages (18)

  2. As usual, it's close to impossible to navigate the Apache site. For example, the source download is unavailable from the page that it links to to download the source.

    Nonetheless, I'm interested in what is actually in "commons math," but I was hoping to avoid diving into the CVS.

    Peace,

    Cameron Purdy
    Tangosol, Inc.
    Coherence: Shared Memories for J2EE Clusters
  3. Download Location[ Go to top ]

    The release candidate source and binary distributions are available for download here:
    http://jakarta.apache.org/~psteitz/commons-math-1.0-RC1/
  4. source cross reference[ Go to top ]

    Cameron,

    the Commons-Math project uses Maven to generate it's site documentation. Unfortunately the menu tree on the left does not show if a link is a node or a leaf. If you would click on 'Project Reports' however, you should see a link named 'Source Xref'.
    Click this link to see the nice source cross reference that Maven automatically provides for you.


    Kind regards,

    Jonathan van Alteren
    BinarySoul Software Development
  5. RC1 =? Beta OR RC1 =? Alpha[ Go to top ]

    I would be interested to find out if Commons Math would be able to figure out this:

    "Released for testing purposes, Commons Math 1.0 RC1 is not fit for production use." (Quote from the article mentioned in the announcement.)

    I would say that something that isn't fit for production isn't supposed to be a release candidate.

    But hey dude, I *do* love math. (grin)

    IMHO Math folks can break any laws they like. We simply redefine them and work from there, right?

    Cheers
  6. RE: RC1 =? Beta OR RC1 =? Alpha[ Go to top ]

    I don't know the source of the article so, I can't explain its chosen verbage.

    I will say that the commons-math team voted for proceeding with this RC indicating we believe it's ready for production use.

    Brent Worden
  7. Sorry for the confusion. As stated, Phil Steitz is hosting the RC distributions. commons-math will be added to the Apache downloads as soon as the release is cut.

    If you're daring, the nightly builds are accessible and are fairly stable at the moment because of the pending release: http://cvs.apache.org/builds/jakarta-commons/nightly/commons-math/

    Brent Worden
  8. What about rounding?[ Go to top ]

    It would have been nice to add in some clean rounding utilities. Consider the task of rounding a float of unknown precision to the hundredths place:

    myFloat = (new BigDecimal(myFloat))
        .setScale(2,BigDecimal.ROUND_HALF_UP).floatValue();

    Now I'd really prefer that this get fixed in the actual Java APIs, but after seeing how well they've handled Date/Calendar over the years, I'm not getting my hopes up.
  9. RE: What about rounding?[ Go to top ]

    Thanks for the suggestion. I will add it to the commons-math Wish list.

    If you would like to see anything else included in the library, feel free to add it the list as well.

    Brent Worden
  10. Linear Algebra[ Go to top ]

    Linear Algebra part of this does not seem to be optimized at all.
    The operations create new objects for the results and two dimensional array access is not dereferenced.

    Artem
  11. RE: Linear Algebra[ Go to top ]

    You're correct in your observations. For this release, we were more concerned with publishing our matrix API then we were with developing a performant matrix implementation.

    We plan to add some linear regression and anova capabilities to the library in future releases. With this, we will seek to modify the API and make optimizations as we gather knowledge from real world usage.
  12. I've been using CERN's COLT libraries for a few years and find them excellent. They are fast, and have been tested and honed in real-world applications. There are also other really good Java math libraries available. My question is this: What was the motivation to create yet another math library?

    http://hoschek.home.cern.ch/hoschek/colt/index.htm
    http://www.mathtools.net/
  13. License issues with COLT[ Go to top ]

    As far as I can tell from this page:
    http://hoschek.home.cern.ch/hoschek/colt/download/v1.0.3/download.htm

    It makes use of different packages with different licenses:

    package edu.cornell.lassp.houle.RngPack
    [...]
    This package is released free under the GNU public license.

    package corejava
    [...]
    Permission to use, copy, modify, and distribute this software and its documentation for NON-COMMERCIAL purposes and without fee is hereby granted provided that this copyright notice appears in all

    sv
  14. License issues with COLT[ Go to top ]

    RngPack 1.1a is now available under a BSD License. (http://www.honeylocust.com/RngPack/)
  15. License issues with COLT[ Go to top ]

    All those licensing issues with COLT have been cleaned up in the latest stable release.
    In particular, there are no GPL and no commercial clauses anymore.

    The software distribution has moved to a new site: http://dsd.lbl.gov/~hoschek/colt/
    where you can check this out and/or download the release.
  16. License issues with COLT[ Go to top ]

    Wolfgang, Thanks for the update. It looks like current efforts include a lot of coordination with the GRID computing efforts.

    Kevin
  17. License issues with COLT[ Go to top ]

    Same here. Couldn't use it in my commercial projects because of the license issues. But maybe others don't mind license issues... But these mathematical things in my case weren't rocket science and implemented in 20 minutes. Since performance mostly isn't an issue I don't see any reason why in future we shouldn't use these math packages (as long as the results are correct). Still there's room and time to improve (I think it is good enough for 1.0). Thanks for this useful contribution to the community.
  18. License issues with COLT[ Go to top ]

    It seems that these license issues have been resolved from COLT in newer versions than I tested. So this point doesn't apply to the current release of COLT.
  19. License issues with COLT[ Go to top ]

    ...Permission to use, copy, modify, and distribute this software and its documentation for NON-COMMERCIAL purposes...
    I wonder why tax-payer sponsored work isn't public domain? Such a scam!