Skip to content
This repository has been archived by the owner on Oct 14, 2023. It is now read-only.

Orbit.propagate_to_anomaly freezes #907

Closed
astrojuanlu opened this issue Apr 12, 2020 · 5 comments · Fixed by #908
Closed

Orbit.propagate_to_anomaly freezes #907

astrojuanlu opened this issue Apr 12, 2020 · 5 comments · Fixed by #908
Assignees

Comments

@astrojuanlu
Copy link
Member

(TBC)

In [86]: r_a                                                                                                          
Out[86]: <Quantity 2200. m>

In [87]: r_p = 10 * u.m                                                                                               

In [88]: a = (r_a + r_p) / 2; a                                                                                       
Out[88]: <Quantity 1105. m>

In [89]: e = r_a / a - 1                                                                                              

In [90]: e                                                                                                            
Out[90]: <Quantity 0.99095023>

In [91]: o_n = Orbit.from_classical(ast, a, e, 0 * u.deg, 0 * u.deg, 0 * u.deg, 180 * u.deg)                          

In [92]: o_n.r                                                                                                        
Out[92]: <Quantity [-2.20000000e+00,  2.69422296e-16,  0.00000000e+00] km>

In [93]: o_n.r_a                                                                                                      
Out[93]: <Quantity 2200. m>

In [94]: o_n.r_p                                                                                                      
Out[94]: <Quantity 10. m>

In [95]: o_n.nu                                                                                                       
Out[95]: <Quantity 180. deg>

In [96]: o_n.propagate_to_anomaly(191.35 * u.deg)
@astrojuanlu
Copy link
Member Author

It's o_n.M what hangs.

@astrojuanlu
Copy link
Member Author

Also, problems with the propagation:

In [12]: o_n.propagate(2.47 * u.h)                                                                                    
/home/juanlu/.pyenv/versions/3.8.0/envs/poliastro38/lib/python3.8/site-packages/poliastro/core/angles.py:43: RuntimeWarning: overflow encountered in double_scalars
  term = (ecc - 1.0 / (2.0 * k + 3.0)) * (x ** k)
/home/juanlu/.pyenv/versions/3.8.0/envs/poliastro38/lib/python3.8/site-packages/poliastro/core/angles.py:45: RuntimeWarning: invalid value encountered in double_scalars
  S += term

@astrojuanlu
Copy link
Member Author

The problems with this particular orbit were solved by decreasing the delta that makes the parabolic solution kick in.

@astrojuanlu
Copy link
Member Author

I think this might be a duplicate of #475.

@astrojuanlu
Copy link
Member Author

I think I found it.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant