pencil.diag.particle.diffusion

Classes

DiffusionData

DiffusionData -- holds diffusion data for particles.

Functions

diffusion([directions, trange, sim, OVERWRITE, quiet, ...])

Calculate particle diffusion via stalked particles: PSTALK

Module Contents

pencil.diag.particle.diffusion.diffusion(directions=['x'], trange=[0, -1], sim='.', OVERWRITE=False, quiet=True, jump_distance=0.5, use_existing_pstalk_sav=False)

Calculate particle diffusion via stalked particles: PSTALK Therefore, it read PSTALK files from Pencil Code using IDL by using the IDL<->Python Bridge. It may be activated manually!

Generated DiffusionData object will be stored in:

sim.pc_datadir/particle/diffusion/<direction>_<t_start>:<t_end>

and be reloaded and returned if already existing and OVERWRITE=False!

Parameters:
  • sim (-) –

    simulation object, but also simulations object or list of simulations or path of simulation,

    default =’.’

  • for (- directions list or directions to calculate diffusion) – default =[‘x’]

  • ['x' (e.g.) – default =[‘x’]

  • 'y' – default =[‘x’]

  • 'z'] – default =[‘x’]

:param : default =[‘x’] :param - trange range in code time for which diffusion shall be calc.: default =[0, -1] :param - jump_distance expressed in L_: half the domain size :type - jump_distance expressed in L_: x,y,z :param - OVERWRITE previously calculated diffusions shall be overwritten: default =False :param - quiet verbosity: :param default =False: :param - use_existing_pstalk_sav: use existing <sim.datadir>/data/pc/tmp/pstalk.sav for speed up

Returns:

diffusion object for simulation, if function is called for a set of simulations, a dictionary with all diffusion objects and simulation-name as key is returned

class pencil.diag.particle.diffusion.DiffusionData(direction='x', trange=[0, -1], sim='.', OVERWRITE=False, quiet=True, jump_distance=0.5, use_existing_pstalk_sav=False)

Bases: object

DiffusionData – holds diffusion data for particles.