srxraylib.profiles.benders package
Submodules
srxraylib.profiles.benders.bender_io module
I/O utilities for mirror bender profiles.
- class srxraylib.profiles.benders.bender_io.BenderFitParameters(optimized_length=None, n_fit_steps=None)[source]
Bases:
object
- class srxraylib.profiles.benders.bender_io.BenderMovement(position_upstream=None, position_downstream=None)[source]
Bases:
object- property position_downstream
- property position_upstream
- class srxraylib.profiles.benders.bender_io.BenderOuputData(x=None, y=None, ideal_profile=None, bender_profile=None, correction_profile=None, titles=None, z_bender_correction=None, z_figure_error=None, z_bender_correction_no_figure_error=None)[source]
Bases:
object
- class srxraylib.profiles.benders.bender_io.BenderStructuralParameters(dim_x_minus=None, dim_x_plus=None, bender_bin_x=None, dim_y_minus=None, dim_y_plus=None, bender_bin_y=None, p=None, q=None, grazing_angle=None, E=None, h=None, figure_error_mesh=None, workspace_units_to_m=None, workspace_units_to_mm=None)[source]
Bases:
object
srxraylib.profiles.benders.bender_manager module
Base class for mirror bender managers.
- class srxraylib.profiles.benders.bender_manager.AbstractBenderManager(bender_structural_parameters: BenderStructuralParameters)[source]
Bases:
object- property bender_structural_parameters
- fit_bender_at_focus_position(bender_fit_parameters: BenderFitParameters) BenderOuputData[source]
- get_bender_shape_from_movement(bender_movement: BenderMovement) BenderOuputData[source]
- get_q_downstream(bender_movement: BenderMovement)[source]
- get_q_ideal_surface(bender_movement: BenderMovement)[source]
- get_q_upstream(bender_movement: BenderMovement)[source]
- class srxraylib.profiles.benders.bender_manager.CalibratedBenderManager(bender_structural_parameters: BenderStructuralParameters, calibration_parameters: CalibrationParameters)[source]
Bases:
AbstractBenderManager- get_q_downstream(bender_movement: BenderMovement)[source]
- get_q_upstream(bender_movement: BenderMovement)[source]
- class srxraylib.profiles.benders.bender_manager.CalibrationParameters(parameters_upstream, parameters_downstream)[source]
Bases:
object- property downstream
- property upstream
- class srxraylib.profiles.benders.bender_manager.StandardBenderManager(bender_structural_parameters: BenderStructuralParameters)[source]
Bases:
AbstractBenderManager- get_q_downstream(bender_movement: BenderMovement)[source]
- get_q_upstream(bender_movement: BenderMovement)[source]
srxraylib.profiles.benders.fixed_rods_bender_manager module
Bender manager for fixed-rod mirror bender systems.
- class srxraylib.profiles.benders.fixed_rods_bender_manager.FixedRodsBenderFitParameters(optimized_length=None, n_fit_steps=None, R0=None, R0_max=None, R0_min=None, R0_fixed=False, eta=None, eta_max=None, eta_min=None, eta_fixed=False, W2=None, W2_max=None, W2_min=None, W2_fixed=False)[source]
Bases:
BenderFitParameters
- class srxraylib.profiles.benders.fixed_rods_bender_manager.FixedRodsBenderOuputData(x=None, y=None, ideal_profile=None, bender_profile=None, correction_profile=None, titles=None, z_bender_correction=None, z_figure_error=None, z_bender_correction_no_figure_error=None, R0_out=None, eta_out=None, W2_out=None, alpha=None, W0=None, F_upstream=None, F_downstream=None)[source]
Bases:
BenderOuputData
- class srxraylib.profiles.benders.fixed_rods_bender_manager.FixedRodsBenderStructuralParameters(dim_x_minus=None, dim_x_plus=None, bender_bin_x=None, dim_y_minus=None, dim_y_plus=None, bender_bin_y=None, p=None, q=None, grazing_angle=None, E=None, h=None, figure_error_mesh=None, r=None, l=None, R0=None, eta=None, W2=None, workspace_units_to_m=None, workspace_units_to_mm=None)[source]
Bases:
BenderStructuralParameters
- class srxraylib.profiles.benders.fixed_rods_bender_manager.FixedRodsCalibratedBenderManager(bender_structural_parameters: FixedRodsBenderStructuralParameters, calibration_parameters: CalibrationParameters)[source]
Bases:
CalibratedBenderManager- fit_bender_at_focus_position(bender_fit_parameters: FixedRodsBenderFitParameters) FixedRodsBenderOuputData[source]
- get_bender_shape_from_movement(bender_movement: BenderMovement) FixedRodsBenderOuputData[source]
- class srxraylib.profiles.benders.fixed_rods_bender_manager.FixedRodsStandardBenderManager(bender_structural_parameters: FixedRodsBenderStructuralParameters)[source]
Bases:
StandardBenderManager- fit_bender_at_focus_position(bender_fit_parameters: FixedRodsBenderFitParameters) FixedRodsBenderOuputData[source]
- get_bender_shape_from_movement(bender_movement: BenderMovement) FixedRodsBenderOuputData[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.bender_height_profile(y, p, q, grazing_angle, R0, eta, alpha)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.bender_slope_profile(y, p, q, grazing_angle, W1, L, R0, eta, W2)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.calculate_W0(W1, alpha, L, p, q, grazing_angle)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.calculate_bender_forces(q, R0, eta, E, W0, L, h, r)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.calculate_bender_slope_variation(y, fprime_, K0, eta, alpha)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.calculate_ideal_slope_variation(y, fprime, K0id, mu, nu)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.calculate_taper_factor(W1, W2, L, p, q, grazing_angle)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.focal_distance_prime(p, q, grazing_angle)[source]
- srxraylib.profiles.benders.fixed_rods_bender_manager.ideal_height_profile(y, p, q, grazing_angle)[source]
srxraylib.profiles.benders.flexural_hinge_bender_manager module
Bender manager for flexural-hinge mirror bender systems.
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.BenderType[source]
Bases:
object- DOUBLE_MOMENTUM = 1
- SINGLE_MOMENTUM = 0
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.FlexuralHingeBenderFitParameters(optimized_length=None, n_fit_steps=None, M1=None, M1_min=None, M1_max=None, M1_fixed=False, e=None, e_min=None, e_max=None, e_fixed=False, ratio=None, ratio_min=None, ratio_max=None, ratio_fixed=False)[source]
Bases:
BenderFitParameters
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.FlexuralHingeBenderOuputData(x=None, y=None, ideal_profile=None, bender_profile=None, correction_profile=None, titles=None, z_bender_correction=None, z_figure_error=None, z_bender_correction_no_figure_error=None, M1_out=None, e_out=None, ratio_out=None)[source]
Bases:
BenderOuputData
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.FlexuralHingeBenderStructuralParameters(dim_x_minus=None, dim_x_plus=None, bender_bin_x=None, dim_y_minus=None, dim_y_plus=None, bender_bin_y=None, p=None, q=None, grazing_angle=None, E=None, h=None, figure_error_mesh=None, shape=None, bender_type=None, M1=None, e=None, ratio=None, workspace_units_to_m=None, workspace_units_to_mm=None)[source]
Bases:
BenderStructuralParameters
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.FlexuralHingeCalibratedBenderManager(bender_structural_parameters: FlexuralHingeBenderStructuralParameters, calibration_parameters: CalibrationParameters)[source]
Bases:
CalibratedBenderManager- fit_bender_at_focus_position(bender_fit_parameters: FlexuralHingeBenderFitParameters) FlexuralHingeBenderOuputData[source]
- get_bender_shape_from_movement(bender_movement: BenderMovement) FlexuralHingeBenderOuputData[source]
- class srxraylib.profiles.benders.flexural_hinge_bender_manager.FlexuralHingeStandardBenderManager(bender_structural_parameters: FlexuralHingeBenderStructuralParameters)[source]
Bases:
StandardBenderManager- fit_bender_at_focus_position(bender_fit_parameters: FlexuralHingeBenderFitParameters) FlexuralHingeBenderOuputData[source]
- get_bender_shape_from_movement(bender_movement: BenderMovement) FlexuralHingeBenderOuputData[source]