-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Issue with standard_complex_sweep finding solutions. #38
Comments
Thanks for reporting this issue. The sweep was designed to detect singular solutions and then to stop at the first encounter of a singular solutions. The real sweep could compute quadratic turning points well because of its arc-length parameter parametrization, which might not work well enough in a complex sweep. Without seeing the actual script that defines the homotopy, it is difficult for me to write more. |
Thank you for the advice. Unfortunately the script is integrated into a program so it will not make sense posting the whole thing but I'll try the real sweep to see if this works. |
I'm having some difficulty with the standard_complex_sweep method tracking solutions for a set of polynomials. The issue I'm having is that I'm trying to track the solutions for two system of polynomials simultaneously for a change in parameters. I can track the solutions for one of the polynomials. That is to say that I'm only looking for solutions within a certain range of values for which one polynomial produces a continuum in this range and the other does not despite the fact that I know that these solutions should be present.
The two polynomials I'm trying to solve are as follows:
Pressure polynomials:
1: Q14 - Q46 + Q54;
2: Q25 - Q54 - Q56;
3: Q46 + Q56 - Q63;
Flow polynomials:
1: 0.31684P4 + 3.07780911325921Q14 - 0.31684x;
2: Q46(3.46301518876535H46 + 1) - (0.7921 - 0.7921H46)(P4 - P6);
3: 0.31684P5 + 3.07780911325921Q25 + 0.31684x - 0.31684;
4: Q54*(3.46301518876535H45 + 1) - (0.7921 - 0.7921H45)(-P4 + P5);
5: Q56(3.46301518876535H56 + 1) - (0.7921 - 0.7921H56)(P5 - P6);
6: -P6(0.7921 - 0.7921H63) + Q63(3.46301518876535H63 + 1);
Ratio polynomials:
1: -Q14 + Q46r56;
2: Q25r14 - Q54;
3: -Q46 + Q63r63;
Haematocrit polynomials:
1: H45*(1 - r56) - H46 + 0.6r56;
2: -a45 + r14 - 0.04;
3: -a46 - r14 + 0.96;
4: -H45r14*(1.0a45 + a46) + 0.6a45;
5: H45r14 + H56(1 - r14) - 0.6;
6: H46r63 + H56(1 - r63) - H63;
Pressure polynomials:
1: Q14 - Q45 - Q46;
2: Q25 + Q45 - Q56;
3: Q46 + Q56 - Q63;
Flow polynomials:
1: 0.31684P4 + 3.07780911325921Q14 - 0.31684x;
2: Q45(3.46301518876535H45 + 1) - (0.7921 - 0.7921H45)(P4 - P5);
3: Q46(3.46301518876535H46 + 1) - (0.7921 - 0.7921H46)(P4 - P6);
4: 0.31684P5 + 3.07780911325921Q25 + 0.31684x - 0.31684;
5: Q56*(3.46301518876535H56 + 1) - (0.7921 - 0.7921H56)(P5 - P6);
6: -P6(0.7921 - 0.7921H63) + Q63(3.46301518876535H63 + 1);
Ratio polynomials:
1: Q14r14 - Q45;
2: -Q25 + Q56r56;
3: -Q46 + Q63r63;
Haematocrit polynomials:
1: -a45 + r14 - 0.04;
2: -a46 - r14 + 0.96;
3: -H45r14(1.0a45 + a46) + 0.6a45;
4: H45r14 + H46(1 - r14) - 0.6;
5: H45*(1 - r56) - H56 + 0.6r56;
6: H46r63 + H56*(1 - r63) - H63;
The x variable is the one that I'm performing a sweep for for the values between 0.4 to 0.6. The first polynomial system here is the one for which I can obtain values for. For instance when x = 0.505038, the solution to the first polynomial is:
P4: 0.37741144658028 P5: 0.372872011901421 P6: 0.249716541518299
H45:0.338836966697101 H46:0.623717837897984 H56:0.0136621865184432
H63: 0.6 Q14:0.0131383057549933 Q25:0.0125683531387659
Q45:0.00109383337967731 Q46:0.012044472375316 Q56:0.0136621865184432
Q63:0.0257066588937592 r14:0.083255284210568 r56:0.919937165387056
r63: 0.468535114776818 a45:0.043255284210568 a46:0.876744715789432
The complex sweep is able to find this solution but for the second polynomial the solution is:
P4: 0.374835183546721 P5: 0.375468918441703 P6: 0.249695898011577
H45:0.00334358031025163 H46:0.57876743256638 H56:0.624994164006294
H63: 0.6 Q14:0.0134035149182375 Q25:0.012301018863655
Q45:0.000494576360074708 Q46:0.0138980912783122 Q56:0.0118064425035803
Q63:0.0257045337818925 r14:0.0402061297162953 r56:0.964414080309971
r63: 0.540686378373557 a45:0.000206129716295259 a46:0.919793870283705
This solution doesn't appear when performing a complex sweep. One thing that does seem to constantly come up is that I keep getting the following error.
File "", line 1
NaN******
^
SyntaxError: invalid syntax
And one or more of the fields for the solution is filled with NaN********.
Are the sweep functions known to fail tracking some solutions some times or can my system not be solved in this way?
The text was updated successfully, but these errors were encountered: