einsteinpy / einsteinpy

Repository for the EinsteinPy core package :rocket:
https://einsteinpy.org/
MIT License
617 stars 220 forks source link

Unable to evaluate Ricci and Einstein Tensor for Colliding Plane Waves Metric #596

Closed GeoffCope closed 1 year ago

GeoffCope commented 2 years ago

I am unable to evaluate the Ricci and Einstein tensors for a specific metric. The same error occurs in the following notebooks:

https://github.com/GeoffCope/General_Relativity_Python/blob/main/EhlersKundtRosenMetric.ipynb

https://github.com/GeoffCope/General_Relativity_Python/blob/main/Distinct_family_of%20colliding_gravitational_waves_in_general_relativity_by_Halilsoy.ipynb

A simpler case of the above metric does work as long as it doesn't involve the hyperbolic sin and cos:

https://github.com/GeoffCope/General_Relativity_Python/blob/main/Bell_Szekeres_Solution_and_Related_Solutions_of_the_Einstein_Maxwell_Equations_Barrabes_Hogan.ipynb

JeS24 commented 1 year ago

Thanks for opening the issue. Since this seems to be a problem in Sympy's implementation of collect, we'll have to wait for fixes from Sympy's end. I am closing this issue for now.

For future ref: https://github.com/sympy/sympy/issues/22912.

GeoffCope commented 1 year ago

Hi,

I’ve been wanting to use EinateinPy more in my work, and was wondering if you’ll be incorporating covariant derivatives at some point?

Best, Geoff Cope

Sent from my iPhone

On Oct 28, 2022, at 5:15 AM, Jyotirmaya Shivottam @.***> wrote:

 Closed #596 as completed.

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.

JeS24 commented 1 year ago

I’ve been wanting to use EinateinPy more in my work, and was wondering if you’ll be incorporating covariant derivatives at some point?

Support for more tensor operations in the symbolic module is certainly on the roadmap. I have worked a bit on this on my end. Currently EinsteinPy does not support arbitrary coordinates charts or basis-change, which is making it difficult to directly include these new operations without breaking the API. A new approach that I am trying involves breaking down the operations like taking derivatives or different types of products, and the objects they operate on, into smaller components that can then be mixed and matched as per their mathematical applicability. Another issue is the runtime complexity, which can be quite high with Python & SymPy. I'll keep the community posted as more progress is made on this.

Regards, JeS24

GeoffCope commented 1 year ago

I neglected to mention that I'm part of a research group hoping to incorporate sympy (and hopefully EinsteinPy) into our framework.  The idea is to first generate the equationsof motion symbolically, and then import that into our numerical framework - hopefully using all open source code.  For simple enough vacuum metrics, I've been able to do this - they're available here: https://github.com/GeoffCope/General_Relativity_Python

After they've been derived, they can be imported into the following numerical framework which has been run at the biggest possible scales: Dendro-GR

|

Dendro-GR

Numerical relativity with octree based wavelet adaptive mesh refinement. |

|

|

For the work we're currently doing, I've only had to use a very moderate extension of Mathematica called GeneralRelativityTensors and the results have been far better than I could have hoped.  There's a large repository here with papers and dozens of books worked out. 

https://github.com/GeoffCope/Gravitational_Wave Just the addition of adding covariant derivatives would be of enormous help.  All I've had to do is fix a particular metric, then calculate covariant derivatives, and I've gotten most of what I need.  The coordinate transformations are always done first, taking one metric to another, and then calculating tensors with respect to the new metric.  Please keep me updated on any progress in the future, as most people in the computer science department prefer and use Python, and I'm a bit of an outlier as a Mathematica user. Thanks again for any and all help -

Best,Geoff Cope

On Saturday, October 29, 2022 at 02:00:45 AM MDT, Jyotirmaya Shivottam ***@***.***> wrote:  

I’ve been wanting to use EinateinPy more in my work, and was wondering if you’ll be incorporating covariant derivatives at some point?

Support for more tensor operations in the symbolic module is certainly on the roadmap. I have worked a bit on this on my end. Currently EinsteinPy does not support arbitrary coordinates charts or basis-change, which is making it difficult to directly include these new operations without breaking the API. A new approach that I am trying involves breaking down the operations like taking derivatives or different types of products, and the objects they operate on, into smaller components that can then be mixed and matched as per their mathematical applicability. Another issue is the runtime complexity, which can be quite high with Python & SymPy. I'll keep the community posted as more progress is made on this.

Regards, JeS24

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>