1 / 70

Bertini: A software package for numerical algebraic geometry

Bertini: A software package for numerical algebraic geometry. Developed by : Dan Bates Jon Hauenstein Andrew Sommese Charles Wampler. About today’s talk. Bertini. Thanks to:. About today’s talk. Bertini. Thanks to: the organizers. About today’s talk. Bertini. Thanks to:

azimmermann
Download Presentation

Bertini: A software package for numerical algebraic geometry

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Bertini: A software package for numerical algebraic geometry Developed by: Dan Bates Jon Hauenstein Andrew Sommese Charles Wampler

  2. About today’s talk Bertini Thanks to:

  3. About today’s talk Bertini • Thanks to: • the organizers

  4. About today’s talk Bertini • Thanks to: • the organizers • Zhonggang Zeng

  5. About today’s talk Bertini • Thanks to: • the organizers • Zhonggang Zeng • Greg Reid

  6. Contents Bertini • I. Basic facts • Getting Bertini • Running Bertini • A fun set of examples • Coming attractions

  7. I. Basic Facts Bertini Bertini is a software package for computing in numerical algebraic geometry.

  8. I. Basic Facts Bertini Bertini is a software package for computing in numerical algebraic geometry. Numerical algebraic geometry provides algorithms for computing and manipulating geometric structures and quantities coming from algebraic equations (Greg’s talk).

  9. I. Basic Facts Bertini Bertini is a software package for computing in numerical algebraic geometry. Numerical algebraic geometry provides algorithms for computing and manipulating geometric structures and quantities coming from algebraic equations (Greg’s talk). Bertini is not the first such software – PHC, PHoM, HomLab, HOM4PS, POLSYS, …

  10. I. Basic Facts Bertini Bertini is a software package for computing in numerical algebraic geometry. Numerical algebraic geometry provides algorithms for computing and manipulating geometric structures and quantities coming from algebraic equations (Greg’s talk). Bertini is not the first such software – PHC, PHoM, HomLab, HOM4PS, POLSYS, … Bertini is the first with no “hom” and no “P”!

  11. I. Basic Facts Bertini • Bertini has been released! • beta version was released on Tuesday

  12. I. Basic Facts Bertini • Bertini has been released! • beta version was released on Tuesday • executables only

  13. I. Basic Facts Bertini • Bertini has been released! • beta version was released on Tuesday • executables only • available from all of our websites

  14. I. Basic Facts Bertini • Bertini has been released! • beta version was released on Tuesday • executables only • available from all of our websites • In case you have been following the development of Bertini, we have met our goal of releasing by December 1!

  15. I. Basic Facts Bertini • Zero-dimensional systems overview • May be specified over a product of complex spaces or a product of projective spaces • System may be nonsquare (unless >1 variable groups) • The user may provide the homotopy (with parameters) • Finds approximations of all isolated solutions • The user may choose to use higher than regular precision (fixed or adaptive) • Bertini determines the number of real, finite (if over complex space), and nonsingular solutions

  16. I. Basic Facts Bertini • Positive-dimensional systems overview • May be specified over a single complex or projective space • System may be nonsquare • Finds witness sets (via the cascade algorithm, junk removal, and pure-dimensional breakup) • Component sampling • Component membership testing • Not yet in multiple precision (but soon)

  17. I. Basic Facts Bertini • Ingredients • Written in C • Uses bison & flex for parsing • Uses GMP & MPFR for multiple precision representation and arithmetic • None of this should matter to the user – we used static links for our libraries (for Linux, not Cygwin) • Will expand to other architectures

  18. II. Getting Bertini Bertini http://www.nd.edu/~sommese/bertini

  19. II. Getting Bertini Bertini Click here

  20. II. Getting Bertini Bertini Just a quick survey before the download…

  21. II. Getting Bertini Bertini Click here

  22. II. Getting Bertini Bertini Take your pick

  23. II. Getting Bertini Bertini

  24. II. Getting Bertini Bertini

  25. II. Getting Bertini Bertini

  26. II. Getting Bertini Bertini

  27. II. Getting Bertini Bertini Now we are ready to start using Bertini!

  28. III. Running Bertini Bertini Getting to an example….

  29. III. Running Bertini Bertini } CONFIG section (optional) } INPUT section The input file

  30. III. Running Bertini Bertini One of two tables of configuration tables in the user’s manual: What if these aren’t good enough for you? We also provide descriptions of each one.

  31. III. Running Bertini Bertini Our original input file

  32. III. Running Bertini Bertini Defined on C2. What if your system is homogeneous? The modified input file

  33. III. Running Bertini Bertini Now we’re on P2. What about a product of projective spaces?

  34. III. Running Bertini Bertini Now we’re on P1 x P1. Back to the original….

  35. III. Running Bertini Bertini Now, let’s run this example

  36. III. Running Bertini Bertini • Alternatives: • Could put the executable in the same folder as the input file. • Could put the input file elsewhere also. • Output always goes to the current working directory!

  37. III. Running Bertini Bertini

  38. III. Running Bertini Bertini Do you want some more data?

  39. III. Running Bertini Bertini A finite root Multiplicity 1 An infinite root Multiplicity 2 Inside the main output file, main_data

  40. III. Running Bertini Bertini A finite root Multiplicity 1 The seed for this run Now let’s run this in P2. The body of the main output file, main_data

  41. III. Running Bertini Bertini

  42. III. Running Bertini Bertini This time, Bertini makes no assumptions about infinity.

  43. III. Running Bertini Bertini One of the strengths of continuation lies in the use of parameter homotopies. The idea is to solve one problem of a class of problems and then move around within the class as needed. (simple) example: Suppose you need to find the intersection of two circles of varying centers and radii many times. solution: Choose the coordinates of the centers and the radii to be your (six) parameters. Fix them and solve. Then vary them.

  44. III. Running Bertini Bertini Begin by solving the problem with two circles, each of radius 3, centered at (-1,0) and (1,0). NOTE: To use parameter homotopies correctly, one really should use random complex choices for all parameters at the beginning. The values for this example were chosen so we could see the situation.

  45. III. Running Bertini Bertini The input file to solve this

  46. III. Running Bertini Bertini The real_solutions file from this run

  47. III. Running Bertini Bertini Then move via a parameter homotopy to some other pair of circles, say both of radius 2, centered at (0,0) and (0,2).

  48. The input file – the path should be random, but it was not (for simplicity)

  49. III. Running Bertini Bertini The start file for this run

  50. III. Running Bertini Bertini The output from this run

More Related