Skip to content

Conversation

mingzeng8
Copy link

A new profile code 4 is implemented, for reading the beam particles from a particle raw h5 file of a OSIRIS or QuickPIC output. The example input deck is following.

{
"simulation" : !note
{
"nodes" : [32,1],
"indx" : 8,
"indy" : 8,
"indz" : 9,
"box" : {
"x" : [-4.0,4.0],
"y" : [-4.0,4.0],
"z" : [0.0,10.0]},
"boundary" : "conducting",
"n0" : 1.0e16,
"time" : 3062.,
"dt" : 2.0,
"nbeams" : 1,
"nspecies" : 1,
"dump_restart" : false,
"ndump_restart" : 4000,
"read_restart" : false,
"restart_timestep" : 1,
"iter" : 1,
"verbose" : 0
},

"beam" :
[
{
"evolution" : true,
"profile" : 4,
"npmax" : 4200000,
"q" : -1.0,
"m" : 1.0,
"file_name" : "driver.h5",
! format can be 0 (OSIRIS, 1,2,3 correspond to z,x,y) or 1 (QuickPIC, 1,2,3 correspond to x,y,z)
"format" : 1,
! The actual number of particles of a macro particle is (cell_volumnn0_per_cc1e6)q
! which should be constant between codes, thus
! q_ratio = (cell_volumn_in_old_sim
n0_in_old_sim)/(cell_volumn_in_new_sim*n0_in_new_sim)
! /raw_sampling_ratio.
"q_ratio" : 1.,
"offset" : [0.0,0.0,0.0],
! Offset in x, y, z. If the h5 has OSIRIS format, z in this simulation is offset_z - z in h5.
"quiet_start" : true,
"diag" :
[
{
"name" : ["charge"],
"ndump" : 0
},
{
"name" : ["charge"],
"ndump" : 10,
"slice" : [["xz", 129],["yz",129]]
},
{
"name" : ["raw"],
"ndump" : 10,
"sample" : 1
}
]
},
],

"species" :
[
{
"profile" : 0,
"ppc" : [2,2],
"q" : -1.0,
"m" : 1.0,
"density" : 1.0,
"longitudinal_profile" : "uniform",
"diag" :
[
{
"name" : ["charge", "jx"],
"ndump" : 0
},
{
"name" : ["charge"],
"ndump" : 10,
"slice" : [["xz", 129],["yz",129]]
}
]
}
],

"field" :
{
"diag" :
[
{
"name" : ["ex","ez"],
"ndump" : 0
},
{
"name" : ["ex","bx","ey","by","ez"],
"ndump" : 10,
"slice" : [["xz", 129],["yz", 129]]
}
]

}
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant