示例#1
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['half width'] = [
         format.quantity(self.half_width_x.to(u.arcmin))
     ]
     dataframe['half height'] = [
         format.quantity(self.half_width_y.to(u.arcmin))
     ]
     return dataframe
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['obscured half-width'] = [
         format.quantity(self.obscured_half_width.to(u.mm))
     ]
     # dataframe['number of sides'] = [self.num_sides]
     return dataframe
示例#3
0
    def dataframe(self) -> pandas.DataFrame:
        dataframe = super().dataframe
        for coeff, name in zip(self.coefficients, self.coefficient_names):
            coeff = coeff[..., 0, 0, 0]
            if (np.abs(coeff.value) > 0.1).any():
                sci_notation = False
            else:
                sci_notation = True
            if np.isscalar(coeff):
                dataframe[name] = [
                    fmt.quantity(coeff, scientific_notation=sci_notation)
                ]
            else:
                dataframe[name] = [
                    fmt.quantity(c, scientific_notation=sci_notation)
                    for c in coeff.T.flatten()
                ]
        if self.output_name is not None:
            dataframe.index = [self.output_name]

        return dataframe
示例#4
0
 def set_variable_quantity(
         self,
         name: str,
         value: u.Quantity,
         scientific_notation: typ.Optional[bool] = None,
         digits_after_decimal: int = 3,
 ) -> typ.NoReturn:
     self.set_variable(
         name=name,
         value=pylatex.NoEscape(format.quantity(
             a=value,
             scientific_notation=scientific_notation,
             digits_after_decimal=digits_after_decimal,
         ))
     )
示例#5
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['inclination'] = [
         format.quantity(self.inclination.to(u.deg))
     ]
     dataframe['clocking'] = [format.quantity(self.clocking.to(u.deg))]
     dataframe['clear radius'] = [
         format.quantity(self.clear_radius.to(u.mm))
     ]
     dataframe['border width'] = [
         format.quantity(self.border_width.to(u.mm))
     ]
     dataframe['thickness'] = [format.quantity(self.thickness.to(u.nm))]
     dataframe['oxide thickness'] = [
         format.quantity(self.thickness_oxide.to(u.nm))
     ]
     dataframe['mesh ratio'] = [
         format.quantity(self.mesh_ratio.to(u.percent))
     ]
     dataframe['mesh pitch'] = [format.quantity(self.mesh_pitch)]
     return dataframe
示例#6
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['inclination'] = [
         format.quantity(self.inclination.to(u.deg))
     ]
     dataframe['tangential radius'] = [
         format.quantity(self.tangential_radius.to(u.mm))
     ]
     dataframe['sagittal radius'] = [
         format.quantity(self.sagittal_radius.to(u.mm))
     ]
     dataframe['slope error'] = [format.quantity(self.slope_error.value)]
     dataframe['ripple'] = [format.quantity(self.ripple.value)]
     dataframe['microroughness'] = [
         format.quantity(self.microroughness.value)
     ]
     dataframe['nominal alpha'] = [
         format.quantity(self.nominal_input_angle.to(u.deg))
     ]
     dataframe['nominal beta'] = [
         format.quantity(self.nominal_output_angle.to(u.deg))
     ]
     dataframe['diffraction order'] = [
         format.quantity(self.diffraction_order)
     ]
     dataframe['nominal ruling density'] = [
         format.quantity(self.ruling_density.to(1 / u.mm))
     ]
     dataframe['linear ruling coefficient'] = [
         format.quantity(self.ruling_spacing_coeff_linear,
                         scientific_notation=True)
     ]
     dataframe['quadratic ruling coefficient'] = [
         format.quantity(self.ruling_spacing_coeff_quadratic,
                         scientific_notation=True)
     ]
     dataframe['cubic ruling coefficient'] = [
         format.quantity(self.ruling_spacing_coeff_cubic,
                         scientific_notation=True)
     ]
     dataframe['aperture wedge angle'] = [
         format.quantity(self.aper_wedge_angle.to(u.deg))
     ]
     dataframe['inner half-width'] = [
         format.quantity(self.inner_half_width.to(u.mm))
     ]
     dataframe['outer half-width'] = [
         format.quantity(self.outer_half_width.to(u.mm))
     ]
     dataframe['border width'] = [
         format.quantity(self.border_width.to(u.mm))
     ]
     dataframe['inner border width'] = [
         format.quantity(self.inner_border_width.to(u.mm))
     ]
     dataframe['dynamic clearance'] = [
         format.quantity(self.dynamic_clearance.to(u.mm))
     ]
     dataframe['substrate thickness'] = [
         format.quantity(self.substrate_thickness.to(u.mm))
     ]
     return dataframe
示例#7
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['clear radius'] = [format.quantity(self.clear_radius.to(u.mm))]
     return dataframe
示例#8
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['clear radius'] = [format.quantity(self.clear_radius.to(u.mm))]
     dataframe['mechanical radius'] = [format.quantity(self.mech_radius.to(u.mm))]
     dataframe['number of sides'] = [self.num_sides]
     return dataframe
示例#9
0
 def dataframe(self) -> pandas.DataFrame:
     dataframe = super().dataframe
     dataframe['manufacturer'] = [self.manufacturer]
     dataframe['focus adjustment range'] = [
         format.quantity(self.range_focus_adjustment)
     ]
     dataframe['inclination'] = [
         format.quantity(self.inclination.to(u.deg))
     ]
     dataframe['pixel width'] = [format.quantity(self.pixel_width.to(u.um))]
     dataframe['pixel array shape'] = [self.num_pixels]
     dataframe['right border width'] = [
         format.quantity(self.border_width_right.to(u.mm))
     ]
     dataframe['left border width'] = [
         format.quantity(self.border_width_left.to(u.mm))
     ]
     dataframe['top border width'] = [
         format.quantity(self.border_width_top.to(u.mm))
     ]
     dataframe['bottom border width'] = [
         format.quantity(self.border_width_bottom.to(u.mm))
     ]
     dataframe['dynamic clearance'] = [
         format.quantity(self.dynamic_clearance.to(u.mm))
     ]
     dataframe['overscan pixels'] = [self.npix_overscan]
     dataframe['blank pixels'] = [self.npix_blank]
     dataframe['temperature'] = [format.quantity(self.temperature)]
     dataframe['gain'] = [format.quantity(self.gain)]
     dataframe['readout noise'] = [format.quantity(self.readout_noise)]
     dataframe['dark current'] = [format.quantity(self.dark_current)]
     dataframe['charge diffusion'] = [
         format.quantity(self.charge_diffusion)
     ]
     dataframe['frame transfer time'] = [
         format.quantity(self.time_frame_transfer)
     ]
     dataframe['readout time'] = [format.quantity(self.time_readout)]
     dataframe['exposure length'] = [format.quantity(self.exposure_length)]
     dataframe['minimum exposure length'] = [
         format.quantity(self.exposure_length_min)
     ]
     dataframe['maximum exposure length'] = [
         format.quantity(self.exposure_length_max)
     ]
     dataframe['exposure length increment'] = [
         format.quantity(self.exposure_length_increment)
     ]
     dataframe['analog-to-digital bits'] = [self.bits_analog_to_digital]
     dataframe['trigger index'] = [self.index_trigger]
     dataframe['synchronization error'] = [
         format.quantity(self.error_synchronization)
     ]
     return dataframe