next | previous | forward | backward | up | top | index | toc | Macaulay2 website
NumericalSchubertCalculus :: PieriHomotopies

PieriHomotopies -- runs the Pieri homotopies to solve a general hypersurface problem

Synopsis

Description

The example below computes the two lines that meet four given lines in 3-spaces.

To verify the first intersection condition, we concatenate the first input plane with the first output plane. The determinant of the concatenated matrix should have real and imaginary parts of the same magnitude as the machine precision.

i1 : (ipt, otp) := PieriHomotopies(2,2);
i2 : print ipt
{| -.5                .0789861+.337514ii  |, | -.5                .100114+.522956ii  |, | -.5                -.366779+.0616693ii |, | -.5                .520168+.433658ii   |}
 | -.384072+.320139ii -.78232+.0695621ii  |  | .420128+.271095ii  -.440104-.164566ii |  | .0588166+.496529ii -.282839+.118993ii  |  | -.485057+.121324ii -.392606+.0981598ii |
 | -.289633-.407569ii -.0959645+.306554ii |  | .495263-.0686602ii .0970034+.456215ii |  | .363617+.343195ii  -.31789-.754152ii   |  | -.474704-.157021ii -.355034-.170981ii  |
 | .437037+.242897ii  -.396175-.0533282ii |  | .455215-.206831ii  .460994-.256248ii  |  | .211049-.453275ii  .213401-.228417ii   |  | .383866-.320386ii  .0339278+.470273ii  |
i3 : print otp
{| 1                 0                 |, | 1                  0                  |}
 | .460192+1.22303ii .686429+1.18891ii |  | -1.33856-.184891ii 1.6443-.188318ii   |
 | .725722+1.15426ii 1                 |  | -.193176+.298252ii 1                  |
 | 0                 .147669-.643236ii |  | 0                  -.717825+.459372ii |
i4 : in0 = ipt_0

o4 = | -.5                .0789861+.337514ii  |
     | -.384072+.320139ii -.78232+.0695621ii  |
     | -.289633-.407569ii -.0959645+.306554ii |
     | .437037+.242897ii  -.396175-.0533282ii |

                4          2
o4 : Matrix CC    <--- CC
              53         53
i5 : out0 = otp_0

o5 = | 1                 0                 |
     | .460192+1.22303ii .686429+1.18891ii |
     | .725722+1.15426ii 1                 |
     | 0                 .147669-.643236ii |

                4          2
o5 : Matrix CC    <--- CC
              53         53
i6 : m = in0|out0

o6 = | -.5                .0789861+.337514ii  1                
     | -.384072+.320139ii -.78232+.0695621ii  .460192+1.22303ii
     | -.289633-.407569ii -.0959645+.306554ii .725722+1.15426ii
     | .437037+.242897ii  -.396175-.0533282ii 0                
     ------------------------------------------------------------------------
     0                 |
     .686429+1.18891ii |
     1                 |
     .147669-.643236ii |

                4          4
o6 : Matrix CC    <--- CC
              53         53
i7 : det m

o7 = 2.58336551660451e-15+1.77395234202542e-16*ii

o7 : CC (of precision 53)

Ways to use PieriHomotopies :

For the programmer

The object PieriHomotopies is a method function with options.