The ParticleTracer Module

Module Index

Detailed API

Pusher API

ParticleTracer.Pushers.relativistic_boris_stepMethod
relativistic_boris_step(𝐱, 𝐩, 𝐄, 𝐁)

Performs one step of the relativistic Boris algorithm in natural units (c = 1).

Parameters:

  • 𝐱: Position vector (normalized)
  • 𝐩: Momentum vector (normalized)
  • 𝐄: Electric field vector
  • 𝐁: Magnetic field vector
  • q: Particle charge (normalized)
  • m: Particle rest mass (normalized)
  • Δt: Time step (normalized)

Returns:

  • 𝐱ₙ₊₁: Updated position
  • 𝐩ₙ₊₁: Updated momentum
source

Fields API

DataIO API

ParticleTracer.DataIO.SaveConfigTypeType
SaveConfigType

Configuration type for data saving operations.

Fields:

  • batch_size::Int: Number of particles in each batch
  • output_dir::String: Output directory path
  • timestamp::String: Timestamp of data saving operation
source
ParticleTracer.DataIO.SaveConfigMethod
SaveConfig(; batch_size=1000)

Constructor for SaveConfig instance.

Parameters:

  • batch_size: Number of particles per batch, defaults to 1000

Returns:

  • SaveConfig instance
source
ParticleTracer.DataIO.create_index_fileMethod
create_index_file(config)

Create index file recording information for all batches.

Parameters:

  • config: Save configuration

Index file contains:

  • Total number of particles
  • Batch size
  • Total number of batches
  • Creation time
  • Simulation timestamp
source
ParticleTracer.DataIO.merge_process_filesMethod
merge_process_files(config)

将所有进程的临时数据文件合并为最终批处理文件。 此函数应在所有计算完成后调用,且只应在主进程(进程1)上执行。

参数:

  • config: 保存配置
source
ParticleTracer.DataIO.save_particle_dataMethod
save_particle_data(ptc_data, n, x0, p0, B0, config)

保存粒子数据,使用进程级批处理策略。每个进程写入自己的临时文件,之后合并。

Parameters:

  • ptc_data: 粒子轨迹数据
  • n: 全局粒子编号
  • x0: 初始位置
  • p0: 初始动量
  • B0: 初始磁场
  • config: 保存配置
source
ParticleTracer.DataIO.update_batch_metadata!Method
update_batch_metadata!(file, batch_number, config)

Update or create global metadata for batch file.

Parameters:

  • file: Open HDF5 file
  • batch_number: Current batch number
  • config: Save configuration
source