[FLASH-USERS] Checkerboard structure in magnetic field using USM solver

Rukmani Vijayaraghavan rukmani at virginia.edu
Mon Oct 9 10:03:45 EDT 2017


Hi Sean,

I'd set both of those to .false., I'll try a version with .true. I've 
attached my flash.par file, if useful I can also send my much longer 
.log file (which includes many failed iterations of modifying these 
parameters). What is the recommended level of magnetic resistivity to 
minimize this?

Thanks,

Rukmani


On 10/09/2017 09:43 AM, Sean M. Couch wrote:
> I’d agree with Dongwook, it looks like numerical instability. In 
> absence of the log file showing the details of your setup and run, I 
> would suggest you try the following if you haven’t already. Set both 
> E_upwind and E_modification to .TRUE. in your flash.par. What these 
> flags do is improve the order of reconstruction for the electric 
> fields (see Lee & Deane 2009).  See the attached gif of a field loop 
> moving across a jump in refinement with the various flags on or off. 
>  Not exactly the same as your issue, perhaps, but might still be worth 
> a try. You might also try adding in magnetic resistivity to your sim, 
> if all else fails.
>
> Cheers,
> Sean
>
> On October 9, 2017 at 12:07:50 AM, Dongwook Lee 
> (dongwook at flash.uchicago.edu <mailto:dongwook at flash.uchicago.edu>) wrote:
>
>> Dear Rukmani,
>>
>> It looks to me that they may come from numerical instability, 
>> although it could be an issue related to the use of AMR. What 
>> reconstruction scheme and CFL number are you using? Is this 2D or 3D?
>>
>> Best,
>> Dongwook
>>
>> On Sun, Oct 8, 2017 at 12:59 PM, Rukmani Vijayaraghavan 
>> <rukmani at virginia.edu <mailto:rukmani at virginia.edu>> wrote:
>>
>>     Hi everyone,
>>
>>     I get a strange, unphysical feature in the magnetic field
>>     structure with the USM solver, seen in the attached slices of B_z
>>     and the magnetic pressure. These features, as you can see, track
>>     the block boundaries and look like a checkerboard of varying
>>     magnetic field strength (and sign?) in individual grid cells.
>>     I've tried modifying every possible USM solver switch, including
>>     the Riemann solver, order, slope limiter, prolongation method,
>>     steepening, etc. Using Riemann Solver = HLLC instead of HLLD
>>     makes things a little better, since HLLC is more diffusive, but
>>     the feature still eventually appears. Any advice on solving this
>>     or even minimizing its effects would be helpful!
>>
>>     Thanks,
>>
>>     Rukmani
>>
>>     --
>>     Rukmani Vijayaraghavan
>>     NSF Astronomy & Astrophysics Postdoctoral Fellow
>>     University of Virginia
>>     rukmani at virginia.edu <mailto:rukmani at virginia.edu>
>>
>>
>>
>>
>> --
>>
>> =========================================
>> Dongwook Lee, Ph.D., Assistant Professor
>> Applied Mathematics and Statistics
>> University of California, Santa Cruz
>> Baskin Engineering, Room 353C
>> 1156 High Street, Santa Cruz, CA 95064
>> https://users.soe.ucsc.edu/~dongwook/ 
>> <https://users.soe.ucsc.edu/%7Edongwook/>
>>

-- 
Rukmani Vijayaraghavan
NSF Astronomy & Astrophysics Postdoctoral Fellow
University of Virginia
rukmani at virginia.edu

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://flash.rochester.edu/pipermail/flash-users/attachments/20171009/49ed49d0/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fieldLoop.gif
Type: image/gif
Size: 1018724 bytes
Desc: not available
URL: <http://flash.rochester.edu/pipermail/flash-users/attachments/20171009/49ed49d0/attachment-0001.gif>
-------------- next part --------------
#	Runtime parameters for the nbody group/cluster with magnetic field, multigrid solver

#	Computational volume parameters

geometry        = "cartesian"

xmin		= -5.e23
xmax		= 5.0e23
ymin		= -5.0e23
ymax		= 5.0e23
zmin		= -5.e23
zmax		= 5.e23

nblockx		= 1
nblocky		= 1
nblockz		= 1


#	Parameters for initial model


rvir1           =  241.627 #92.1636
mvir1           =  1.E12 #2.82748e11
scale_radius    =  1.196968E23 #5.86719E22
scale_density   =  8.31272e-26 #2.55232e-25
a_disk          =  6.634255E21 #1.23428E22
b_disk          =  9.2571E20 #7.71425E20
M_disk          =  9.2E43 #2.E44
rcutoff_disk    =  8.02282E22 #8.02282E22

halo_number      =  1
n_gal            =  0
mainClusterFixed = .true.

#	Particle info, mass in solar mass

pt_dtFactor      = 0.8
group_number     = 0
cluster_number   = 0

#	Refinement criteria
refine_var_1    = "dens"
refine_var_2    = "temp"
refine_var_3    = "pres"
refine_var_4    = "magp"


