xopto.mcvox.mcsurface.probe.fiberarray module¶
- class FiberArray(fibers: List[xopto.mcbase.mcutil.fiber.FiberLayout], diameter: float = 0.0, reflectivity: float = 0.0, position: Tuple[float, float] = (0.0, 0.0))[source]¶
Bases:
xopto.mcvox.mcsurface.base.SurfaceLayoutAny
Optical fiber probe layout for an array of optical fibers that are optionally tilted (direction parameter). The optical fibers are always polished in a way that forms a tight optical contact with the surface of the sample.
- Parameters
fibers (List[FiberLayout]) – A list of optical fiber layouts.
diameter (float) – Outer diameter of the optical fiber probe. Set to 0 if unused.
reflectivity (float) – Reflectivity of the optical fiber probe stainless steeel surface.
position ((float, float)) – Position of the optical probe.
- cl_declaration(mc: xopto.mcbase.mcobject.McObject) → str[source]¶
Structure that defines the surface layout in the Monte Carlo simulator.
- cl_implementation(mc: xopto.mcbase.mcobject.McObject) → str[source]¶
Implementation of the surface layout in the Monte Carlo simulator.
- cl_pack(mc: xopto.mcbase.mcobject.McObject, target: Optional[xopto.cl.cltypes.Structure] = None) → xopto.cl.cltypes.Structure[source]¶
Fills the structure (target) with the data required by the Monte Carlo simulator. See the
FiberArray.cl_type()
method for a detailed list of fields.- Parameters
mc (mcobject.McObject) – Monte Carlo simulator instance.
target (cltypes.Structure) – Ctypes structure that is filled with the source data.
- Returns
target – Filled structure received as an input argument or a new instance if the input argument target is None.
- Return type
- property diameter: float¶
Outer diameter of the optical fiber probe tip.
- fiber_position(index: int) → Tuple[float, float][source]¶
Returns the position of the fiber center as a tuple (x, y).
- Parameters
index (int) – Fiber index from 0 to n -1.
- Returns
position – The position of the fiber center as a tuple (x, y).
- Return type
(float, float)
- property fibers: List[xopto.mcbase.mcutil.fiber.FiberLayout]¶
List of optical fibers.
- static fromdict(data: dict) → xopto.mcvox.mcsurface.probe.fiberarray.FiberArray[source]¶
Create an accumulator instance from a dictionary.
- Parameters
data (dict) – Dictionary created by the
FiberArray.todict()
method.
- property n: int¶
Number of optical fiber in the array.
- property position: Tuple[float, float]¶
Position of the fiber array center as a tuple (x, y).
- property reflectivity: float¶
Reflectivity of the stainless steel optical fiber probe tip.
- todict() → dict[source]¶
Save the surface layout configuration to a dictionary. Use the
FiberArray.fromdict()
method to create a new surface layout instance from the returned data.- Returns
data – Accumulator configuration as a dictionary.
- Return type
dict
- update(other: xopto.mcvox.mcsurface.probe.fiberarray.FiberArray)[source]¶
Update this surface layout configuration from the other surface layout. The other surface layout must be of the same type as this surface layout or a dict with appropriate fields.
- Parameters
other (FiberArray or dict) – This surface layout is updated with data from this parameter.