ARTS
2.4.0(git:4fb77825)
|
This can be used to make arrays out of anything. More...
#include <array.h>
Public Member Functions | |
Array () | |
Array (Index n) | |
Array (Index n, const base &fillvalue) | |
Constructor filling with constant value. More... | |
Array (const Array< base > &A) | |
Array (Array< base > &&A) noexcept | |
Array (std::initializer_list< base > init) | |
template<size_t N> | |
Array (const std::array< base, N > &input) | |
Array & | operator= (base x) |
Assignment from base type (fill entire Array with this value). More... | |
Array & | operator= (const Array< base > &A) |
Assignment from another Array. More... | |
Array & | operator= (Array< base > &&A) noexcept |
Index | nelem () const |
Number of elements. More... | |
const base & | operator[] (const Index n) const |
Constant index operator. More... | |
base & | operator[] (const Index n) |
Non-constant index operator. More... | |
void | push_back_n (const base &elem, const Index n) |
Append element n times. More... | |
virtual | ~Array ()=default |
This can be used to make arrays out of anything.
A simple #define does not do for this, since I have to implement member functions like nelem, in order to be consistent with Vector.
Because constructors are not inherited, I have to re-define all constructors.
Constructor filling with constant value.
Definition at line 150 of file array.h.
References Zeeman::end().
Number of elements.
Definition at line 195 of file array.h.
Referenced by _cr_internal_(), abs_cia_dataReadFromCIA(), abs_coefCalcFromXsec(), abs_hitran_relmat_dataReadHitranRelmatDataAndLines(), abs_lines_per_speciesChangeBaseParameterForMatchingLevels(), abs_lines_per_speciesCreateFromLines(), abs_lines_per_speciesSetBaseParameterForMatchingLevels(), abs_lines_per_speciesSetZeemanCoefficients(), abs_linesChangeBaseParameterForMatchingLevels(), abs_linesSetBaseParameterForMatchingLevels(), abs_linesSetZeemanCoefficients(), abs_linesWriteSpeciesSplitXML(), abs_lookupSetup(), abs_lookupSetupBatch(), abs_lookupTestAccMC(), abs_lookupTestAccuracy(), abs_speciesAdd(), abs_speciesAdd2(), abs_speciesSet(), abs_xsec_per_speciesAddConts(), abs_xsec_per_speciesInit(), GasAbsLookup::Adapt(), ArtsXMLTag::add_attribute(), Workspace::add_wsv(), SourceText::AdvanceChar(), SourceText::AdvanceLine(), AgRecord::AgRecord(), Append(), SourceText::AppendFile(), apply_iy_unit(), apply_iy_unit2(), Linefunctions::apply_linemixing_scaling_and_mirroring(), Linefunctions::apply_lineshapemodel_jacobian_scaling(), Linefunctions::apply_linestrength_from_nlte_level_distributions(), Linefunctions::apply_rosenkranz_quadratic_scaling(), Linefunctions::apply_VVH_scaling(), Linefunctions::apply_VVW_scaling(), array_species_tag_from_string(), ArrayOfAgendaAppend(), ArrayOfAgendaExecute(), ArrayOfGriddedFieldGetNames(), ArrayOfIndexExtractFromArrayOfArrayOfIndex(), ArrayOfQuantumIdentifierSet(), ArrayOfStringSet(), atm_fields_compactAddConstant(), atm_fields_compactAddSpecies(), atm_fields_compactExpand(), atm_fields_compactFromMatrix(), atmfields_checkedCalc(), AtmFieldsCalc(), AtmWithNLTERawRead(), linalg::avg(), batch_atm_fields_compactFromArrayOfMatrix(), Agenda::check(), check_and_add_block(), check_retrieval_grids(), checkIsotopologueRatios(), checkPartitionFunctions(), chk_contains(), choose_abs_nls(), choose_abs_nls_pert(), choose_abs_t_pert(), cia_get_index(), CIAInfo(), cloud_atm_vars_by_gp(), cloudbox_field_monoOptimizeReverse(), cloudboxSetAutomatically(), collision_coefficientsFromSplitFiles(), Compare(), compute_transmission_matrix_and_derivative(), TelsemAtlas::contains(), linalg::cov(), covmat_sxAddBlock(), covmat_sxAddInverseBlock(), cumulative_backscatter_derivative(), cumulative_transmission(), CIARecord::Dataset(), CIARecord::DatasetCount(), define_md_map(), define_wsv_group_map(), Workspace::define_wsv_map(), diy_from_path_to_rgrids(), diy_from_pos_to_rgrids(), DoitWriteIterationFields(), equivalent_propmattype_indexes(), Agenda::execute(), expand_md_data_raw_to_md_data(), Extract(), GasAbsLookup::Extract(), XsecRecord::Extract(), CIARecord::Extract(), f_gridFromSensorAMSU(), f_gridFromSensorAMSUgeneric(), f_gridFromSensorHIRS(), f_gridMetMM(), FieldFromGriddedField(), SourceText::File(), find_file(), find_first_species_tg(), find_new_grid_in_old_grid(), find_next_species_tg(), find_xml_file(), find_xml_file_existence(), Flatten(), CIARecord::FrequencyGrid(), get_array_groups_as_string(), get_dirname(), get_gp_atmgrids_to_rq(), get_gp_atmsurf_to_rq(), get_gp_rq_to_atmgrids(), GriddedField::get_grid_size(), get_species_name(), get_stepwise_transmission_matrix(), get_tag_group_index_for_tag_group(), get_tag_group_name(), EnergyLevelMap::get_vibtemp_params(), SourceText::GetSourceLine(), gp4length1grid(), GriddedFieldLatLonExpand(), GriddedFieldLatLonRegrid(), GriddedFieldPRegrid(), gridpos_upperend_check(), hitran_xsec_get_index(), SourceText::Init(), Workspace::initialize(), insert_elements(), interp(), interp_atmfield_by_itw(), interp_atmfield_gp2itw(), interp_atmsurface_by_itw(), interp_atmsurface_gp2itw(), interp_cloud_coeff1D(), EnergyLevelMap::InterpToGridPos(), interpweights(), Agenda::is_input(), Agenda::is_output(), is_valid_keyword_group(), is_zeeman(), SpeciesTag::IsIsotopologue(), IsotopologueRecord::IsotopologueRecord(), iy_surface_agenda_arrayExecute(), iyb_calc(), iyEmissionStandardSequential(), iyHybrid2(), iyLoopFrequencies(), iyTransmissionStandard(), jac_ranges_indices(), jacobian_type_extrapol(), jacobianAddAbsSpecies(), jacobianAddBasicCatalogParameter(), jacobianAddBasicCatalogParameters(), jacobianAddMagField(), jacobianAddNLTE(), jacobianAddPolyfit(), jacobianAddScatSpecies(), jacobianAddShapeCatalogParameters(), jacobianAddSinefit(), jacobianAddSpecialSpecies(), jacobianAddSurfaceQuantity(), jacobianAddTemperature(), jacobianAddWind(), jacobianCalcFreqShift(), jacobianCalcFreqStretch(), jacobianCalcPointingZaInterp(), jacobianCalcPointingZaRecalc(), jacobianCalcPolyfit(), jacobianSetAffineTransformation(), main(), MdRecord::MdRecord(), linalg::median(), met_mm_polarisation_hmatrix(), SpeciesTag::Name(), nca_def_ArrayOfIndex(), nca_get_data_ArrayOfArrayOfSpeciesTag(), nca_put_var_ArrayOfIndex(), nca_read_from_file(), nca_write_to_file(), Agenda::nelem(), RetrievalQuantity::nelem(), SpeciesAuxData::nisotopologues(), nlte_fieldSetLteExternalPartitionFunction(), nlte_fieldSetLteInternalPartitionFunction(), nlte_sourceFromTemperatureAndSrcCoefPerSpecies(), SpeciesAuxData::nspecies(), Absorption::Lines::NumBroadeners(), OEM_checks(), EnergyLevelMap::OK(), open_input_file(), operator<<(), ComplexVectorView::operator=(), VectorView::operator=(), operator>>(), opt_prop_Bulk(), opt_prop_ScatSpecBulk(), option_input(), option_methods(), option_workspacevariables(), p_gridRefine(), parse_a5_hitran(), ArtsParser::parse_agenda(), parse_f51_hitran(), ArtsParser::parse_generic_input(), ArtsParser::parse_generic_output(), ArtsParser::parse_intvector_from_string(), ArtsParser::parse_method_args(), ArtsParser::parse_numvector(), ArtsParser::parse_numvector_from_string(), ArtsParser::parse_stringarray_from_string(), pha_mat_Bulk(), pha_mat_ScatSpecBulk(), pnd_agenda_arrayExecute(), pnd_fieldCalcFromParticleBulkProps(), ppath_calc(), ppath_step_refr_1d(), ppath_step_refr_2d(), ppath_step_refr_3d(), ppathPlaneParallel(), Print(), Agenda::print(), MRecord::print(), MdRecord::PrintTemplate(), propmat_clearskyAddFaraday(), propmat_clearskyAddFromLookup(), propmat_clearskyAddParticles(), propmat_clearskyInit(), psdMilbrandtYau05(), psdSeifertBeheng06(), SourceText::reachedEot(), Absorption::ReadFromHitran2001Stream(), Absorption::ReadFromHitran2004Stream(), Absorption::ReadFromHitranOnlineStream(), Absorption::ReadFromLBLRTMStream(), Absorption::ReadFromMytran2Stream(), Reduce(), regrid_atmfield_by_gp(), regrid_atmfield_by_gp_oem(), regrid_atmsurf_by_gp(), regrid_atmsurf_by_gp_oem(), InteractiveWorkspace::resize(), ScatElementsPndAndScatAdd(), ScatElementsSelect(), ScatElementsToabs_speciesAdd(), ScatSpeciesMerge(), ScatSpeciesPndAndScatAdd(), ScatSpeciesScatAndMetaRead(), Select(), Absorption::Lines::SelfVMR(), sensor_responseFillFgrid(), sensor_responseGenericAMSU(), sensor_responseMetMM(), set_backscatter_radiation_vector(), Linefunctions::set_cross_section_of_band(), Linefunctions::set_doppler(), Linefunctions::set_lorentz(), Agenda::set_outputs_to_push_and_dup(), Linefunctions::set_voigt(), setup_retrieval_1D(), SingleCalculatePartitionFctFromData(), SingleCalculatePartitionFctFromData_dT(), species_iso_match(), SpeciesRecord::SpeciesRecord(), SpeciesTag::SpeciesTag(), spectrometer_matrix(), stepwise_transmission(), stokes2pol(), MdRecord::subst_any_with_group(), MdRecord::subst_any_with_specific_group(), surface_rtprop_agenda_arrayExecute(), ArtsParser::tasklist_insert_set_delete(), CIARecord::TemperatureGrid(), test07(), test12(), test_agenda_arrayExecute(), time_steps(), TimeSortTemplate(), transform_jacobian(), transform_x(), transform_x_back(), SpeciesAuxData::validIndex(), linalg::var(), LineShape::vmrs(), WMRFSelectChannels(), write_method_header(), write_method_header_documentation(), xml_read_from_stream(), xml_write_to_stream(), xsec_species(), yActive(), yCalc(), yCalcAppend(), za_gridOpt(), and zeeman_on_the_fly().
Assignment from base type (fill entire Array with this value).
Definition at line 158 of file array.h.
References Zeeman::end().
Assignment from another Array.
This will adjust the size of the array automatically, so that structures containing arrays can be correctly copied without having an explicit assignment operator.
This is a deviation from the old ARTS paradigm that sizes must match exactly before copying!
A | The other array to copy to this one. |
Definition at line 180 of file array.h.
References copy().
Non-constant index operator.
We redefine this here so that we can have range checking by assert.
Definition at line 213 of file array.h.
References Absorption::nelem().
Constant index operator.
We redifine this here so that we can have range checking by assert.
Definition at line 204 of file array.h.
References Absorption::nelem().