[FLASH-USERS] Simple 3D spherical application
Justus Sagemüller
sagemueller at geo.uni-koeln.de
Tue Feb 3 09:26:01 EST 2015
Hello flash-users,
sorry to ask that stupidly, but it seems more people are having some
sort of issues with 3D spherical coordinates even now; in my case this
is mostly down to lack of experience with Flash, but even for more
acquainted users this doesn't seem altogether straightforward.
The question is simply: is there any example available of how to get the
code running correctly in 3D spherical, for some HD or ideally MHD
application? Just to have a reference on what to watch out for, what not
to do (like the problem below: periodical boundary conditions for the
theta coordinate), and a rough orientation as to how the results should
be used.
Any pointers on how to start out would be appreciated. In the long run
of course, most helpful might be to have a documented test case shipped
with the code... e.g. the SodSpherical problem actually allows 3d in its
setup parameters, but even then it doesn't actually use the phi
coordinate but specifies a "null set" range of zmin=0.0; zmax=1.0 in
degrees.
Thanks,
Justus
On Jul 6, 2014, at 12:06 PM, Luke Zoltan Kelley <lkelley at cfa.harvard.edu <http://flash.uchicago.edu/mailman/listinfo/flash-users>> wrote:
>/ Hello flash-users!
/>/
/>/ I'm new to FLASH and trying to convert a simulation from cartesian to (3D) spherical, but I'm running into some errors. If anyone has had recent success using 3D spherical, I would be very appreciative of any tips they had, or issues they overcame. In particular, I'm getting a warning from source/Grid/GridMain/paramesh/paramesh4/gr_sanitizeDataAfterInterp.F90 that my guard-cells aren't being set correctly:
/>/
/>/
/>/ WARNING after gc filling: min. unk(DENS_VAR)=0.000000000000000000000 PE=0 block=1 type=2
/>/ 16 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 15 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 14 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 13 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 12 0.10E-18 0.63E-01 0.63E-01 0.62E-01 0.62E-01 0.63E-01 0.63E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 11 0.10E-18 0.63E-01 0.62E-01 0.63E-01 0.63E-01 0.62E-01 0.63E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 10 0.10E-18 0.62E-01 0.62E-01 0.63E-01 0.63E-01 0.62E-01 0.62E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 9 0.10E-18 0.63E-01 0.63E-01 0.62E-01 0.62E-01 0.63E-01 0.63E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 8 0.10E-18 0.62E-01 0.63E-01 0.63E-01 0.63E-01 0.63E-01 0.62E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 7 0.10E-18 0.63E-01 0.62E-01 0.62E-01 0.62E-01 0.62E-01 0.63E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 6 0.10E-18 0.62E-01 0.63E-01 0.62E-01 0.62E-01 0.63E-01 0.62E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 5 0.10E-18 0.62E-01 0.63E-01 0.63E-01 0.63E-01 0.63E-01 0.62E-01 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18 0.10E-18
/>/ 4 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 3 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 2 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/ 1 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0
/>/
/>/
/>/ These warnings are given for DENS_VAR, ENER_VAR, EINT_VAR and all blocks.
/>/ (presumably) for this reason I'm getting arithmetic exceptions when source/physics/Eos/EosMain/Gamma/eos_idealGamma.F90 tries to divide by the (zero) densities, the backtrace I get is:
/>/
/>/
/>/ Program received signal EXC_ARITHMETIC, Arithmetic exception.
/>/ 0x000000010024cf6e in eos_idealgamma_ (mode=103, veclen=8, eosdata=(), vecbegin=Cannot access memory at address 0x0
/>/ ) at eos_idealGamma.F90:341
/>/ 341 eosData(dens+ilo:dens+ihi)
/>/ (gdb) bt
/>/ #0 0x000000010024cf6e in eos_idealgamma_ (mode=103, veclen=8, eosdata=(), vecbegin=Cannot access memory at address 0x0
/>/ ) at eos_idealGamma.F90:341
/>/ #1 0x000000010001149b in eos_ (mode=103, veclen=8, eosdata=(), massfrac=(), mask=(.FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE., .FALSE.), vecbegin=Cannot access memory at address 0x0
/>/ ) at Eos.F90:265
/>/ #2 0x000000010001edea in eos_wrapped_ (mode=103, range=(( 5, 12) ( 1, 4) ( 1, 1) ), blockid=1, griddatastruct=Cannot access memory at address 0x0
/>/ ) at Eos_wrapped.F90:220
/>/ #3 0x0000000100019b15 in complexskipping.1886 () at Eos_guardCells.F90:43
/>/ #4 0x000000010001afd8 in eos_guardcells_ (corners=.TRUE., layers=(4, 4, 4), skipsrl=.TRUE.) at Eos_guardCells.F90:120
/>/ #5 0x00000001000322d7 in grid_fillguardcells_ (griddatastruct=380, idir=-1, minlayers=Cannot access memory at address 0x0
/>/ ) at Grid_fillGuardCells.F90:482
/>/ #6 0x000000010006340e in grid_markrefinederefine_ () at Grid_markRefineDerefine.F90:98
/>/ #7 0x000000010029eec2 in gr_expanddomain_ (particlesinitialized=.FALSE.) at gr_expandDomain.F90:212
/>/ #8 0x0000000100061385 in grid_initdomain_ (restart=.FALSE., particlesinitialized=.FALSE.) at Grid_initDomain.F90:98
/>/ #9 0x000000010000d405 in driver_initflash_ () at Driver_initFlash.F90:156
/>/ #10 0x000000010001f19c in flash () at Flash.F90:49
/>/ #11 0x000000010001f20e in main (argc=1, argv=0x7fff5fbff870 '/Users/lzkelley/Applications/flash/flash4.2.2/object_starwind/flash4\000') at Flash.F90:43
/>/
/>/
/>/ In my Simulation_initBlock.F90, I am looping over the guard-cells and setting all densities to non-zero values --- if I print out the densities during the initialization loop I get the appropriate densities from i,j,k = {1,1,1} up to {16,16,16} --- so it seems like the guard-cells are being overwritten to zero...
/>/ This does not occur in 3D cartesian, and also does *not* occur when I run SodSpherical (which seems to work properly, strangely enough).
/>/
/>/ I believe I've also found a bug in source/physics/Hydro/HydroMain/split/PPM/PPMKernel/avisco.F90:416, when sweeping along "y" (theta) in 3D spherical the denominator [ 'sin(xl(i))' ] is allowed to be zero and causes arithmetic exceptions.
/>/
/>/ Any help on this particular problem, or on getting spherical running in general would be greatly appreciated!
/>/ Thanks,
/>/ Luke/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://flash.rochester.edu/pipermail/flash-users/attachments/20150203/bb6e0113/attachment.htm>
More information about the flash-users
mailing list