lrefine_min	= 4
lrefine_max     = 8

refine_on_particle_count = .false.
max_particles_per_blk = 10#1000
min_particles_per_blk = 1#250

#	Boundary conditions

xl_boundary_type = "user"
xr_boundary_type = "outflow"
yl_boundary_type = "outflow"
yr_boundary_type = "outflow"
zl_boundary_type = "outflow"
zr_boundary_type = "outflow"
grav_boundary_type = "isolated"


#	Simulation description

basenm          = "galaxy_nfwkuzmin_disk_bfield_shield_"
run_comment     = "Isolated Galaxy with Disk and Bfield"
log_file        = "galaxy_wt_nfwkuzmindiskbfield_shield.log"

#	Restart 
restart                  = .true.
checkpointFileNumber = 33
plotFileNumber 	 = 47
#particleFileNumber = 01

# 	Output timing
wall_clock_checkpoint    = 5400.
#  plotFileIntervalStep     = 1
plotFileIntervalTime     = 0.25E15
particleFileIntervalTime = 1.5E15
checkpointFileIntervalTime = 1.5E15

#	Running time, timestep parameters
dtinit          = 5.0E12
dtmin           = 1.0E9
dtmax           = 1.0E16

nend            = 20000
tmax            = 2.E16#1.151E16 #6.4E16

#earlyBlockDistAdjustment = .false.

eachProcWritesSummary = .false.

plot_var_1      = "dens"
plot_var_2      = "temp"
plot_var_3      = "pres"
plot_var_4      = "gpot"
plot_var_5      = "magx"
plot_var_6      = "magy"
plot_var_7      = "magz"
plot_var_8      = "magp"
plot_var_9      = "divb"
plot_var_10     = "velx"
plot_var_11     = "vely"
plot_var_12     = "velz"


#		Gravity

useGravity = .true.
mpole_lmax	= 6
mg_maxResidualNorm = 1.0E-6
mg_printNorm	= .false.


b = 0.

#       Hydro parameters

MinRefinementDensity = 1.0e-26
cfl                  = 0.8
smlrho                     = 1.0e-34
smallp                     = 1.0e-22
smallt                     = 1.0e+3
smalle                     = 1.0e+10
smallx                     = 1.0e-10
rho_Ambient                = 2.0e-27
P_Ambient                  = 2.0E-11
T_Ambient                  = 5.0E7
v_Galaxy                   = 6.1065E7
Bvalx = 0.5E-6 # 0.0 # input B_x field, in microGauss
Bvaly = 0.0 # 0.5E-6 # 
Bvalz = 0.0 # 0.5E-6 # 
B0    = 0.5E-6

convertToConsvdInMeshInterp  = .true.
monotone        = .true.

gamma              = 1.666666666667
eos_singleSpeciesA = 0.59242761692650336
eos_singleSpeciesZ = 1.111358574610245
eintSwitch         = 1.0e-4
ppm_modifystates   = .TRUE.

plasmaBeta = 100.
unitSystem = "none"

#       DivB control switch
# killdivb        = .true.

#       Flux Conservation for AMR
flux_correct    = .true.

useCool = .false.
useConductivity = .false.
dt_diff_factor  = 1.0
saturatedConduction = .false.

#  STS, see Flash User Guide sec 7.1, table 7.1
useSTS          = .false.
useSTSforDiffusion = .false.
nuSTS = 0.01
nstepTotalSTS = 10

## -------------------------------------------------------------##
##  SWITCHES SPECIFIC TO THE UNSPLIT STAGGERED MESH MHD SOLVER  ##
#       I. INTERPOLATION SCHEME:
order           = 3      # Interpolation order (First/Second/Third order)
slopeLimiter    = "mc"   # Slope limiters (minmod, mc, vanLeer, hybrid, limited)
LimitedSlopeBeta= 1.     # Slope parameter for the "limited" slope by Toro
charLimiting    = .false. # Characteristic limiting vs. Primitive limiting
use_steepening  = .false.# Contact steepening for PPM

#       II. MAGNETIC(B) AND ELECTRIC(E) FIELDS:
E_modification  = .false.            # High order algorithm for E-field construction
energyFix       = .false.           # Update magnetic energy using staggered B-fields
ForceHydroLimit = .false.           # Pure Hydro Limit (B=0)
prolMethod      = "injection_prol"    # Prolongation method (injecton_prol, balsara_prol)


#       III. RIEMANN SOLVERS:
RiemannSolver   = "hllc"       # Roe, HLL, HLLC, HLLD, LLF
shockInstabilityFix = .false.  # Carbuncle instability fix for the Roe solver
entropy         = .false.      # Entropy fix for the Roe solver
EOSforRiemann   = .false.      # Call EoS during Riemann solves

#       IV. STRONG SHOCK HANDELING SCHEME:
shockDetect     = .false.     # Shock Detect for numerical stability
## -------------------------------------------------------------##


More information about the flash-users mailing list