py21cmfast.RectilinearLightconer ================================ .. py:class:: py21cmfast.RectilinearLightconer Bases: :py:obj:`Lightconer` The class rectilinear lightconer. .. !! processed by numpydoc !! .. py:method:: __init_subclass__() :classmethod: Enabe plugin-style behaviour. .. !! processed by numpydoc !! .. py:method:: between_redshifts(min_redshift, max_redshift, resolution, cosmo=Planck18, **kw) :classmethod: Construct a Lightconer with regular comoving dist. slices between two z's. .. !! processed by numpydoc !! .. py:method:: coeval_subselect(lcd, coeval, coeval_res) Sub-select the coeval slice corresponding to this coeval distance. .. !! processed by numpydoc !! .. py:method:: construct_lightcone(lcd, box) Construct slices of the lightcone between two coevals. .. !! processed by numpydoc !! .. py:method:: construct_los_velocity_lightcone(lcd, velocity) Construct slices of the lightcone between two coevals. .. !! processed by numpydoc !! .. py:method:: find_required_lightcone_limits(classy_output, inputs) Obtain the redshift limits required for the lightcone to include RSDs. This is a *crude* estimation of the maximum/minimum lightcone limits that are required in order to simulate all the "mass" that enters the requested ligthcone (due to RSD shift). We use the rms of the velocity field from linear perturbation theory in order to determine the required lightcone limits. If no limit is found, it means that the limits of node_redshifts are not sufficient and an error is raised. :Parameters: * **classy_output** (*classy.Class*) -- An object containing all the information from the CLASS calculation. * **inputs** (*InputParameters*) -- The input parameters corresponding to the box. :returns: **lcd_limits_rsd** (*list*) -- List that contains the limits of the required lightcone distances. .. !! processed by numpydoc !! .. py:method:: get_lc_distances_in_pixels(resolution) Get the lightcone distances in pixels, given a resolution. .. !! processed by numpydoc !! .. py:method:: get_shape(simulation_options) Get the shape of the lightcone. .. !! processed by numpydoc !! .. py:method:: make_lightcone_slices(c1, c2) Make lightcone slices out of two coeval objects. :Parameters: **c1, c2** (*Coeval*) -- The coeval boxes to interpolate. :returns: * *quantity* -- The field names of the quantities required by the lightcone. * *lcidx* -- The indices of the lightcone to which these slices belong. * *scalar_field_slices* -- The scalar fields evaluated on the "lightcone" slices that exist within the redshift range spanned by ``c1`` and ``c2``. .. !! processed by numpydoc !! .. py:method:: redshift_interpolation(dc, coeval_a, coeval_b, dc_a, dc_b, kind = 'mean') Perform redshift interpolation to a new box given two bracketing coevals. .. !! processed by numpydoc !! .. py:method:: validate_options(inputs, include_dvdr_in_tau21, apply_rsds, classy_output = None) Validate 21cmFAST options. .. !! processed by numpydoc !! .. py:method:: with_equal_cdist_slices(min_redshift, max_redshift, resolution, cosmo=Planck18, **kw) :classmethod: Create a lightconer with equally spaced slices in comoving distance. This method is deprecated and will be removed in future versions. Instead, use `between_redshifts` to create a lightconer with equally spaced slices in comoving distance. .. !! processed by numpydoc !! .. py:attribute:: __slots__ :value: () .. py:attribute:: cosmo :type: astropy.cosmology.FLRW .. py:attribute:: index_offset :type: int .. py:attribute:: interp_kinds :type: dict[str, str] .. py:attribute:: lc_distances :type: astropy.units.Quantity[_LENGTH] .. py:property:: lc_redshifts :type: numpy.ndarray The redshifts of the lightcone slices. .. !! processed by numpydoc !! .. py:attribute:: line_of_sight_axis :type: int .. py:attribute:: quantities :type: tuple[str]