sxs-collaboration / spectre

SpECTRE is a code for multi-scale, multi-physics problems in astrophysics and gravitational physics.
https://spectre-code.org
Other
153 stars 185 forks source link

Questions/comments on CCE tutorial #6053

Closed moble closed 4 days ago

moble commented 1 month ago

I've gone through the CCE tutorial, and it looks pretty good. I think it should be very helpful to users in the workshop. I have a few fairly minor comments and questions about it, though.

nilsdeppe commented 1 month ago

Thanks, Mike!

  1. Legend attribute: it turns out this was an issue! Deborah had the encoding incorrect or something like that and everything exploded in a cryptic manner. Do you have a suggestion on how to make sure this is clear but maybe not intrusive?
  2. Output density: So this is a slightly bigger improvement that needs to be looked at. @keefemitman suggested limiting the time step size to 0.1M. However, CCE currently doesn't have an option to output every N steps, only N times per step. Presumably what's happening is you're getting output at 0.1M density and this is just way too often? What I want to do but haven't had time yet is to make it so we can output data every N steps in addition to N times per step. I'll check to see how difficult that is to add.
keefemitman commented 1 month ago

@moble the very fine time steps stem from the error based time stepping that CCE utilizes; this is why I added the t_interpolate option (https://github.com/moble/scri/blob/62df4db6099bd3d11035e2a6325d2524e6281168/scri/SpEC/file_io/__init__.py#L485) to create_abd_from_h5 because, for practical purposes, we will always want to use the time array of the worldtube from the Cauchy evolution as t_interpolate. (At least this is what we decided on a while back in the vacuum call for the catalog).

knelli2 commented 1 month ago

Thanks for going through this @moble! I can definitely implement these suggestions. Yeah I think unfortunately the legend stuff is important since our H5 IO looks for it. I also think @keefemitman's solution for the time stepping is the way to go, and we can address outputting every N steps in the future.