
NSF Org: |
OAC Office of Advanced Cyberinfrastructure (OAC) |
Recipient: |
|
Initial Amendment Date: | September 4, 2014 |
Latest Amendment Date: | September 4, 2014 |
Award Number: | 1460032 |
Award Instrument: | Standard Grant |
Program Manager: |
Alan Sussman
OAC Office of Advanced Cyberinfrastructure (OAC) CSE Directorate for Computer and Information Science and Engineering |
Start Date: | August 16, 2014 |
End Date: | August 31, 2018 (Estimated) |
Total Intended Award Amount: | $149,995.00 |
Total Awarded Amount to Date: | $149,995.00 |
Funds Obligated to Date: |
|
History of Investigator: |
|
Recipient Sponsored Research Office: |
940 GRACE HALL NOTRE DAME IN US 46556-5708 (574)631-7432 |
Sponsor Congressional District: |
|
Primary Place of Performance: |
IN US 46556-5708 |
Primary Place of
Performance Congressional District: |
|
Unique Entity Identifier (UEI): |
|
Parent UEI: |
|
NSF Program(s): |
OFFICE OF MULTIDISCIPLINARY AC, Software Institutes, CDS&E-MSS |
Primary Program Source: |
|
Program Reference Code(s): |
|
Program Element Code(s): |
|
Award Agency Code: | 4900 |
Fund Agency Code: | 4900 |
Assistance Listing Number(s): | 47.070 |
ABSTRACT
Polynomial systems arise naturally in many areas of human endeavor. These include the modeling of tumor growth; the design of robotic devices; chemical systems arising in areas ranging from combustion to blood clotting; assorted problems in physics; plus many areas with mathematics. The solution of the polynomial systems answers questions critical to these endeavors. This research will be devoted to developing the next generation of Bertini, an open source software package, which has been used successfully by many researchers on many problems, which include all those mentioned above.
Bertini will be rewritten in C++ to be scriptable and modular, which will allow it to be interfaced transparently with symbolic software. The new Bertini will include tools allowing the user to construct and manipulate homotopies based on the output of Bertini. A major focus of the research will be given to systems of polynomials arising from the discretization of systems of differential equations. The great challenge of these very large systems of polynomials is balanced by the great potential impact new efficient and robust methods of solution will have.
PUBLICATIONS PRODUCED AS A RESULT OF THIS RESEARCH
Note:
When clicking on a Digital Object Identifier (DOI) number, you will be taken to an external
site maintained by the publisher. Some full text articles may not yet be available without a
charge during the embargo (administrative interval).
Some links on this page may take you to non-federal websites. Their policies may differ from
this site.
PROJECT OUTCOMES REPORT
Disclaimer
This Project Outcomes Report for the General Public is displayed verbatim as submitted by the Principal Investigator (PI) for this award. Any opinions, findings, and conclusions or recommendations expressed in this Report are those of the PI and do not necessarily reflect the views of the National Science Foundation; NSF has not approved or endorsed its content.
Polynomial systems arise throughout mathematics, science, and engineering, making the solution of such problems a fundamental concern in computational mathematics. The mathematical field called numerical algebraic geometry includes a wide range of techniques for computing numerical approximations of the solutions of polynomial systems. The primary goal of this project was the construction of easily extensible and maintainable software for such computations.
More specifically, Bertini 2 is a re-implementation of the venerable Bertini 1 from C into C++ and Python. The project, which is hosted publicly on GitHub and has a GPL3 open source license, currently consists of two major components. The first is the core library, implementing symbolics and numerics in C++. The second is PyBertini, consisting of the Python bindings for the core. The core provides a full set of tools for forming polynomial and non-polynomial systems directly in compiled code, as well as via parsed strings. A system may be differentiated, evaluated, and queried for various properties, as well as made projective via homogenization and patching. Numerical path tracking in double, multiple, and adaptive precisions are implemented, and extensible by overloading just a few functions. The total degree start system is provided, as is the multihomogeneous which accepts arbitrary variable groupings. The power series and Cauchy endgames are also provided.
Taken together, a complete modern implementation of numerical homotopy continuation in a nice interface exists in the Bertini 2 core. PyBertini exposes the C++ core to Python via compiled bindings. Nearly the entire core is usable in Python, meaning that a user does not have to compile code to do numerical algebraic geometry, nor to they have to write or parse plain text data files. The entire system is supported by an Autotools build system, automated testing, automatically built and uploaded documentation and tutorials, and a wiki site. Distribution is handled via GitHub. The code can currently be compiled from source, though the developers are considering additional distribution methods to ease the burden on users.
Last Modified: 10/21/2018
Modified by: Jonathan D Hauenstein
Please report errors in award information by writing to: awardsearch@nsf.gov.