[Carpet] gf contamination
Erik Schnetter
schnetter at cct.lsu.edu
Fri Aug 4 02:11:02 CEST 2006
On Aug 3, 2006, at 19:30:20, Yosef Zlochower wrote:
> Hi,
>
> I am having some difficulty when evolving my code with carpet.
> I am
> attempting to evolve my code with prolongation in space only. To
> better understand the problem I set up my code so that the RHS were
> all filled with 1.0e4 prior to calculating them.
Carpet has a feature called "poisoning". Carpet can fill all
uninitialised grid variables with a poison value (e.g. nan). This
detects uninitialised values quite effectively.
> My code then fills in
> the RHS for all points on the grid except those on the three
> gridplanes closest to the boundary (i.e. for (i=3; i<cctk_lsh[0]-3;
> i++) etc ). In MoL_PostStep I first synchronize all the evolved fields
> (but not the RHS)
Correct; in MoL_PostStep, the RHS has already been used and will be
ignored.
> and then alter the values of \tilde g_{ij} and
> \tilde A_{ij} so that the algebraic constraints are enforced.
Are you sure that this is the order in which you are doing things?
Can you show us the relevant part of your schedule.ccl?
> I am
> working on a problem where gxy = 0. However, I found that after 1
> timestep the value of gxy 1 point in from the buffer zones
If you do not use time interpolation then you do not need buffer
zones. To simplify things, try switching them off completely.
> is
> non-zero, and grows when I increase the initial value of the RHS to
> 1.0e5. So it looks like some junk from the buffer zones has leaked
> into the evolved fields.
I think you mean ghost zones. The ghost zones are the outermost 3
grid points, which are filled through interpolation.
> Here is the relevant segment of my parfile please note that my code
> only needs 3 ghostzones but I choose 4. I also set
> num_integrator_substeps = 4 even though 3 would be sufficient.
This is also only needed for buffer zones. Without buffer zones this
parameter is irrelevant.
> (setting it back to 3 does not remove the problem)
>
>
> driver::ghost_size = 4
> mol::ode_method = "RK3"
> driver::global_nx = 81 #51 #227 #259
> driver::global_ny = 81 #51 #227 #259
> driver::global_nz = 81 #51 #116 #132
> grid::dxyz = .25
> grid::domain = "full"
>
> time::dtfac = 0.125
> #Carpet::prolongation_order_space = 7
> Carpet::prolongation_order_space = 1
> Carpet::prolongation_order_time = 0
> Carpet::max_refinement_levels = 3 #5
> #Carpet::buffer_width = 0
> Carpet::time_refinement_factors = "[1,1,1]"
> Carpet::num_integrator_substeps = 4
> Carpet::use_outer_buffer_zones = "yes"
> #Carpet::init_each_timelevel = "yes"
>
> CarpetRegrid::refinement_levels = 3 #5
> CarpetRegrid::regrid_every = 0
> CarpetRegrid::refined_regions = "centre"
>
> Is there something obviously wrong in the parfile?
Only the fact that you use buffer zones although you do not need
them. Maybe there is a problem, since you also use uncommon temporal
and spatial interpolation orders.
> I examined gxy on the y axis and found that after the first time step
> gxy on level 0 is zero except at y=+-5 and +-2.5 On level 1 gxy has
> the same behavior but is also non-zero at the points directly above
> and below +-5. On the finest level gxy is non-zero on +-2.5 and +-
> 2.4375.
-erik
--
Erik Schnetter <schnetter at cct.lsu.edu>
My email is as private as my paper mail. I therefore support encrypting
and signing email messages. Get my PGP key from www.keyserver.net.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: PGP.sig
Type: application/pgp-signature
Size: 186 bytes
Desc: This is a digitally signed message part
Url : /archives/developers/attachments/20060803/969ccead/attachment.pgp
More information about the developers
mailing list