pysrw.computations.computeSrWfrMultiProcess

pysrw.computations.computeSrWfrMultiProcess#

pysrw.computations.computeSrWfrMultiProcess(numCores, particleBeam, magnetsContainer, observer, wavelength, relPrec=None, srApprox=None)[source]#

Compute the wavefront of a coherent Gaussian beam. Multiprocessing version of computeSrWfr().

Parameters:
  • numCores – the number of processes to split the computation into. Maximum value limited to the CPU count of the machine.

  • particleBeam – particle instance of ParticleBeam.

  • magnetsContainer – container instance of MagnetsContainer.

  • observer – mesh instance of Observer.

  • wavelength – observation wavelength in nanometers.

  • relPrec (optional) – relative precision target for the convergence of the computation. If None, the default value set in CONFIG is used. Defaults to None.

  • calcMeth (optional) – one of the configuration.SR_APPROX approximation methods to use for the computation. If None, the default value set in CONFIG is used. Defaults to None.

Returns:

the calculated wavefront.

Return type:

Wavefront