ARTS
2.0.49
|
#include <cmath>
#include <stdexcept>
#include "check_input.h"
#include "array.h"
#include "logic.h"
#include "gridded_fields.h"
Go to the source code of this file.
Functions | |
void | chk_if_bool (const String &x_name, const Index &x) |
chk_if_bool More... | |
void | chk_if_in_range (const String &x_name, const Index &x, const Index &x_low, const Index &x_high) |
chk_if_in_range More... | |
void | chk_if_increasing (const String &x_name, const ArrayOfIndex &x) |
chk_if_increasing More... | |
void | chk_not_negative (const String &x_name, const Numeric &x) |
chk_not_negative More... | |
void | chk_if_in_range (const String &x_name, const Numeric &x, const Numeric &x_low, const Numeric &x_high) |
chk_if_in_range More... | |
void | chk_vector_length (const String &x_name, ConstVectorView x, const Index &l) |
chk_vector_length More... | |
void | chk_vector_length (const String &x1_name, const String &x2_name, ConstVectorView x1, ConstVectorView x2) |
chk_vector_length More... | |
void | chk_if_increasing (const String &x_name, ConstVectorView x) |
chk_if_increasing More... | |
void | chk_if_decreasing (const String &x_name, ConstVectorView x) |
chk_if_decreasing More... | |
void | chk_if_equal (const String &x1_name, const String &x2_name, ConstVectorView v1, ConstVectorView v2, Numeric margin) |
chk_if_equal More... | |
void | chk_interpolation_grids (const String &which_interpolation, ConstVectorView old_grid, ConstVectorView new_grid, const Index order, const Numeric &extpolfac) |
Check interpolation grids. More... | |
void | chk_interpolation_grids (const String &which_interpolation, ConstVectorView old_grid, const Numeric &new_grid, const Index order, const Numeric &extpolfac) |
Check interpolation grids. More... | |
void | chk_matrix_ncols (const String &x_name, ConstMatrixView x, const Index &l) |
chk_matrix_ncols More... | |
void | chk_matrix_nrows (const String &x_name, ConstMatrixView x, const Index &l) |
chk_matrix_nrows More... | |
void | chk_atm_grids (const Index &dim, ConstVectorView p_grid, ConstVectorView lat_grid, ConstVectorView lon_grid) |
chk_atm_grids More... | |
void | chk_atm_field (const String &x_name, ConstTensor3View x, const Index &dim, ConstVectorView p_grid, ConstVectorView lat_grid, ConstVectorView lon_grid) |
chk_atm_field (simple fields) More... | |
void | chk_atm_field (const String &x_name, ConstTensor4View x, const Index &dim, const Index &nspecies, ConstVectorView p_grid, ConstVectorView lat_grid, ConstVectorView lon_grid) |
chk_atm_field (fields with one more dimension) More... | |
void | chk_atm_surface (const String &x_name, const Matrix &x, const Index &dim, ConstVectorView lat_grid, ConstVectorView lon_grid) |
chk_atm_surface More... | |
void | chk_not_empty (const String &x_name, const Agenda &x) |
chk_not_empty More... | |
void | chk_size (const String &x_name, ConstVectorView x, const Index &c) |
Runtime check for size of Vector. More... | |
void | chk_size (const String &x_name, ConstMatrixView x, const Index &r, const Index &c) |
Runtime check for size of Matrix. More... | |
void | chk_size (const String &x_name, ConstTensor3View x, const Index &p, const Index &r, const Index &c) |
Runtime check for size of Tensor. More... | |
void | chk_size (const String &x_name, ConstTensor4View x, const Index &b, const Index &p, const Index &r, const Index &c) |
Runtime check for size of Tensor. More... | |
void | chk_size (const String &x_name, ConstTensor5View x, const Index &s, const Index &b, const Index &p, const Index &r, const Index &c) |
Runtime check for size of Tensor. More... | |
void | chk_size (const String &x_name, ConstTensor6View x, const Index &v, const Index &s, const Index &b, const Index &p, const Index &r, const Index &c) |
Runtime check for size of Tensor. More... | |
void | chk_size (const String &x_name, ConstTensor7View x, const Index &l, const Index &v, const Index &s, const Index &b, const Index &p, const Index &r, const Index &c) |
Runtime check for size of Tensor. More... | |
void | chk_pnd_field_raw_only_in_cloudbox (const Index &dim, const ArrayOfGriddedField3 &pnd_field_raw, ConstVectorView p_grid, ConstVectorView lat_grid, ConstVectorView lon_grid, const ArrayOfIndex &cloudbox_limits) |
chk_pnd_field_raw_only_in_cloudbox More... | |
Variables | |
const Index | GFIELD3_P_GRID |
const Index | GFIELD3_LAT_GRID |
const Index | GFIELD3_LON_GRID |
General functions to check the size and logic of input to functions.
Definition in file check_input.cc.
void chk_atm_field | ( | const String & | x_name, |
ConstTensor3View | x, | ||
const Index & | dim, | ||
ConstVectorView | p_grid, | ||
ConstVectorView | lat_grid, | ||
ConstVectorView | lon_grid | ||
) |
chk_atm_field (simple fields)
Checks if an atmospheric field matches the dimensionality and the grids.
The function gives an error message if this is not the case.
x_name | The name of the atmospheric field. |
x | A variable holding an atmospheric field. |
dim | The atmospheric dimensionality. |
p_grid | The pressure grid. |
lat_grid | The latitude grid. |
lon_grid | The longitude grid. |
Definition at line 683 of file check_input.cc.
References ConstTensor3View::ncols(), ConstVectorView::nelem(), ConstTensor3View::npages(), and ConstTensor3View::nrows().
Referenced by abs_fieldCalc(), abs_lookupSetup(), AtmFieldsExpand1D(), AtmFieldsRefinePgrid(), and basics_checkedCalc().
void chk_atm_field | ( | const String & | x_name, |
ConstTensor4View | x, | ||
const Index & | dim, | ||
const Index & | nspecies, | ||
ConstVectorView | p_grid, | ||
ConstVectorView | lat_grid, | ||
ConstVectorView | lon_grid | ||
) |
chk_atm_field (fields with one more dimension)
Checks if an atmospheric field matches the dimensionality and the grids. This is the version for fields like vmr_field, which are a Tensor4, not a Tensor3. (First dimension is the gas species.)
The function gives an error message if this is not the case.
x_name | The name of the atmospheric field. |
x | A variable holding an atmospheric field. |
dim | The atmospheric dimensionality. |
nspecies | Number of species. |
p_grid | The pressure grid. |
lat_grid | The latitude grid. |
lon_grid | The longitude grid. |
Definition at line 747 of file check_input.cc.
References ConstTensor4View::nbooks(), ConstTensor4View::ncols(), ConstVectorView::nelem(), ConstTensor4View::npages(), and ConstTensor4View::nrows().
void chk_atm_grids | ( | const Index & | dim, |
ConstVectorView | p_grid, | ||
ConstVectorView | lat_grid, | ||
ConstVectorView | lon_grid | ||
) |
chk_atm_grids
Checks if the atmospheric grids and the specified atmospheric dimensionality match, and if the grids are ordered correctly.
The function gives an error message if this is not the case.
dim | The atmospheric dimensionality. |
p_grid | The pressure grid. |
lat_grid | The latitude grid. |
lon_grid | The longitude grid. |
Definition at line 603 of file check_input.cc.
References chk_if_decreasing(), chk_if_increasing(), and ConstVectorView::nelem().
Referenced by abs_fieldCalc(), abs_lookupSetup(), AtmFieldsCalc(), AtmFieldsCalcExpand1D(), AtmFieldsExpand1D(), AtmFieldsFromCompact(), AtmFieldsFromCompactChevalAll(), AtmFieldsRefinePgrid(), basics_checkedCalc(), cloudboxSetAutomatically(), cloudboxSetManually(), doit_i_fieldSetConst(), doit_i_fieldUpdateSeq3D(), DoitCloudboxFieldPut(), ParticleTypeAdd(), ParticleTypeAddAll(), pnd_fieldCalc(), r_geoidSpherical(), and r_geoidWGS84().
void chk_atm_surface | ( | const String & | x_name, |
const Matrix & | x, | ||
const Index & | dim, | ||
ConstVectorView | lat_grid, | ||
ConstVectorView | lon_grid | ||
) |
chk_atm_surface
Checks if a surface-type variable matches the dimensionality and the grids.
Examples of surface-type variables are z_surface and r_geoid.
The function gives an error message if this is not the case.
x_name | The name of the surface-type variable. |
x | The variable holding the surface data. |
dim | The atmospheric dimensionality. |
lat_grid | The latitude grid. |
lon_grid | The longitude grid. |
Definition at line 821 of file check_input.cc.
References ConstMatrixView::ncols(), ConstVectorView::nelem(), and ConstMatrixView::nrows().
Referenced by basics_checkedCalc(), doit_i_fieldUpdate1D(), doit_i_fieldUpdateSeq1D(), doit_i_fieldUpdateSeq3D(), and sensor_posAddRgeoid().
chk_if_bool
Checks that a variable of type Index has the value 0 or 1.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Index. |
Definition at line 67 of file check_input.cc.
References is_bool().
Referenced by cloudbox_checkedCalc(), sensor_responseAntenna(), and sensor_responseInit().
void chk_if_decreasing | ( | const String & | x_name, |
ConstVectorView | x | ||
) |
chk_if_decreasing
Checks if a vector is strictly decreasing.
Duplicated values are not allowed.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Vector. |
Definition at line 316 of file check_input.cc.
References is_decreasing().
Referenced by GasAbsLookup::Adapt(), chk_atm_grids(), doit_i_fieldUpdate1D(), and doit_i_fieldUpdateSeq1D().
void chk_if_equal | ( | const String & | x1_name, |
const String & | x2_name, | ||
ConstVectorView | v1, | ||
ConstVectorView | v2, | ||
Numeric | margin | ||
) |
chk_if_equal
Checks if two vectors are equal within a margin.
x1_name | The name of the first variable (used in error message). |
x2_name | The name of the second variable (used in error message). |
v1 | First vector |
v2 | Second vector |
margin | uncertainty margin. Default: 1e-6 |
Definition at line 343 of file check_input.cc.
References abs, chk_vector_length(), and ConstVectorView::nelem().
void chk_if_in_range | ( | const String & | x_name, |
const Index & | x, | ||
const Index & | x_low, | ||
const Index & | x_high | ||
) |
chk_if_in_range
Checks that a variable of type Index has a value inside the specified range.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Index. |
x_low | Lowest allowed value for x. |
x_high | Highest allowed value for x. |
Definition at line 95 of file check_input.cc.
Referenced by GasAbsLookup::Adapt(), AntennaMultiBeamsToPencilBeams(), AtmFieldsCalc(), AtmFieldsCalcExpand1D(), AtmFieldsExpand1D(), basics_checkedCalc(), cloudboxSetAutomatically(), cloudboxSetManually(), cloudboxSetManuallyAltitude(), complex_nWaterLiebe93(), doit_i_fieldSetConst(), doit_za_interpSet(), DoitCloudboxFieldPut(), DoitInit(), interp_gfield3(), InterpSurfaceEmissivityFieldIncLatLon(), ParticleTypeAdd(), ParticleTypeAddAll(), ppath_calc(), r_geoidSpherical(), r_geoidWGS84(), rte_losSet(), rte_posAddRgeoid(), rte_posSet(), sensor_posAddRgeoid(), sensor_responseAntenna(), sensor_responseInit(), surfaceBlackbody(), surfaceFlatReflectivity(), surfaceFlatRefractiveIndex(), surfaceFlatSingleEmissivity(), surfaceFlatVaryingEmissivity(), surfaceLambertianSimple(), yCalc(), and yCalc2().
void chk_if_in_range | ( | const String & | x_name, |
const Numeric & | x, | ||
const Numeric & | x_low, | ||
const Numeric & | x_high | ||
) |
chk_if_in_range
Checks that a variable of type Numeric has a value inside the specified range.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Numeric. |
x_low | Lowest allowed value for x. |
x_high | Highest allowed value for x. |
Definition at line 187 of file check_input.cc.
void chk_if_increasing | ( | const String & | x_name, |
const ArrayOfIndex & | x | ||
) |
chk_if_increasing
Checks if an ArrayOfIndex is strictly increasing. Cloned from Patricks similar function for Vector.
Duplicated values are not allowed.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type ArrayOfIndex. |
Definition at line 126 of file check_input.cc.
References is_increasing().
Referenced by GasAbsLookup::Adapt(), basics_checkedCalc(), chk_atm_grids(), doit_conv_flagAbsBT(), doit_conv_flagLsq(), doit_i_fieldUpdate1D(), doit_i_fieldUpdateSeq1D(), doit_i_fieldUpdateSeq3D(), interp_gfield3(), ParticleTypeAdd(), ParticleTypeAddAll(), ScatteringDoit(), sensor_responseAntenna(), sensor_responseInit(), WMRFSelectChannels(), yCalc(), and yCalc2().
void chk_if_increasing | ( | const String & | x_name, |
ConstVectorView | x | ||
) |
chk_if_increasing
Checks if a vector is strictly increasing.
Duplicated values are not allowed.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Vector. |
Definition at line 286 of file check_input.cc.
References is_increasing().
void chk_interpolation_grids | ( | const String & | which_interpolation, |
ConstVectorView | old_grid, | ||
const Numeric & | new_grid, | ||
const Index | order, | ||
const Numeric & | extpolfac | ||
) |
Check interpolation grids.
This function checks if old and new grid for an interpolation are ok. If not, it throws a detailed runtime error message. This is intended for workspace method input variable checking.
This is for the special case that the new grid is just a single Numeric, instead of a Vector. ("Red" interpolation.) It just calles the other more general chk_interpolation_grids function for which both grid arguments are vectors.
[in] | which_interpolation | A string describing the interpolation for which the grids are intended. |
[in] | old_grid | The original grid. |
[in] | new_grid | The new grid. |
[in] | order | Interpolation order. (Default value is 1.) |
[in] | extpolfac | The extrapolation fraction. See gridpos function for details. Has a default value, which is consistent with gridpos. |
Definition at line 508 of file check_input.cc.
References chk_interpolation_grids().
void chk_interpolation_grids | ( | const String & | which_interpolation, |
ConstVectorView | old_grid, | ||
ConstVectorView | new_grid, | ||
const Index | order, | ||
const Numeric & | extpolfac | ||
) |
Check interpolation grids.
This function checks if old and new grid for an interpolation are ok. If not, it throws a detailed runtime error message. This is intended for workspace method input variable checking.
[in] | which_interpolation | A string describing the interpolation for which the grids are intended. |
[in] | old_grid | The original grid. |
[in] | new_grid | The new grid. |
[in] | order | Interpolation order. (Default value is 1.) |
[in] | extpolfac | The extrapolation fraction. See gridpos function for details. Has a default value, which is consistent with gridpos. |
Definition at line 390 of file check_input.cc.
References is_decreasing(), is_increasing(), max, min, and ConstVectorView::nelem().
Referenced by abs_scalar_gasExtractFromLookup(), atm_fields_compactAddSpecies(), AtmFieldsCalc(), chk_interpolation_grids(), chk_single_scattering_data(), opt_prop_sptFromData(), pha_mat_sptFromDataDOITOpt(), pha_mat_sptFromMonoData(), and scat_data_monoCalc().
void chk_matrix_ncols | ( | const String & | x_name, |
ConstMatrixView | x, | ||
const Index & | l | ||
) |
chk_matrix_ncols
Checks that a matrix has the specified number of columns.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A matrix. |
l | The expected length of x. |
Definition at line 539 of file check_input.cc.
References ConstMatrixView::ncols().
Referenced by GasAbsLookup::Adapt(), sensor_posAddRgeoid(), and surfaceFlatRefractiveIndex().
void chk_matrix_nrows | ( | const String & | x_name, |
ConstMatrixView | x, | ||
const Index & | l | ||
) |
chk_matrix_nrows
Checks that a matrix has the specified number of rows.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A matrix. |
l | The expected length of x. |
Definition at line 568 of file check_input.cc.
References ConstMatrixView::nrows().
Referenced by GasAbsLookup::Adapt().
chk_not_empty
Checks that an agenda is not empty.
The function gives an error message if the agenda is empty.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
Definition at line 880 of file check_input.cc.
References Agenda::nelem().
Referenced by cloud_RT_surface(), doit_i_fieldIterate(), doit_i_fieldUpdate1D(), doit_i_fieldUpdateSeq1D(), doit_i_fieldUpdateSeq3D(), doit_scat_fieldCalc(), doit_scat_fieldCalcLimb(), and ScatteringDoit().
chk_not_negative
Checks that a variable of type Numeric is 0 or positive.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Numeric. |
Definition at line 157 of file check_input.cc.
Referenced by surfaceBlackbody(), surfaceFlatReflectivity(), surfaceFlatRefractiveIndex(), surfaceFlatVaryingEmissivity(), and surfaceLambertianSimple().
void chk_pnd_field_raw_only_in_cloudbox | ( | const Index & | dim, |
const ArrayOfGriddedField3 & | pnd_field_raw, | ||
ConstVectorView | p_grid, | ||
ConstVectorView | lat_grid, | ||
ConstVectorView | lon_grid, | ||
const ArrayOfIndex & | cloudbox_limits | ||
) |
chk_pnd_field_raw_only_in_cloudbox
Checks whether the pnd_field is zero outside the cloudbox. This is of a higher level than chk_pnd_data because it does not require any filename and because it works on all pnd_field_raw rather than just one element. Otherwise, it is mostly a new implementation of the same functionality.
dim | The atmospheric dimensionality. |
pnd_field_raw | All pnd_field_raw data. |
p_grid | Pressure grid. |
lat_grid | Latitude grid. |
lon_grid | Longitude grid. |
cloudbox_limits | The edges of the cloudbox. |
Definition at line 1211 of file check_input.cc.
References GFIELD3_LAT_GRID, GFIELD3_LON_GRID, GFIELD3_P_GRID, and Array< base >::nelem().
Referenced by pnd_fieldCalc().
void chk_size | ( | const String & | x_name, |
ConstMatrixView | x, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Matrix.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
r | Required number of rows |
c | Required number of columns |
Definition at line 942 of file check_input.cc.
References is_size(), ConstMatrixView::ncols(), and ConstMatrixView::nrows().
void chk_size | ( | const String & | x_name, |
ConstTensor3View | x, | ||
const Index & | p, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Tensor.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
p | Required number of pages |
r | Required number of rows |
c | Required number of columns |
Definition at line 977 of file check_input.cc.
References is_size(), ConstTensor3View::ncols(), ConstTensor3View::npages(), and ConstTensor3View::nrows().
void chk_size | ( | const String & | x_name, |
ConstTensor4View | x, | ||
const Index & | b, | ||
const Index & | p, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Tensor.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
b | Required number of books |
p | Required number of pages |
r | Required number of rows |
c | Required number of columns |
Definition at line 1016 of file check_input.cc.
References is_size(), ConstTensor4View::nbooks(), ConstTensor4View::ncols(), ConstTensor4View::npages(), and ConstTensor4View::nrows().
void chk_size | ( | const String & | x_name, |
ConstTensor5View | x, | ||
const Index & | s, | ||
const Index & | b, | ||
const Index & | p, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Tensor.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
s | Required number of shelves |
b | Required number of books |
p | Required number of pages |
r | Required number of rows |
c | Required number of columns |
Definition at line 1059 of file check_input.cc.
References is_size(), ConstTensor5View::nbooks(), ConstTensor5View::ncols(), ConstTensor5View::npages(), ConstTensor5View::nrows(), and ConstTensor5View::nshelves().
void chk_size | ( | const String & | x_name, |
ConstTensor6View | x, | ||
const Index & | v, | ||
const Index & | s, | ||
const Index & | b, | ||
const Index & | p, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Tensor.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
v | Required number of vitrines |
s | Required number of shelves |
b | Required number of books |
p | Required number of pages |
r | Required number of rows |
c | Required number of columns |
Definition at line 1106 of file check_input.cc.
References is_size(), ConstTensor6View::nbooks(), ConstTensor6View::ncols(), ConstTensor6View::npages(), ConstTensor6View::nrows(), ConstTensor6View::nshelves(), and ConstTensor6View::nvitrines().
void chk_size | ( | const String & | x_name, |
ConstTensor7View | x, | ||
const Index & | l, | ||
const Index & | v, | ||
const Index & | s, | ||
const Index & | b, | ||
const Index & | p, | ||
const Index & | r, | ||
const Index & | c | ||
) |
Runtime check for size of Tensor.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
l | Required number of libraries |
v | Required number of vitrines |
s | Required number of shelves |
b | Required number of books |
p | Required number of pages |
r | Required number of rows |
c | Required number of columns |
Definition at line 1157 of file check_input.cc.
References is_size(), ConstTensor7View::nbooks(), ConstTensor7View::ncols(), ConstTensor7View::nlibraries(), ConstTensor7View::npages(), ConstTensor7View::nrows(), ConstTensor7View::nshelves(), and ConstTensor7View::nvitrines().
void chk_size | ( | const String & | x_name, |
ConstVectorView | x, | ||
const Index & | c | ||
) |
Runtime check for size of Vector.
This is the runtime version of is_size. An appropriate error message is generated if the size is not correct.
x_name | The name of the agenda. |
x | A variable of type Agenda. |
c | Required number of columns |
Definition at line 911 of file check_input.cc.
References is_size(), and ConstVectorView::nelem().
Referenced by abs_coefCalcFromXsec(), GasAbsLookup::Adapt(), chk_single_scattering_data(), doit_i_fieldUpdate1D(), doit_i_fieldUpdateSeq1D(), doit_i_fieldUpdateSeq3D(), and doit_za_grid_optCalc().
void chk_vector_length | ( | const String & | x1_name, |
const String & | x2_name, | ||
ConstVectorView | x1, | ||
ConstVectorView | x2 | ||
) |
chk_vector_length
Checks if two vectors have the same length.
The function gives an error message if this is not the case.
x1_name | The name of the first vector |
x2_name | The name of the second vector |
x1 | The first vector. |
x2 | The second vector. |
Definition at line 253 of file check_input.cc.
References ConstVectorView::nelem().
void chk_vector_length | ( | const String & | x_name, |
ConstVectorView | x, | ||
const Index & | l | ||
) |
chk_vector_length
Checks that a vector has the specified length.
The function gives an error message if this is not the case.
x_name | The name of the variable. |
x | A variable of type Vector. |
l | The expected length of x. |
Definition at line 222 of file check_input.cc.
References ConstVectorView::nelem().
Referenced by GasAbsLookup::Adapt(), chk_if_equal(), ppath_calc(), and rte_posAddRgeoid().
|
extern |
Referenced by chk_pnd_field_raw_only_in_cloudbox().
|
extern |
Referenced by chk_pnd_field_raw_only_in_cloudbox().
|
extern |
Referenced by chk_pnd_field_raw_only_in_cloudbox().