mcdc.Source¶
- class mcdc.Source(name: str = '', position: Iterable[float] | None = None, x: Iterable[float] | None = None, y: Iterable[float] | None = None, z: Iterable[float] | None = None, direction: Iterable[float] | None = None, white_direction: Iterable[float] | None = None, isotropic: bool | None = None, polar_cosine: Iterable[float] | None = None, azimuthal: Iterable[float] | None = None, energy: float | ndarray[tuple[int, ...], dtype[float64]] | None = None, energy_group: int | ndarray[tuple[int, ...], dtype[int64]] | None = None, time: float | Iterable[float] = 0.0, particle_type: str = 'neutron', probability: float = 1.0)¶
Define a particle source.
Parameters¶
- namestr, optional
User label.
- positionarray_like of float, optional
Point-source position
[x, y, z]in cm.- xarray_like of float, optional
Source extent along x:
[x_min, x_max]in cm.- yarray_like of float, optional
Source extent along y:
[y_min, y_max]in cm.- zarray_like of float, optional
Source extent along z:
[z_min, z_max]in cm.- directionarray_like of float, optional
Mono-directional source direction
[ux, uy, uz].- white_directionarray_like of float, optional
White (cosine-weighted) boundary source normal direction.
- isotropicbool, optional
If True, source emits isotropically.
- polar_cosinearray_like of float, optional
Polar cosine bounds
[mu_min, mu_max].- azimuthalarray_like of float, optional
Azimuthal angle bounds
[azi_min, azi_max].- energyfloat or ndarray, optional
Source energy in eV (mono-energetic) or a tabulated PDF.
- energy_groupint or ndarray, optional
Energy group index (mono-group) or a PMF array.
- timefloat or array_like of float, optional
Emission time (s) or time range
[t_min, t_max].- probabilityfloat, optional
Relative source probability weight.
Returns¶
- Source
The source object.