Functionality concerned with setting the radiative transfer cascade. More...
Functions | |
| np.ndarray | gateau.cascade.johnson_nyquist_psd (np.ndarray f_src, float T) |
| Johnson-Nyquist power spectral density. More... | |
| tuple[np.ndarray, np.ndarray] | gateau.cascade.window_trans (np.ndarray f_src, float thickness, float tandelta, float neff, bool window_AR, float T_parasitic_refl, float T_parasitic_refr) |
| Calculates the window transmission. More... | |
| np.ndarray | gateau.cascade.eta_Al_ohmic (np.ndarray f_src) |
| Calculate Ohmic losses for aluminium over array of sky frequencies. More... | |
| np.ndarray | gateau.cascade.sizer (Union[np.ndarray, float] eta, np.ndarray f_src, np.ndarray f_eta=None) |
| Resize efficiency term to new size. More... | |
| list[dict[any, any]] | gateau.cascade.read_from_folder (str cascade_folder, str yaml_name) |
| Generate a cascade list from a cascade folder. More... | |
| None | gateau.cascade.save_cascade (list[dict[any, any]] cascade_list, str save_folder, str yaml_name) |
| tuple[np.ndarray, np.ndarray] | gateau.cascade.get_cascade (list[dict[str, any]] cascade_list, np.ndarray f_src) |
| Calculate a cascade list, consisting of efficiency and psd per stage. More... | |
Variables | |
| float | gateau.cascade.TCMB = 2.725 |
Functionality concerned with setting the radiative transfer cascade.
| np.ndarray gateau.cascade.eta_Al_ohmic | ( | np.ndarray | f_src | ) |
Calculate Ohmic losses for aluminium over array of sky frequencies.
| f_src | Numpy array containing source frequencies. Units: Hz |
| tuple[np.ndarray, np.ndarray] gateau.cascade.get_cascade | ( | list[dict[str, any]] | cascade_list, |
| np.ndarray | f_src | ||
| ) |
Calculate a cascade list, consisting of efficiency and psd per stage.
| cascade_list | List containing, per element, a dictionary containing the efficiency and coupling temperature of each stage in the cascade. For reflective stages, the dictionary should contain either:
|
For refractive stages, the dictionary should contain:
Aside from efficiencies and temperatures, each stage can have a name, set with fieldname 'name'. If multiple subsequent stages couple to the same temperature, they can also be grouped. The efficiencies will be precomposed and a total efficiency is calculated. Then, these multiple stages are merged into a single stage and treated as such. This significantly unburdens the CUDA calculation kernel and should hence be used. The fieldname for grouping is 'groupname'. Subsequent stages to be grouped together must have the same group name.
| f_src | Array with source frequencies. Units: GHz. |
| np.ndarray gateau.cascade.johnson_nyquist_psd | ( | np.ndarray | f_src, |
| float | T | ||
| ) |
Johnson-Nyquist power spectral density.
| f_src | Source frequencies. Units: Hz. |
| T | Temperature. Units: K. |
| list[dict[any, any]] gateau.cascade.read_from_folder | ( | str | cascade_folder, |
| str | yaml_name | ||
| ) |
Generate a cascade list from a cascade folder.
The folder should contain a YAML file containing the cascade list. Any vector-valued efficiency terms should be provided inside the folder as a CSV file, with the first column containing frequencies at which the terms are evaluated and the second column containing the terms themselves. Then, the CSV can be referenced inside the YAML by passing the CSV name (including .csv) to the eta_coup field inside the YAML.
| cascade_folder | String containing path to folder containing cascade YAML and any related CSV files. |
| yaml_name | String containing the name of the YAML file containing the cascade. |
| np.ndarray gateau.cascade.sizer | ( | Union[np.ndarray, float] | eta, |
| np.ndarray | f_src, | ||
| np.ndarray | f_eta = None |
||
| ) |
Resize efficiency term to new size.
Used to vectorize or interpolate on efficiency terms.
If eta is a scalar, a constant eta array is returned with the same size as f_src.
If eta is an array with eta.size != f_src.size, an array containing frequencies at which eta is evaluated should also be passed. A 1D interpolation on f_src is then performed to evaluate eta on f_src.
If efficiency is array with same size as f_src, it is returned as-is.
| eta | Efficiency term of some stage. |
| f_src | Numpy array containing source frequencies. Units: Hz. |
| f_eta | Numpy array containing frequencies at which eta is evaluated. Units: Hz. Should only be passed when 1D interpolation is required in case eta.size != f_src.size. Defaults to None. |
| tuple[np.ndarray, np.ndarray] gateau.cascade.window_trans | ( | np.ndarray | f_src, |
| float | thickness, | ||
| float | tandelta, | ||
| float | neff, | ||
| bool | window_AR, | ||
| float | T_parasitic_refl, | ||
| float | T_parasitic_refr | ||
| ) |
Calculates the window transmission.
| f_src | Source frequencies. Units: Hz. |
| thickness | Thickness of the window/lens. Units: m. |
| tandelta | Loss tangent of window/lens dielectric. |
| neff | Refractive index of dielectric. Set to 1 to remove reflections. Units : None. |
| window_AR | Whether the window is supposed to be coated by Ar (True) or not (False). |
| T_parasitic_refl | Temperature of parasitic source seen in reflection, w.r.t. instrument. |
| T_parasitic_refr | Temperature of parasitic source seen in refraction.. |