2019-01-31 Jana Mendrok * arts-2-2-66 * src/species_data.cc: Update H2O-626 (backward copy from arts-2.3 state) to make arts2.2 work with H2016. 2019-01-30 Jana Mendrok * arts-2-2-65 * src/m_abs.cc (abs_linesReadFromHitran): Make it work with HITRAN2016.par. 2017-12-05 Oliver Lemke * arts-2-2-64 * AUTHORS: Update email addresses. 2017-11-08 Oliver Lemke * arts-2-2-63 * doc/uguide/development.tex: Update arts-dev list address. 2017-11-08 Oliver Lemke * arts-2-2-62 * README: Updated ARTS URL. Reported by Jana. 2016-09-08 Jana Mendrok * arts-2-2-61 * src/m_disort.cc, m_cloudbox.cc, methods.cc (cloudboxSetFullAtm): Bugfix: ensure atm_dim==1 (reported by Patrick). Moved the WSM deinition (former cloudboxSetDisort) from m_disort to m_cloudbox. 2016-09-01 Jana Mendrok * arts-2-2-60 * CMakeLists.txt, config.h.cmake, src/CMakeLists.txt src/m_disort.cc, main.cc, methods.cc, 3rdparty/CMakeLists.txt, controlfiles/CMakeLists.txt, controlfiles/artscomponents/disort/, TestDISORT.arts, scat_data_disort.xml: Removed (buggy) Disort interface and testcase. Refering to ARTS2.3 instead. 2016-07-01 Oliver Lemke * arts-2-2-59 * cmake/modules/FindNetCDF.cmake: Remove unused library dependency on netcdf_c++. 2016-02-16 Jana Mendrok * arts-2-2-58 * controlfiles/planetary_toolbox/includes/venus/atmo_venus.arts: Typo fix (thanks to Elisa Castelli for pointing out!). 2015-12-17 Oliver Lemke * arts-2-2-57 * doc/uguide/common.tex: Backport changes from arts-2-3-387: Add macro \artsserver with ARTS web url. Add macro \artsurl to insert a link to a page on the ARTS web server. Only needs the subpath as input. Add macro \docserver. Makes it easy in the future to switch from the trunk to the stable docserver once ARTS is released. Change \builtindoc macro to use the \artsserver and \docserver macros. Fixes links still pointing to the old docserver URL at www.sat.ltu.se. Thanks Richard for reporting this issue. * doc/uguide/arts_developer.tex, doc/uguide/arts_theory.tex, doc/uguide/arts_user.tex, doc/uguide/clouds.tex, doc/uguide/concept.tex, doc/uguide/development.tex, doc/uguide/scattering.tex: Replace all ARTS web URLs with the \artsurl macro. 2015-11-18 Oliver Lemke * arts-2-2-56 * src/m_sensor.cc (f_gridFromSensorAMSU, f_gridFromSensorHIRS): Use nlinspace instead of linspace. The generated grid might otherwise end up one value short due to numerical inaccuracies. Fixes bug reported by Max Schaper. * doc/index.html.in: Updated. 2015-09-08 Oliver Lemke * arts-2-2-55 * src/sensor.cc (find_effective_channel_boundaries): Add runtime error with (hopefully) helpful error message if no passbands are detected. 2015-09-07 Oliver Lemke * arts-2-2-54 * controlfiles/classroom_exercises/: Added exercises. Controlfiles, matlab scripts and assignments provided by Theresa Lang. * doc/classroom_excercises_solutions: Added solutions for exercises. Provided by Theresa Lang. * doc/CMakeLists.txt: Added solutions subdir. * controlfiles/CMakeLists.txt: Add exercises as tests. Add custom target mkdir-arts-results as the exercises require an 'results' folder to be present. * cmake/modules/ArtsBuildTexDoc.cmake: Add macro ARTS_ADD_SIMPLE_TEX_DOC. Used to compile exercise solutions. * CMakeLists.txt: Add exercises to check-xmldata. Also add special target check-classroom. Add mkdir-arts-results as a dependency for both targets. 2015-08-27 Oliver Lemke * arts-2-2-53 * src/m_abs.cc (abs_linesReadFromHitran): Don't require the full catalog filename to match hitran2012.par/hitran08.par. Only require that it starts with hitran2012/hitran08 (case insensitive). Change proposed by Patrick to make it easier to read custom catalogs. 2015-08-12 Oliver Lemke * arts-2-2-52 * src/m_xml.h (WriteXML): Intercept exceptions crossing the critical region border. Fixes bug reported by gerrit in trac ticket #127. * src/xml_io.cc (xml_open_output_file): Catch file.open exceptions more broadly as different compilers throw different types of exception for the same error. 2015-08-10 Oliver Lemke * arts-2-2-51 * src/workspace.cc: Update docs for verbosity WSM. 2015-08-05 Gerrit Holl * arts-2-2-50 * doc/uguide/common.tex, doc/uguide/concept.tex: - Update docserver links to Hamburg server - Link to stable docserver rather than trunk docserver, as this is the stable branch. 2015-07-02 Jana Mendrok * arts-2-2-49 * src/continua.cc (MPM93RainExt): Catch vmr/rainrate=0. case (bugfix). 2015-06-18 Jana Mendrok * arts-2-2-48 * controlfiles/artscomponents/arts-xml-data/ TestPlanetIsoRatios.[Venus,Mars,Jupiter].y_reference.xml: Corrected reference values (accidentially the previous references corresponded to old line data). 2015-06-16 Jana Mendrok * arts-2-2-47 * controlfiles/artscomponents/absorption/IsoRatios_H2O[orig,mani].xml: Updated N2 iso ratios to state of built-in data (which had changed by 2014-04-07). Fixes broken TestIsoRatio.arts case. * controlfiles/artscomponents/arts-xml-data/TestPlanetIsoRatios.arts, TestPlanetIsoRatios.[Venus,Mars,Jupiter].y_reference.xml: Apply Compare. Reference data for PlanetIso case added. * doc/uguide/absorption_theory.tex, absorption.tex: Spell/Grammar fixes. 2015-05-06 Mathias Milz * arts-2-2-46 * src/m_sensor.cc: (f_gridFromSensorHIRS) replaced line 747: Vector grid(fmin[i], npi, gs); by: Vector grid; linspace(grid,fmin[i],fmax[i],gs); as numerical uncertainties in gs created errors in f_grid * src/m_sensor.cc: (f_gridFromSensorAMSU) replaced line 506: Vector grid(fmin[i], npi, gs); by: Vector grid; linspace(grid,fmin[i],fmax[i],gs); as numerical uncertainties in gs created errors in f_grid 2015-03-13 Jana Mendrok * arts-2-2-45 * src/methods.cc (ybatchCalc): Fix built-in doc of robust: doesn't set -1 values anymore, but empty vectors. 2015-02-27 Jana Mendrok * Arts-2-2-44 * src/m_doit.cc (doit_i_fieldSetFromdoit_i_field1D_spectrum): Set upwelling at lower boundary from precalc field if lower boundary is at surface (actually, implementation: at lowest atm pressure level). * doc/uguide/absorption.tex: Grammar fix. 2015-02-26 Oliver Lemke * arts-2-2-43 * src/methods.cc: Turn on normalize by default for doit_i_fieldUpdateSeq1D with a threshold of 1.0. * controlfiles/general/agendasDOIT.arts: Remove explicit normalize and threshold arguments to doit_i_fieldUpdateSeq1D as they are now the defaults anyway. 2015-02-19 Jana Mendrok * arts-2-2-42 * doc/uguide/references.bib: Added a missing reference. * src/m_doit.cc (doit_i_fieldSetFromdoit_i_field1D_spectrum), m_refraction.cc(refr_index_airFreeElectrons): Bug fixes in comments. * doc/uguide/refr_index_theory.tex: Spellfix. 2015-01-14 Jana Mendrok * arts-2-2-41 * src/m_doit.cc (doit_i_fieldSetFromdoit_i_field1D_spectrum): Remove the next freshly introduced bug *sigh*. 2015-01-14 Jana Mendrok * arts-2-2-40 * src/m_doit.cc, methods.cc (doit_i_fieldSetFromdoit_i_field1D_spectrum), controlfiles/artscomponents/doit/TestDOITprecalcInit.arts: Bugfix in first-guess DOIT field setting. For details see arts-2-3-114 ChangeLog. 2015-01-13 Manfred Brath * arts-2-2-39 * doc/uguide/scattering.tex: Corrected the last paragraph in the subsubsection "DOIT main agenda" concerning doit_i_field1D_spectrum and scat_i_p. 2014-12-10 Jana Mendrok * arts-2-2-38 * CHANGES-2.2: Added DoitInit-before-CloudboxGetIncoming note. 2014-12-10 Jana Mendrok * arts-2-2-37 * controlfiles/CMakeLists.txt: Include TestDOITprecalcInit in regular test case set. 2014-12-10 Jana Mendrok * arts-2-2-36 * Added a DOIT testcase demonstrating first guess field from read-in precalculated doit_i_field1D_spectrum * controlfiles/artscomponents/doit/TestDOITprecalcInit.arts: Added. Precalculated first guess test case. * controlfiles/artscomponents/doit/TestDOIT.doit_i_field1D_spectrum.xml: Added. DOIT in-cloudbox solution from TestDOIT.arts as input to TestDOITprecalcInit.arts * controlfiles/artscomponents/doit/yREFERENCE_DOITprecalcInit.xml, yREFERENCE_DOIT.xml: Reference output for both cases added. * controlfiles/artscomponents/doit/TestDOIT.arts, gas_abs_lookup.xml, gas_abs_lookup.xml.bin: Slight modifications in existing DOIT test case, e.g. using 2 frequencies and using 2 scattering elements. 2014-12-10 Jana Mendrok * arts-2-2-35 * src/m_doit.cc, methods.cc (CloudboxGetIncoming): Check whether doit has been initialized beforehand. 2014-12-05 Oliver Lemke * arts-2-2-34 * ChangeLog: Removed conflict marker. 2014-12-04 Manfred Brath * arts-2-2-33 * src/cloudbox.{h,cc} (pnd_fieldMGD_LWC, LWCtopnd_MGD_LWC, pnd_fieldMGD_LWC, LWCtopnd_MGD_LWC), src/m_cloudbox.cc (pnd_fieldSetup), src/m_cloudbox.cc (dN_F07TR, dN_F07ML, dN_MGD_LWC, dN_MGD_IWC), src/methods.cc: Changed the used size parameter from maximum dimension diameter to volume equivalent spherical diameter. * src/cloudbox.cc (pnd_fieldMGD_LWC,pnd_fieldMGD_LWC): Furthermore added an error-notification, if the density of the used particles are too different. 2014-12-02 Manfred Brath * arts-2-2-32 * src/m_cloudbox.cc (pnd_fieldSetup): Fixed wrong strings. 2014-12-02 Manfred Brath * arts-2-2-31 * src/cloudbox.{h,cc} (pnd_fieldMGD_LWC, LWCtopnd_MGD_LWC, pnd_fieldMGD_LWC, LWCtopnd_MGD_LWC), src/m_cloudbox.cc (pnd_fieldSetup): Added new distributions. * src/m_cloudbox.cc (dN_F07TR, dN_F07ML, dN_MGD_LWC, dN_MGD_IWC), src/methods.cc: Added new WSMs for the distributions. 2014-12-02 Oliver Lemke * arts-2-2-30 * src/m_xml.cc, src/m_xml.h, src/methods.cc: Backported new WSM ReadXMLIndexed from trunk. 2014-11-30 Jana Mendrok * arts-2-2-29 * Modifications to allow DOIT's first guess doit_i_field to be set from precalculated doit_i_field1D_spectrum (instead of from clearsky). Backported from arts-2-3-76. For detailed change description see there. NOTE: Now, DoitInit needs to be called BEFORE CloudboxGetIncoming. * A couple of WSM for analysis of PSD data. Backported from arts-2-3-73. For detailed change description see there. 2014-11-18 Patrick Eriksson * arts-2-2-28 * src/surface.cc (surface_specular_R_and_b): surface_rmatrix(3,2) had the wrong sign, compared to equation in ATD. See further email to arts-users. 2014-11-03 Manfred Brath * arts-2-2-27 * src/agendas.cc: Added doit_i_field1D_spectrum as input for doit_mono_agenda. * src/methods.cc: Added doit_i_field1D_spectrum as input for DoitCloudboxFieldPut. * src/m_doit.cc: (ScatteringDoit): Resize doit_i_field1D_spectrum to 0. (DoitCloudboxFieldPut): Resize doit_i_field1D_spectrum to correct size if necessary. * src/cloudbox.{h,cc} (pnd_fieldF07TR, pnd_fieldGM58, pnd_fieldSS70), src/m_cloudbox.cc (pnd_fieldSetup): Added new distributions. 2014-09-22 Oliver Lemke * arts-2-2-26 * controlfiles/general/agendasDOIT.art: Turn on DOIT correction by default with an error threshold of 1. Watch out for warning messages: WARNING: DOIT correction factor above threshold/2: ... This can be an indication that your DOIT grids are too coarse. * controlfiles/artscomponents/doitbatch/TestDOITBatch.ybatch.ref.xml: Updated. 2014-09-15 Patrick Eriksson * arts-2-2-25 * src/m_basic_types.cc (MatrixAddScalar): New WSM, based on the vector version. 2014-09-15 Oliver Lemke * arts-2-2-24 * src/m_optproperties.cc, src/methods.cc: Rename ScatteringDoitMergeParticles1D -> ScatteringMergeParticles1D. 2014-09-05 Oliver Lemke * arts-2-2-23 * src/m_batch.cc (ybatchCalc): Use schedule(dynamic) for better CPU utilization in batch jobs. * src/methods.cc, src/m_general.cc (StringCompose): Add new convenience WSM to concatenate several strings at once. 2014-08-15 Oliver Lemke * arts-2-2-22 * src/continua.cc (CKD_mt_250_co2): Fix array out of bounds access. Replaced tdep_bandhead[J-1196] with tdep_bandhead[(I1 + J-1)-1196] and introduced helper variable I1J. 2014-07-29 Mayuri Tatiya * arts-2-2-21 * src/continua.h, src/continua.cc: fixed the bug in "CO2-CKDMT250" 2014-07-23 Jana Mendrok * arts-2-2-20 * controlfiles/CMakeLists.txt: missed to commit in previous attempt. 2014-07-23 Jana Mendrok * arts-2-2-19 * controlfiles/instruments/[ici,smr]/ [ici,ciwsir,cloudice,iss-smr,jaxa-smr].sensor_response_f_fast.xml: Added. Data for sensor_response_f set such that y_f created on their basis can safely be used with yApplyUnit (essentially, square of channel frequency is sum over monochromatic frequencies times their weight associated with the respective channel). * controlfiles/instruments/[ici,smr]/ [ici,ciwsir,cloudice,iss-smr,jaxa-smr]_fast.arts: Read sensor_response_f with BT-conversion valid frequencies from file (overwrites sensor_response_f set from sensor_responseSimpleAMSU). * controlfiles/instruments/ici/*.*: Moved all ICI related data & controlfiles here (from instruments/smr/). * controlfiles/CMakeLists.txt: Adapted to above move of ICI files. * controlfiles/instruments/smr/jaxa-smr*.*: Renamed smr*.* to jaxa-smr for better recognizability. * src/m_abs.cc (abs_h2oSet): Removed spurious cout. 2014-07-17 Jana Mendrok * arts-2-2-18 * src/m_abs.cc(abs_h2oSet, abs_n2Set, abs_o2Set): Do not throw error if respective species (H2O, N2, O2) is not given. Instead set the abs_XX with a dummy, absence flagging value (-99). This to get rid of the requirement to always include H2O, N2, and O2 when any continuum/full model is to be applied although for the specific continuum they might not be needed at all). * src/continua.cc (xsec_continuum_tag): Introduced checks for valid abs_n2/o2/h2o for the specific continua that require those variables. Throw proper error message indicating the "problematic" continuum tag and the missing species. * src/continua.cc,continua.h(CKD_222_self_h2o,CKD_222_foreign_h2o, CKD_242_self_h2o, CKD_242_foreign_h2o, CKD_mt_100_self_h2o, CKD_mt_100_foreign_h2o, CKD_mt_250_self_h2o, CKD_mt_250_foreign_h2o): Removed abs_n2 as input parameter as abs_n2 is actually not used within in these functions. * controlfiles/instruments/amsu/amsub_fast.arts,smr/iss-smr_fast.arts: Use full path to f_grid and sensor_response files in order to be able to use these as ARTS include files from everywhere. 2014-07-16 Mayuri Tatiya * arts-2-2-17 * src/continua.h, src/continua.cc: Added functions of species for new MTCKD2.5 ("H2O-SelfContCKDMT250", "H2O-ForeignContCKDMT250","O2-visCKDMT250", "N2-CIArotCKDMT250", "N2-CIAfunCKDMT250", "CO2-CKDMT250") * src/m_abs.cc (abs_xsec_per_speciesAddConts, abs_o2Set): Added variable abs_o2 and a function to derive that from vmr_field as required by MTCKD2.5 N2 continuum. * src/partition_function_data.cc, src/species_data.cc: Added species tags for MTCKD2.5. 2014-07-16 Mayuri Tatiya * arts-2-2-16 * controlfiles/general/continua.arts: Added defintions for new MTCKD 2.5 continua. 2014-07-14 Oliver Lemke * arts-2-2-15 * src/m_optproperties.cc (ScatteringDoitMergeParticles1D): Removed old code. Fix from jana was correct. We don't have+want an operator* overload for Numeric*Vector Multiplication. This problem was caused by the one exception we made (operator* for scalar Vector*Vector multiplication). The Numeric is automatically casted to a ConstVectorView and the following scalar product fails because the two Vectors have different number of elements. 2014-07-10 Jana Mendrok * arts-2-2-14 * src/m_optproperties.cc (ScatteringDoitMergeParticles1D): Phase matrix merging using array multiplication caused asserts. Tentatively(?) fixed by replacing it with explicit loop. 2014-06-11 Jana Mendrok * arts-2-2-13 * src/cloudbox.cc (pnd_fieldMH97, pnd_fieldH11, pnd_fieldH13): Revert check for equal aspect ratios introduced in arts-2-1-755 (r8634). This seems unnecessary: it's perfectly fine to run those parametrizations on different aspect ratio particles (as is, e.g., the Hong data for a fixed habit!). In contrast to what arts-2-1-755 suggests, this has never been a requirement before. 2014-06-26 Patrick Eriksson * arts-2-2-12 * src/m_surface.cc (surfaceLambertianSimple): Extended the comment with a page reference for a 1988 edition of the cited book. 2014-06-26 Patrick Eriksson * arts-2-2-11 * src/m_surface.cc (surfaceLambertianSimple): Added reference motivating how the rmatrices are set. After input from Michael Kahnert. * src/methods.cc: Also some extra informaton here. 2014-06-26 Oliver Lemke * arts-2-2-10 * src/check_input.cc (chk_interpolation_grids_loose_no_data_check): Fix code for ascending grids. * src/m_atmosphere.cc: (GriddedFieldZToPRegrid): Add zeropadding support. (GriddedFieldZToPRegridHelper): New helper function. * src/methods.cc: Add zeropadding to GriddedFieldZToPRegrid. * controlfiles/artscomponents/regrid/: Extend test case. 2014-06-25 Oliver Lemke * arts-2-2-9 * src/m_basic_types.cc, src/methods.cc: Add Compare method for GriddedField3. * controlfiles/CMakeLists.txt, controlfiles/artscomponents/regrid: Add regridding test case. 2014-06-24 Richard Larsson * arts-2-2-8 * src/m_atmosphere.cc: Added (GriddedFieldZToPRegrid), which should allow the user to input altitude-gridded datafields of type GriddedField3. 2014-06-24 Oliver Lemke * arts-2-2-7 * src/parser.{cc,h} (ArtsParser::at_end_of_argument): Add additional check to catch invalid characters at the end of named argument parameters instead of silently ignoring them. * src/m_nc.h (WriteNetCDFIndexed): Remove unused argument to fix compiler warning when compiling without netcdf support. 2014-06-11 Jana Mendrok * arts-2-2-6 * src/montecarlo.cc (opt_propCalc): Check whether atm temperature is in valid particle property temperature range. * controlfiles/instruments/smr/ici_fast.arts: Give full path to f_grid and sensor_response files. 2014-06-19 Oliver Lemke * arts-2-2-5 * src/matpackI.cc (vector_angle): Due to numerical inaccuracy, the argument to acos might end up being slightly larger than 1 and thus acos returns nan. Those cases are now caught and 0 is returned. 2014-06-17 Richard Larsson * arts-2-2-4 * src/m_zeeman.cc: Fixed bug that made zero-magnetic field runs crash when there is no line mixing. 2014-06-11 Jana Mendrok * arts-2-2-3 * controlfiles/instruments/smr/ici_fast.arts, ici.sensor_response_fast.xml, ici.f_grid_fast.xml: Added. Optimized frequency setup (derived fromsimulated annealing) for ICI. * controlfiles/instruments/smr/TestICI_fast.arts, TestICI_fast.ybatch.ref.xml: Added. ICI test case and corresponding reference output. * controlfiles/CMakeLists.txt: ICI test case added in "fast" chain. * controlfiles/instruments/smr/ici.arts: bugfix in comments. 2014-06-11 Jana Mendrok * arts-2-2-2 * src/m_cloudbox.cc, methods.cc: Added WSMs interfacing the hydrometeor size distribution parametrizations providing dN/dsize. For details see built-in doc. 2014-06-10 Jana Mendrok * arts-2-2-1 * continua.cc (MPM93IceCrystalAbs, MPM93WaterDropletAbs): Include vmr limits into if-branch of xsec calc. Fixes missing xsec calc for liquid water/ice continuum for abs_lookup, bug reported by Ian Adams. 2014-06-06 Oliver Lemke * arts-2-2-0 * 2.2 Release 2014-06-06 Oliver Lemke * arts-2-1-897 * doc/doxygen/Doxyfile.in: Remove obsolete variables. * src/continua.cc: Comment out unused constants. 2014-06-05 Oliver Lemke * arts-2-1-896 * CHANGES-2.2: Move pnd_field and scat_data calculations to Key Features. * CMakeLists.txt: Remove g95 support (not working properly). Throw error if size of long != 8 if Fortran is enabled. * README: Add note about Fortran requirements. 2014-06-05 Jana Mendrok * arts-2-1-895 * CHANGES-2.2: added zeropadding. 2014-06-05 Jana Mendrok * arts-2-1-894 * CHANGES-2.2: minor corrections/completions. 2014-06-05 Patrick Eriksson * arts-2-1-893 * CHANGES-2.2: Added some points to General, partly by moving down from Key features. 2014-06-05 Oliver Lemke * arts-2-1-892 * CHANGES-2.2: Added. 2014-06-02 Oliver Lemke * arts-2-1-891 * src/src/m_nc.h (WriteNetCDFIndexed): Call WriteNetCDF instead of calling nca_write_to_file directly. * src/src/nc_io.cc (nca_read_from_file, nca_write_to_file), src/m_abs.cc (WriteMolTau): Put critical regions around all NetCDF IO because the NetCDF C-library is not thread-safe. 2014-06-01 Patrick Eriksson * arts-2-1-890 * src/m_rte.cc (yCalcAppend): Improved consistency checks. For absorption species, it is now checked that the same unit is used (vmr, nd ...) and for temperature HSE must now either be ON or OFF for both parts. Changes after some testing by Ole Martin. 2014-05-28 Oliver Lemke * arts-2-1-889 * src/abs_species_tags.h (SpeciesTag::operator==): Also take the CIA dataset index into account for equality comparison. Fixes bug reported by Mayuri. 2014-05-27 Patrick Eriksson * arts-2-1-888 * src/ppath.cc (raytrace_2d_linear_basic): It was assumed that zenith angle after tangent/turning point is below 90. Fixed. Should now work with "super-refractivity". (ppath_step_refr_1d): New version of this function. A new approach to handle paths starting with zenith angles below 90 and moving to > 90 due to "super-refractivity" was needed. The solution was just to adopt the 2D algorithm to 1D. That is, refraction in 1D, 2D and 3D are now handled in basically the same manner. * src/m_ppath.cc (ppath_stepRefractionBasic) (VectorZtanToZaRefr1D): Adopted call of get_refr_index_1/2d. * src/ppath_NotUsed.cc: Removed old version of refr_gradients_1d as these functions now use another set of arguments. (raytrace_1d_linear_basic): Old version put here. * src/refraction.cc: z_field was a vector for 1D etc. This differed from e.g. t_field, and z_field now Tensor3 inside the file. (refr_gradients_1d): New function, a downscaled version from 2D. * src/ppath.cc: Removed everything around do_gridcell_2d (the byltest version used). The code of do_gridcell_2d is found in ppath_NotUsed.cc. 2014-05-27 Patrick Eriksson * arts-2-1-887 * src/m_refraction.cc (complex_refr_indexIceWarren84): BUG FIX! The fortran sub-routine got wrong argument. It got 1/lambda, with lambda in m. Old code: n = refice_(f_grid[f] / SPEED_OF_LIGHT, t_grid[t]); While the input shall be lambda in um. For microwaves, this bug had biggest impact below 100 GHz. No significant impact for real part between 100 and 1000 GHz. 2014-05-26 Oliver Lemke * arts-2-1-886 * src/methods.cc, src/m_nc.h (WriteNetCDFIndex): Added writing of indexed NetCDF files analogous to WriteXMLIndexed. 2014-05-23 Oliver Lemke * arts-2-1-885 * src/m_optproperties.cc (ScatteringDoitMergeParticles1D): Don't force particles to have same temperature grid. Don't calculate top-most pressure levels, it's 0 anyway in pnd_field. Bug fix: Only set lower-most pnd_field to 0 if cloudbox does not touch the surface. * src/methods.cc (ScatteringDoitMergeParticles1D): Add z_field and z_surface as inputs. 2014-05-22 Patrick Eriksson * arts-2-1-884 * src/m_rte.cc (yCalcAppend): Removed a cout statement, that was just added for test purposes. 2014-05-22 Oliver Lemke * arts-2-1-883 * src/m_cloudbox.cc, src/m_optproperties.cc (ScatteringDoitMergeParticles1D): Moved to m_optproperties.cc. Ignore particles with density <= PND_LIMIT. 2014-05-21 Oliver Lemke * arts-2-1-882 * src/methods.cc (ScatteringDoitMergeParticles1D): Put alphabetically in the correct place. 2014-05-21 Oliver Lemke * arts-2-1-881 * src/m_cloudbox.cc, src/methods.cc (ScatteringDoitMergeParticles1D): New experimental method to speed up DOIT calculations. This method pre-calculates a weighted sum of all particles per pressure level before the actual DOIT calculation is taking place in *ScatteringDoit*. It should be called directly after pnd_fieldSetup (but after cloudbox_checkedCalc). *pnd_field* is resized to [np, np, 1, 1]. Where np is the number of pressure levels inside the cloudbox. The diagonal elements of the new *pnd_field* are set to 1, all others to 0. Accordingly, *scat_data_array* is resized to np. Each particle is the weighted sum of all particles at this presssure level. This is an experimental method currently only working for very specific cases. All particles must be of the same type and all particles must share the same f_grid and za_grid. And pha_mat_data, ext_mat_data and abs_vec_data must be all the same size. This method can only be used with a 1D atmosphere. 2014-05-20 Patrick Eriksson * arts-2-1-880 * src/m_rte.cc (yCalcAppend): Completed. * controlfiles/CMakeLists.txt: Added the test below as a fast one. * controlfiles/artscomponents/ycalcappend/TestYCalcAppend.arts: New folder and file. * src/m_jacobian.cc (jacobianClose): Removed jacobian as output. It wa sjust sized and set to zero, which anyhow is (and should be) done) in yCalc. * src/workspace.cc: Removed old non-active variables. * src/m_rte.cc (iyEmissionStandard): Only first element of iy_aux was set for "Radiative background". 2014-05-19 Patrick Eriksson * arts-2-1-879 * src/m_rte.cc (yCalcAppend): Start on new WSM. So far just y itself that is handled. 2014-05-19 Stefan Buehler * arts-2-1-878 * src/m_abs.cc (abs_lines_per_speciesAddMirrorLinesOld): Removed this function, since it is obsolete. (abs_lines_per_speciesAddMirrorLines): Added const qualifier to Index n definition. * src/methods.cc (abs_lines_per_speciesAddMirrorLinesOld): Removed. 2014-05-16 Oliver Lemke * arts-2-1-877 * src/m_abs.cc (abs_xsec_per_speciesInit): Add check to ensure that the species indexes in abs_species_active are smaller than the number of species. Fixes assertion reported by Theresa. 2014-04-30 Jana Mendrok * arts-2-1-876 * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_1D_cloudy.arts: Added info on poor DOIT and MC performance. * controlfiles/planetary_toolbox/demos/passive/DemoScat_DOIT_1D.arts: (Re)Define iy_cloudbox_agenda with explicitly setting maxratio in iyInterpCloudboxField, using same value as for ClouboxGetIncoming. 2014-04-30 Oliver Lemke * arts-2-1-875 * Reverted 2-1-874. Turns out there are a whole bunch of other problems with OS X 10.5. As it is EOL anyway, we hereby officially drop support for OS X 10.5. I reverted the previous fix because the manual allocation introduces a possible buffer overflow. 2014-04-30 Oliver Lemke * arts-2-1-874 * src/file.cc (get_absolute_path): Workaround a bug in the C-library realpath function on OS X < 10.6 that leads to a crash. Reported by Patrick. 2014-04-29 Jana Mendrok * arts-2-1-873 * src/m_ppath.cc (VectorZtanToZaRefr1D, VectorZtanToZa1D): Added runtime error catch of sensor position lower than given tangent altitude case. 2014-04-29 Jana Mendrok * arts-2-1-872 * src/ppath.cc (raytrace_1d_linear_basic): Improved checks for problematic refraction cases. Currently used: check that current predicted path point is still within grid cell. Implemented, but currently outcommented (switch on & test, please): check that path constant rule can be fulfilled over whole grid cell. * src/m_refraction.cc (refr_index_airMWgeneral): Minor doc improvement. * controlfiles/planetary_toolbox/includes/common/makegeometry3D_*.arts: Use refellipsoidForAzimuth for better fitting 1D refellipsoid to the 3D observation geometry. This (almost?) perfectly ensures correct zenith angles from tanh for ellipsoidal planet cases (before, north/south were undesireably pointing to different effective tangent altitudes than east/west for identical tanh requests - indicated by different Tb baseline). * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_3D_clearsky.arts: Cleaned up from planet rotation pseudo-wind testing stuff. Corrected info on zang-from-tanh limitations. Set an f_grid that is more illustrative of wind effects. * controlfiles/planetary_toolbox/demos/common/DemoMarsAtmo3D.arts: Switch on E-W winds again, now that planet rotation pseudo-wind issues fixed. * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_cloudy.arts: Added more clear doc on limitations of the different scattering solvers, specifically in Venus. * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_clearsky.arts: Add info on refraction issues to header. * controlfiles/planetary_toolbox/demos/passive/DemoScat_FOS_1D.arts, DemoMars_fullRT_1D_clearsky.arts: Minor fixes. 2014-04-28 Patrick Eriksson * arts-2-1-871 * src/ppath.cc (raytrace_1d_linear_basic): It is clear that some cases with very strong refraction not is handled. All should be OK for Earth, but low altitudes of e.g. Venus is not properly handled with refraction. As a temporary solution, added a check that gives a runtime error (giving a rough idea about the problem), to not end up with an asseert as before. Some tuning of the crieria for issuing the error could be needed. 2014-04-28 Oliver Lemke * arts-2-1-870 * src/methods.cc: Add wind_u_field as input to wind_u_fieldIncludePlanetRotation. It was only defined as output variable but used as input in the implementation. * src/m_atmosphere.cc (wind_u_fieldIncludePlanetRotation): Add missing initialization to 0 after resizing wind_u_field. Otherwise the += inside the loop is adding to garbage values. 2014-04-28 Oliver Lemke * arts-2-1-869 * src/interpolation.cc: Increase FD_TOL from 1e-3 to 1.5e-3 to fix assertion in gridpos_check_fd called from ppath_end_1d for Manfred's CIRC case. 2014-04-25 Jana Mendrok * arts-2-1-868 * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_1D_cloudy.arts, DemoMarsClouds1D.arts, controlfiles/planetary_toolbox/includes/mars/getclouds_mars.arts, clouds_mars.arts: Added. Martian cloud/dust case files. * controlfiles/planetary_toolbox/demos/common/DemoMarsSurface1D.arts: Use z_surface from 0th z_field level as preset setting (that's the only case when DOIT works...). * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_cloudy.arts: Improved documentation, particularly on scattering solver limitations. * controlfiles/planetary_toolbox/demos/passive/DemoScat_DOIT_1D.arts: More zenith angles in presetting. * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_clearsky.arts: Minor layout adjustment. * src/methods.cc: Spell/formulation fixes. 2014-04-25 Oliver Lemke * arts-2-1-868 * src/m_atmosphere.cc (AtmFieldsFromCompact): Fix assertion. Throw runtime error if abs_species only contains the first n species from atm_fields_compact. (n < number of species in atm_fields_compact) 2014-04-24 Jana Mendrok * arts-2-1-867 * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_cloudy.arts: Added/updated documentation. Slight adjustments to (tentatively) demonstrate malfunction of refracted path calculation. Added/updated cloud case documentation: * controlfiles/planetary_toolbox/demos/passive/DemoScat_[MC,DOIT,FOS]_1D.arts * controlfiles/planetary_toolbox/demos/common/DemoVenusClouds1D.arts * controlfiles/planetary_toolbox/includes/common/makeclouds1D.arts * controlfiles/planetary_toolbox/includes/venus/getclouds_venus.arts * controlfiles/planetary_toolbox/demos/common/ Demo[Venus,Mars,Jupiter]Atmo[1,3]D.arts, controlfiles/planetary_toolbox/includes/common/createvars.arts: Moved more regularly used WSV creation into createvars.arts. 2014-04-11 Oliver Lemke * arts-2-1-866 * src/linerecord.{cc,h} (LineRecord::ReadFromHitran2004Stream): Add optional parameter fmin. If the line center is below fmin, skip parsing the whole line. This can speed up catalog reading significantly depending on fmin (and indirectly fmax). * src/m_abs.cc (abs_linesReadFromHitran): Pass fmin to LineRecord::ReadFromHitran2004Stream. 2014-04-09 Oliver Lemke * arts-2-1-865 !!! IMPORTANT !!! From this version on, ARTS will only work with the HITRAN 2012 catalog by default. 'cmake -DWITH_HITRAN2008=1 ..' can be used to switch to HITRAN 2008. * src/m_abs.cc (abs_linesReadFromHitran): Add runtime error if catalog filename doesn't match the version arts was compiled for. * CMakeLists.txt, README: Add cmake option WITH_HITRAN2008. Update docs. * config.h.cmake, src/species_data.cc (define_basic_species_data): Use preprocessor variable USE_HITRAN2008 to switch between Hitran versions. 2014-04-08 Jana Mendrok * arts-2-1-864 * src/species_data.cc: Fixed typo in HNO3 isoratio (thanks oliver!). * controlfiles/artscomponents/cia/TestRTwithCIA.iy_reference.xml: Updated. Values slightly changed (sub-mK) due to slight changes in isoratios of H2O in arts-2-1-862. 2014-04-08 Patrick Eriksson * arts-2-1-863 * controlfiles/planetary_toolbox/demos/active/demo_earth_ionosphere.m: Correction of header text. 2014-04-07 Jana Mendrok * arts-2-1-862 * src/species_data.cc: Added CO2-727. Appeared newly in HITRAN2012. NOTE: with this, tag assignments for CO2-838 changed in HITRAN. This version of species_data.cc still made with 2008-and-older assignments (change to 2012 prepared: switch manually by out- & uncommenting the respective 2 lines in here - auto-switch seems not feasible, though.). Furthermore, updated all HITRAN iso-abundances to molparam.txt values from most recent version (2013!). * src/partition_function_data.cc: Added CO2-727. NOTE: CO2-727 needs also to be added to planet isoratio data files. So, also update your arts-xml-data! * controlfiles/artscomponents/absorption/IsoRatios_H2Oorig.xml: Adapted to be consistent with slight changes in species_data.cc. * src/methods.cc (iy_Calc), 3rdparty/partFct/partition_functions.py: Spellfixes. 2014-04-07 Oliver Lemke * arts-2-1-861 * src/m_abs.cc (abs_linesReadFromHitran): Output the line number in error message for easier debugging. * src/agenda_class.h (Agenda::push_back): Pass MRecord as const reference. 2014-04-03 Jana Mendrok * arts-2-1-860 * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_cloudy.arts: Added. Demo cloud case for Venus. MISSING proper DOC. * controlfiles/planetary_toolbox/demos/common/DemoVenusClouds1D.arts: Added. Demos/templates for getting venus cloud data. MISSING proper DOC. * controlfiles/planetary_toolbox/includes/common/makeclouds1D.arts: Added. Include file to prepare cloud data (get scat data into scat_data_array and pnd fields into pnd_field_raw, determine cloudbox, derive pnd_field from raw data). MISSING DOC. * controlfiles/planetary_toolbox/includes/venus/controlfiles/ getclouds_venus.arts, clouds_venus.arts: Added. Includes with Venus cloud data definitions and to pre-prepare Venus cloud single scattering and pnd data of selected setup for digestion into ARTS. MISSING DOC. * controlfiles/planetary_toolbox/demos/passive/ DemoScat_[MC,DOIT,FOS]_1D.arts: Added. Demos/templates for scattering solver setups for cloudy cases. * controlfiles/planetary_toolbox/includes/common/createvars.arts: Predefined some more helper WSVs with view on clouds. * controlfiles/planetary_toolbox/demos/common/DemoVenusSurface1D.arts: Default setting for t_surface in order to make MC setups (3D!) automatically work for all surface settings. Minor doc fix. * controlfiles/planetary_toolbox/includes/[venus,mars,jupiter]/ atmo_[venus,mars,jupiter].arts: Moved creating of WSV atmobase into createvars.arts (might BREAK Atmlab compatibility). * controlfiles/planetary_toolbox/includes/venus/getatmo_venus.arts, controlfiles/planetary_toolbox/demos/common/DemoVenusAtmo1D.arts, controlfiles/general/agendas_surface.arts: Minor doc fix. * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_3D_clearsky.arts: Re-include possible use of make-and-use-absLUT.arts. With the fixes from previous commits, this now also works for 3D. Added some doc on the possible use of either make-and-use-absLUT.arts or make-and-use-absLUT_1Dfor3D.arts. * controlfiles/general/agendas.arts: Added note on setting of iy_cloudbox_agenda. * controlfiles/general/agendasDOIT.arts: Updated to use passing of named parameters into WSMs. * src/m_append.h (Append): Added capability to append a Numeric to a Vector. * src/methods.cc (Apppend): Adapted to above and slight polishing of doc info. 2014-03-24 Jana Mendrok * arts-2-1-859 * src/m_abs_lookup.cc (find_nonlinear_continua): Bugfix. 2014-03-24 Jana Mendrok * arts-2-1-858 * src/m_abs_lookup.cc (find_nonlinear_continua): H2-, He-, CH4-CIA added as h2o_abs independent (i.e., not a non-linear species). 2014-03-24 Oliver Lemke * arts-2-1-857 * src/m_abs_lookup.cc (find_nonlinear_continua): Check for continuum tags by using SpeciesTag::TYPE_PREDEF and SpeciesTag::TYPE_CIA. Fixes crash reported by Jana. 2014-03-23 Jana Mendrok * arts-2-1-856 * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_3D_clearsky.arts: Added. A demo case for 3D, here made for making full use of martian winds. Also applies planet rotation. Disclaimer: (a) seems to be not fully functional when using global fields (some odd things seem going on with wind_u_fieldIncludePlanetRotation - asked Oliver to have a look on that) and (b) abs_lookup uses a 1D workaround as abs_lookup doesn't currently work properly for 3D (but that's ok for the toolbox case(s) as the atm data anyway is homogeneous; asked Oliver & Stefan to have a look) on the issue. * controlfiles/planetary_toolbox/includes/common/ make-and-use-absLUT_1Dfor3D.arts: Added. abs_lookup workaround for 3D cases based on 1D raw atmospheric fields (when trying to use 3d raw fields, AtmFieldsCalc will complain, i.e., should be save to use without side effects). * controlfiles/planetary_toolbox/includes/common/ makegeometry3D_refracted-air+electrons_geometrictanh.arts, makegeometry3D_refracted-air+electrons_truetanh.arts, makegeometry3D_refracted-air_geometrictanh.arts, makegeometry3D_refracted-air_truetanh.arts, makegeometry3D_unrefracted.arts: Added. Geometry-includes for 3D. * controlfiles/planetary_toolbox/demos/common/DemoMarsSurface3D.arts: Added. Demo/template for setting surface properties for 3D case. * controlfiles/planetary_toolbox/includes/common/getgrids_3Dsimple.arts: Discarded hard-coding of lat/lon_grid setup (2pts in each horizontal dimension (caused significant deltaTb when using with (inhomogeneous!) t_surface from file) and introduced number of grid points in lat/lon as user parameter. Using number of gridpoint instead of grid spacing ensures that end points are included in either case. Updated documentation accordingly & fixed some doc mistakes. * controlfiles/planetary_toolbox/demos/common/DemoMarsAtmo3D.arts: Introduced number of grid points in lat/lon as user parameter (see getgrids_3Dsimple.arts). Switched on winds in repository version. Moved abs_f_interp_order setting to any-wind section and removed "only MODIFY if you know, what you are doing" warning as you HAVE to reset it if winds shall be used. Fixed some spelling and layout issues. * controlfiles/planetary_toolbox/demos/common/DemoMarsAtmo1D.arts, DemoJupiterAtmo3D.arts: Removed "only MODIFY if you know, what you are doing" warning from winds section as one HAVE to reset abs_f_interp_order if winds shall be used. * controlfiles/planetary_toolbox/includes/common/use-absOnTheFly.arts: Removed (re)setting of and references to abs_f_interp_order. That's better done in the Demo*Atmo*.arts as there one knows, whether one wants winds (and needs to reset abs_f_interp_order), less prone to side effects. * controlfiles/planetary_toolbox/demos/common/DemoMars_fullRT_1D_clearsky.arts, DemoMarsSurface1D.arts, controlfiles/planetary_toolbox/includes/common/ make-and-use-absLUT.arts, makegeometry1D_unrefracted.arts, makegeometry1D_refracted-air_geometrictanh.arts, makegeometry1D_refracted-air+electrons_geometrictanh.arts, makegeometry1D_refracted-air_truetanh.arts, makegeometry1D_refracted-air+electrons_truetanh.arts: Doc/layout fixes. 2014-03-22 Oliver Lemke * arts-2-1-855 * cmake/modules/ArtsTestcases.cmake, controlfiles/CMakeLists.txt: Change naming scheme of testcases. Generate the name automatically from the controlfile path (just replacing the directory separator / with .): Old: arts.ctlfile.fast.pencilbeam New: arts.ctlfile.fast.artscomponents.pencilbeam.TestPencilBeam This change makes it much easier to identify the controlfile that belongs to each testcase. Omits the need to run 'ctest -V -N -R arts.ctlfile.fast.pencilbeam' to find out. Requested by Jana. Note that because the testnames are now longer than before, a terminal window wider than 120 chars is required for clean output. 2014-03-20 Oliver Lemke * arts-2-1-854 * src/file.{cc,h} (find_file, find_xml_file): In some cases the same file could be found through different paths (absolute/relative/~). This led to a warning being issued even though the two paths pointed to the same file. All filenames are now converted to absolute paths to avoid this. Bug reported by Richard. Sometimes the search order was wrong for filenames that needed an extension to be appended to be found. find_xml_file would return a match from a directory that is placed later in the search path than the directory which contains the correct match. Reverted change from 2-1-850: Ignoring the search path for filenames starting with './' breaks things when running arts from a different path than where the controlfile is located. Although using ./ to force the file being read from the current directory would be 'more correct' than what we do now, the problem is that '.' currently means 'the directory where arts is called'. It would work correctly if '.' could be expanded to 'the directory where the controlfile / include file is located that contains the ReadXML statement for this file'. The cost of implementing this logic in the parser doesn't justify the relatively low benefits. 2014-03-19 Richard Larsson * arts-2-1-853 * controlfiles/artscomponents/linemixing/TestLineMixingAndZeeman_50_to_70_G: Updated the slow test so that it no longer fails after arts-xml-data update. 2014-03-19 Oliver Lemke * arts-2-1-852 * src/linerecord.cc (LineRecord::ReadFromArtscat4Stream): Fix typo in vstr comparison. 2014-03-19 Oliver Lemke * arts-2-1-851 * src/linerecord.cc (LineRecord::ReadFromArtscat4Stream): 0 values for quantum numbers were falsely ignored. 2014-03-19 Oliver Lemke * arts-2-1-850 * src/file.{cc,h}: (find_file): Improved implementation. Remove unnecessary extension argument. Return list of all matching files found in the search path. Don't search all paths if filename starts with ./ (find_xml_file): List all matching files found in warning message. (open_input_file): Adapt call to find_file. * src/m_abs.cc (abs_speciesDefineAllInScenario): Use new find_xml_file function. * src/parser.cc (ArtsParser::parse_agenda): Adapt call to find_file. * src/m_optproperties.cc (scat_data_arrayCheck): Indent output messages. 2014-03-19 Jana Mendrok * arts-2-1-849 * controlfiles/planetary_toolbox/demos/passive/ DemoJupiter_fullRT_1D_clearsky.arts: Added. Complete version for Jupiter 1D clearsky RT. * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_clearsky.arts, DemoMars_fullRT_1D_clearsky.arts: Corrected note on negative/false tangent altitudes (for both true and geometric tanh they can be negative. for tru tanh, they are not allowed to be below the actual surface, though.). 2014-03-19 Jana Mendrok * arts-2-1-848 * controlfiles/planetary_toolbox/demos/passive/ DemoVenus_fullRT_1D_clearsky.arts: Added. Complete version for Venus 1D clearsky RT. * controlfiles/planetary_toolbox/demos/common/DemoVenusSurface1D.arts: Added. Demo/template for setting/deriving surface properties (altitude, temperature, reflection type) for Venus. * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_1D_clearsky.arts: Improved documentation following Patrick's comments. * controlfiles/planetary_toolbox/includes/common/ makegeometry1D_refracted-[air,air+electrons]_effectivetanh.arts -> makegeometry1D_refracted-[air,air+electrons]_truetanh.arts: Renamed effective tanh to true tanh. * controlfiles/planetary_toolbox/includes/common/make-and-use-absLUT.arts, controlfiles/artscomponents/arts-xml-data/TestSpectro_core.arts: Updated to new atmfields_checked requirements of abs_lookupSetup. 2014-03-18 Patrick Eriksson * arts-2-1-847 * src/m_refraction.cc (refr_index_airThayer): The coefficients in the expression applied are now GIN variables, and nominal values can now be modified. 2014-03-18 Oliver Lemke * arts-2-1-846 * src/file.{cc,h} (find_xml_file): Output full name of the selected and ignored file for better diagnostics. 2014-03-17 Oliver Lemke * arts-2-1-845 * src/file.{cc,h} (find_xml_file): Added. This method also outputs a warning to out1 if a .xml and .xml.gz version of the input file exists. (Suggested by Richard) * src/xml_io.cc (xml_read_from_file, xml_read_arts_catalogue_from_file): Use new find_xml_file function to avoid code duplication. * src/m_abs.cc (abs_cont_descriptionInit): Prepend abs_cont_ to variable names to avoid name clash with global parameters variable (clang 5.1). * src/methods.cc: Add info about extensions automatically being added to filenames by ReadXML. (Suggested by Manfred) 2014-03-17 Oliver Lemke * arts-2-1-844 * src/agenda_class.cc (Agenda::execute): Add a note to the bad_alloc exception message that reducing the number of threads might solve out of memory issues for large jobs. Suggested by Jana. 2014-03-13 Richard Larsson * arts-2-1-843 * src/m_lineshapes.cc: Fixed unsaved spelling mistake... 2014-03-13 Richard Larsson * arts-2-1-842 * src/m_lineshapes.cc: Added "Hui_etal_1978", implementation by Rosenkranz. This is based on a classic paper from 1978 referenced in the function's meta data. This function is most likely faster than the Faddeeva algorithm but might or might not fall apart for some input. This is not thouroughly tested by me. The function was added to minimize differences between RTTOV and ARTS. * src/controlfiles/artscomponents/zeeman/TestZeeman.arts, controlfiles/artscomponents/linemixing/TestLineMixingAndZeeman.arts: Modified to also use the "Hui_etal_1978" line shape. (Note that I did not have to change the reference file!). 2014-03-11 Jana Mendrok * arts-2-1-841 * src/m_checked.cc (atmfields_checkedCalc): Be a bit more helpful in abs_f_interp_order-in-case-of-wind error message (you have to set it >0 even if absLUT are not used). * controlfiles/general/general.arts: Downgrade the do-only-modify-when-you-know message on abs_f_interp_order as user HAS to change it if wind is to be used. 2014-03-10 Richard Larsson * arts-2-1-840 * src/m_zeeman.cc: BUG. There was a difference between theory in the Zeeman paper and code in ARTS. They way it was coded, horizontal and vertical polarization got shift around. I found this while restructuring the code to make it easier to compare with theory. 2014-03-07 Jana Mendrok * arts-2-1-839 * src/m_abs_lookup.cc (abs_lookupSetup): Pass atmfields_checked as input. To avoid abs_lookupSetup acting on (obviously) buggy data like negative temperatures. Remove a bunch of checks that are obsolte now as they are checked by atmfields_checkedCalc. (choose_abs_nls_pert): Avoid letting maxdev become infinity (as we can not divide a range [x,inf] into any number of steps and will forever stay in the make-steps while loop). And if it (still) is, throw a runtime error. * src/m_basic_types.cc (NumericInvScale): Added. A method to perform a divide. This as plenty of divide operations can only be represented by multiplication in an ugly way. * src/methods.cc: Adapt to the above changes. * src/species_data.cc: Corrected H2S HITRAN tag assignment. It's basically a HITRAN bug: For H2S HITRAN does not follow its own convention that tags are sorted in terms of isotopologue abundance. However, it's a very old bug, hence probability that HITRAN will fix it is low. So, we have to do something to make ARTS work properly with buggy HITRAN. If not fixed (i.e., for all previous ARTS versions!), HITRAN-to-ARTSCAT conversion of H2S minor isotopologues is WRONG! * src/absorption.h (SpeciesRecord): Removed check for increasingly sorted HITRAN tags. This to allow the above change to work. * controlfiles/artscomponents/cia/TestRTwithCIA.iy_reference.xml: Updated with values matching modified O2 & H2O data in Perrin line data. * controlfiles/artscomponents/montecarlo/TestMonteCarloDataPrepare.arts: Do atmfields_checkedCalc before abs_lookupSetup. * controlfiles/artscomponents/arts-xml-data/spectrotest.py: (get_data): Consider that each abs_species entry is an array of tags and allow for multi-tag entries. (first_substring): Catch case when substring is not found. * doc/uguide/absorption.tex: In CIA part, added note on CO2-CO2 alternative. 2014-03-06 Patrick Eriksson * arts-2-1-838 * Things fixed, inspired by question from Jana: * src/m_sensor.cc (AntennaConstantGaussian1D): The algorithm for setting up mblock_za_grid was not perfect. I had selected "cumsum", while "cumtrapz" is a better option to avoid what could be seen as an edge effect. Also added a runtime check. * src/m_sensor.cc (antenna_responseGaussian): Added a runtime check. * src/methods.cc: Editing to reflect change below, for affected methods. * src/sensor.cc (gaussian_response_autogrid): The creation of the grid slightly changed, from using linspace to nlinspace. To ensure perfect fit with defined end points. Now the spacing adjusted accordingly, downwards. So grid spacing now becomes slightly smaller. 2014-03-05 Richard Larsson * arts-2-1-837 * controlfiles/CMakeLists.txt: Added one slow line mixing test. * controlfiles/artscomponents/linemixing/*: There is one more test here that shows how to set this up for the entire band. I might add a test later to show how to do Zeeman for one line but Line Mixing for the entire band. The other files are updated because I had forgotten that artscat4 requires all species to be defined. This error was pointed out to me by Jana. * controlfiles/artscomponents/zeeman/*: The files are updated because I had forgotten that artscat4 require all species to be defined. This error was pointed out to me by Jana. 2014-03-05 Oliver Lemke * arts-2-1-836 * src/linerecord.cc (LineRecord::ReadFromArtscat4Stream): Parse additional quantum numbers v1, v2, v3 and f. Check that species is O2 because the format for other species is different. 2014-03-03 Patrick Eriksson * arts-2-1-835 * src/m_sensor.cc (antenna_responseGaussian) (backend_channel_responseGaussian): Just changed to use gaussian_response_autogrid. (antenna_responseVaryingGaussian): New WSM. * src/sensor.cc (gaussian_response): Now this function just calculates the gaussian response. That is, a more proper "core" function. (gaussian_response_autogrid): The old function renamed.This one also creates a grid. 2014-02-28 Richard Larsson * arts-2-1-834 * controlfiles/CMakeLists.txt: Added two line mixing tests. * controlfiles/artscomponents/linemixing/*: These are the tests. There is still no reading routine to get vibrational numbers out of Agnes catalog, so these tests are only preliminary and will have to be extended at a later date when this reading routine is in place. The problem with not reading the vibrational state is that we do not know inside ARTS which line is supposed to be line matched --- no two lines are allowed to be matched with the same input. * controlfiles/artscomponents/zeeman/*: More strongly linked this test to arts-xml-data, removing the magnetic field files that this folde used to contain. 2014-02-27 Richard Larsson * arts-2-1-833 * controlfiles/CMakeLists.txt: Activated a Zeeman test if arts-xml-file is in path. * controlfiles/artscomponents/zeeman/*: Adapted the Zeeman test. Note that there are differences between the previous HITRAN using test and this test that uses Agnes catalog. These differences were at 45 K. * src/m_zeeman.cc: Added a simple check to allow the user to set the magnetic field strength manually. Useful for model comparisons. 2014-02-27 Oliver Lemke * arts-2-1-833 * src/linerecord.cc (LineRecord::ReadFromArtscat4Stream): Fix parsing of QuantumNumbers N + J. * controlfiles/artscomponents/zeeman/TestZeeman.arts: Read from Agnes Catalog. 2014-02-25 Richard Larsson * arts-2-1-832 * src/make_auto_md_cc.cc: Added the function below. * src/methods.cc: Added the function below * src/m_reduce.h: Function to reduce higher order tensors to lower order tensors. Can, e.g., convert a 1x4 matrix to Vector type. This is a simple function that is complementary to the Extract function. 2014-02-25 Oliver Lemke * arts-2-1-831 * src/matpack{VI,VII}.cc: Hot fix for hudson build error. 2014-02-25 Oliver Lemke * arts-2-1-830 * src/matpack{III,V}.cc: Missed these in previous commit. 2014-02-25 Oliver Lemke * arts-2-1-829 * src/matpackVI.{h,cc}, src/matpackVII.{h,cc}: Add get_c_array. * src/matpack*.cc: Make error message for get_c_array less convoluted. 2014-02-25 Patrick Eriksson * arts-2-1-828 * src/sensor.cc (sensor_integration_vector): Changed expressions for x2 and x3, to avoid numerical problems for e.g. (f+df)^3-f^3. A slight rewrite of c0 and c1, common term now outside ( ). Added an error message, if f >=0 and and any h <= -small_value. 2014-02-23 Patrick Eriksson * arts-2-1-827 * src/m_general.cc (Test): Now including a test of sensor_integration_vector and sensor_integration_vector2. It confirms that sensor_integration_vector gives exact result when the two functions are piece-wise linear. * src/sensor.cc (sensor_integration_vector): Header text improved. Some cleaning/changes of the code. The only real change is that the grid normalisation is changed. The normalisation now maps x_f to [0,1] (before x_g). In addition, the final result did not consider this normalisation. This was a bug, but still all OK with sensor_norm set to 1. A note: Tried to deactivate normalisation and the Odin-SMR test then raised an error. Seems that Tb changed with 7 K. So the code appears to be sensitive for numerical issues ... (sensor_integration_vector2): A version of the function above, but strictly following the sensor repsonse article. * src/sensor.cc: Removed some old inactive code related to Stokes rotation. 2014-02-21 Patrick Eriksson * arts-2-1-826 * controlfiles/CMakeLists.txt: Added running file below, as part of fast. * controlfiles/artscomponents/stokesrot/TestStokesRotation.arts: A file demonstrating and testing Stokes rotation, as well as shows how to simply set up an atmosphere lacking attenuation. * src/m_abs.cc (propmat_clearskyZero): New WSM. Use with care! * src/rte.cc (get_ppath_abs): Now handles the case of no abs_species. * src/m_checked.cc: A small fix to avoid crash if abs_species is empty. Then no need to search for negative VMRs. 2014-02-21 Patrick Eriksson * arts-2-1-825 * src/m_sensor.cc: Removed some inactive code at end of file. This including an old version of new method below. (sensor_responseStokesRotation): New WSM . * src/workspace.cc: Added stokes_rotation. 2014-02-19 Richard Larsson * arts-2-1-824 * AUTHORS: Added myself to "important component" contributor list. Remove or move as you see fit. * doc/uguide/absorption_theory.tex: Changed the Zeeman part of the theory to only reference the Zeeman module paper. The old text was written before there was support for DJ=0 species, and before we had taken into account magneto optics. * doc/uguide/references.bib: Added the Zeeman paper. If there is another way to reference 'internal' papers, please let me know. 2014-02-18 Oliver Lemke * arts-2-1-823 * src/CMakeLists.txt: Fix link libraries for test_omp. (Bug reported by Patrick) 2014-02-06 Jana Mendrok * arts-2-1-822 * controlfiles/planetary_toolbox/demos/passive/ DemoMars_fullRT_1D_clearsky.arts: Added. Complete version for 1D clearsky RT. * controlfiles/planetary_toolbox/demos/common/: Added. Folder for active/passive shared templates (user is supposed to modify these files). * controlfiles/planetary_toolbox/demos/common/DemoVenusAtmo1D.arts, DemoJupiterAtmo1D.arts, DemoMarsAtmo1D.arts, DemoVenusAtmo3D.arts, DemoJupiterAtmo3D.arts, DemoMarsAtmo3D.arts: Moved here from controlfiles/planetary_toolbox/. * controlfiles/planetary_toolbox/demos/common/DemoMarsSurface1D.arts: Added. Demo/template for setting/deriving surface properties (altitude, temperature, reflection type). * controlfiles/planetary_toolbox/includes/common/use-absOnTheFly.arts: Do abs_xsec_agenda_checkedCalc in there. * controlfiles/general/agendas_surface.arts controlfiles/planetary_toolbox/includes/common/ makegeometry1D_unrefracted.arts: Minor fixes. * controlfiles/planetary_toolbox/demos/passive/fullRT_Mars.arts, My-Version-Of-DemoMarsAtmo1D.arts: Deleted work-in-progress version. 2014-02-03 Jana Mendrok * arts-2-1-821 * controlfiles/planetary_toolbox/demos/passive/fullRT_Mars.arts: Continued to work on. Included: - selectable level of refraction (via INCLUDEs) - selectable way of absorption calc (via INCLUDEs) - applicable also with wind and stokes_dim>1 (tested) * controlfiles/planetary_toolbox/includes/common/ makegeometry1D_unrefracted.arts, makegeometry1D_refracted-air_effectivetanh.arts, makegeometry1D_refracted-air+electrons_effectivetanh.arts, makegeometry1D_refracted-air_geometrictanh.arts, makegeometry1D_refracted-air+electrons_geometrictanh.arts: Added. Bunch of plug&play type INCLUDEs to prepare viewing geometry setup (allowing to specify and handle both viewing angles AND tangent altitudes within one run) and handle different ways of refraction. * controlfiles/planetary_toolbox/includes/common/use-absOnTheFly.arts, make-and-use-absLUT.arts: Added. plug&play type INCLUDEs to handle different ways of absorption calculations (LUT, OtF). * controlfiles/planetary_toolbox/DemoMarsAtmo1D.arts, controlfiles/planetary_toolbox/demos/passive/My-Version-Of-DemoMarsAtmo1D.arts: Unbreak wind settings (getwinds_mars.arts didn't like NSwind and EWwind to be conmpletely ignored). * controlfiles/planetary_toolbox/DemoMarsAtmo1D.arts, DemoVenusAtmo3D.arts, DemoJupiterAtmo3D.arts, DemoMarsAtmo3D.arts, controlfiles/planetary_toolbox/demos/passive/My-Version-Of-DemoMarsAtmo1D.arts: For winds to work, included (outcommented, to be conciously uncommented by user) "IndexSet( abs_f_interp_order, 1 )". * controlfiles/artscomponents/arts-xml-data/TestSpectro_core.arts Updated to unbreak (for changes related to CIA inclusion). * controlfiles/artscomponents/arts-xml-data/spectrotest.py: Improved plotting and stats report for spectroscopy tests. * src/species_data.cc, workspace.cc, m_abs.cc, doc/uguide/absorption.tex, controlfiles/general/general.arts, controlfiles/artscomponents/cia/TestRTwithCIA.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_[Venus,Mars].arts, controlfiles/planetary_toolbox/DemoJupiterAtmo1D.arts: Minor spelling and layout fixes. 2014-01-20 Stefan Buehler * arts-2-1-820 * src/gas_abs_lookup.cc (Adapt): Added runtime error if a species is missing in the lookup table, but requested in the calculation. (On request by Jana Mendrok.) 2014-01-15 Patrick Eriksson * arts-2-1-819 * src/ppath.cc: Removed some lines now obselete after changes in the do_gridcell_Xd_byltest functions. Found by Oliver, using Xcode code analyser. 2014-01-14 Oliver Lemke * arts-2-1-818 * src/m_rte.cc (yCalc), src/rte.cc (iyb_calc): Extract parallel loop bodies into separate functions. Works around the OpenMP performance issue mentioned in previous commit when neither the mblock nor za loop actually run vectorized. Speed ups vary. E.g. TestWfuns runs 25% faster on our 32 core server when number of cores > nza. Print diagnostic info about parallelization and iteration count to out3. (iyb_calc): Further tweak parallel loop condition for za loop. Only delay parallelization if nf >= 10*nza. * src/m_ppath.cc (ppathFromRtePos2): Remove duplicate code. los and dza where calculated twice for atmosphere_dim <= 2 (inside and after the if statement). * src/debug.h (DEBUG_VAR, DEBUG_VAR_FLT): Added more debug macros. * src/m_disort.cc (ScatteringDisort): Use DEBUG_VAR instead of DEBUG_PRINT. * src/xml_io.cc (ArtsXMLTag::read_from_stream): Initialize ch. 2014-01-13 Patrick Eriksson * arts-2-1-817 * src/m_checked.cc (sensor_checkedCalc): Added special check that sensor_response_aa is empty if antenna_dim = 1. Not catched before. 2013-12-12 Oliver Lemke * arts-2-1-816 * OpenMP performance improvements. * rte.cc (get_ppath_trans): Remove parallelization. Performance breaks down if threads > 4. This behavior is consistent with different compiler versions on different operating systems and machines. It can lead to deadlocking. OdinSMR test case with 32 threads sometimes never finishes. For explanation see below. * src/test_omp.cc, src/CMakeLists.txt: Add testcase to illustrate performance impact of 'nested' OpenMP loops. Case 1): Runtime without #pragma omp in outer loop. Case 2): Runtime with #pragma omp if (0) in outer loop, still only the inner loop will run in parallel exactly as before. (1) Laptop 8 threads: 6.3s (2) Laptop 8 threads: 22.1s (1) Server 8 threads: 3.2s (CPU Load 700-800%) (2) Server 8 threads: 36.3s (CPU Load only 300%) This is a quirk with OpenMP. When the program starts, OpenMP creates X threads (X=8 in the test above). In case (1), these threads will be used for parallelizing the inner loop. However, in case (2), even though the outer loop runs sequentially due to the if (0) condition, OpenMP cannot use the already existing 8 threads for the inner loop. Every time it enters the inner loop, it has to create 8 new threads. As creating threads is very expensive, this leads to the seen drop in performance. 2013-12-29 Patrick Eriksson * arts-2-1-815 * src/sensor.cc (antenna1d_matrix): Wrong size variable used for interpolation of aresponse_za_grid: n_za replaced by n_ar_za * src/m_sensor.cc (sensor_responseAntenna): Added call of antenna_response.checksize_strict(). This check was missing. 2013-12-15 Patrick Eriksson * arts-2-1-814 * src/ppath.cc (raytrace_2d_linear_basic): Had missed to set l_start to lraytrace when calling do_gridcell_2d_byltest, as done for the corresponding 3d function in arts-2-1-402. 2013-12-12 Gerrit Holl * arts-2-1-813 * controlfiles/general/agendas.arts: Fix small typo in comment * controlfiles/instruments/smr/ici.arts: Set instrument geometry 2013-12-12 Oliver Lemke * arts-2-1-812 * CMakeLists.txt: Bump cmake requirement to 2.8.0. 2013-12-11 Gerrit Holl * arts-2-1-811 * src/agendas.cc: Point to include file 'agendas.arts' that should be useful for most users. * src/methods.cc: Fix typo. * controlfiles/instruments/smr/ici.arts, controlfiles/instruments/amsu/mwi.arts, controlfiles/instruments/amsu/mws.arts: Added reference setups for ICI, MWI, MWS (all include 183-GHz channels). MWI and MWS need some tuning before use, in particular regarding the frequency grid spacing for the lower frequencies, where I don't know good values. * doc/uguide/formalism.tex: Fix typo. * doc/uguide/concept.tex: Tell user that general.arts can be nice to look at. 2013-11-21 Jana Mendrok * arts-2-1-810 * controlfiles/planetary_toolbox/demos/passive/fullRT_Mars.arts, My-Version-Of-DemoMarsAtmo1D.arts: Added. A first simple demo for full passive planetary RT calc. * controlfiles/planetary_toolbox/DemoMarsAtmo1D.arts, controlfiles/planetary_toolbox/demos/passive/demo_planets_limbcomp.m: Minor layout and spell fixes. * src/m_batch.cc, methods.cc (MatrixExtractFromTensor3): Introduced this WSM for matrix from tensor3 extraction, i.e. for getting a slice in whatever dimension out of a tensor3. Equivalent to VectorExtractFromMatrix. (Would be nicer, though, if we had a common method for extracting TensorN-1 out of TensorN...). 2013-11-04 Patrick Eriksson * arts-2-1-809 * src/optproperties.cc (ParticleTypeFromString): The option macroscopically_isotropic was not included in error message. * src/m_tmatrix.cc (scat_meta_arrayAddTmatrixOldVersion): As a temporary solution, extracted the version from arts-2-1-754 and gave it this name. 2013-10-31 Richard Larsson * arts-2-1-808 * doc/uguide/absorption.tex: Added a warning about using HITRAN04 and HITRAN08 in conjunction with line mixing. There appears to be some quantum coding error in the older versions of HITRAN that causes the line mixing data to be matched with the wrong lines. Recommended solution is to use HITRAN2012. I am presently uncertain how/where to warn the user in ARTS about this issue. 2013-10-29 Patrick Eriksson * arts-2-1-807 * controlfiles/artscomponents/faraday/test_faraday.m: * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Files now changed to allow that complete test is run from matlab with one call, before some manual editing of the arts cfile was needed. 2013-10-28 Patrick Eriksson * arts-2-1-806 * controlfiles/planetary_toolbox/demos/passive/demo_planets_limbcomp.m: * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_earth_ionosphere.m: * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Added optional argument workfolder to all these functions, to make it possible to extract control and data files from the run. 2013-10-27 Patrick Eriksson * arts-2-1-805 * Made some changes that hopfully shall decrease the risk to mix up rtp_pos and rte_pos when used for interpolation. This commit brakes backwards-compatibility: InterpSurfaceFieldToRtePos changed to InterpSurfaceFieldToPosition InterpAtmFieldToRtePos changed to InterpAtmFieldToPosition. For both these methods, the GIN pos is removed. The standard choice to use as position is rtp_pos. This is now default. Please check that rte_pos is not used here in your cfiles (that was the case earlier). * controlfiles/instruments/mhs/mhs.arts: * controlfiles/instruments/amsu/amsub_fast.arts: * controlfiles/instruments/amsu/amsub.arts: * controlfiles/instruments/amsu/amsua.arts: * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/artscomponents/clearsky/TestClearSky2.arts: * controlfiles/artscomponents/clearsky/TestClearSky.arts: * controlfiles/artscomponents/cia/TestRTwithCIA.arts: * controlfiles/artscomponents/doit/TestDOIT.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Earth.arts: * controlfiles/artscomponents/absorption/TestIsoRatios.arts: Adopted to changes below. Switched to use pre-defined agendas in most cases. For the AMSU and MHS files, rte_pos was incorrectly used instead of rtp_pos! This had no effect as 1D, but would otherwise give incorrect results. * controlfiles/general/agendas_surface.arts: Updated to match changes below. * src/m_surface.cc (InterpSurfaceFieldToPosition): Renamed from InterpSurfaceFieldToRtePos, and changed pos (GIN) to rtp_pos (IN). Also added z_surface as input to allow that rtp_pos is roughly consistent with the surface altitudes. * src/m_atmosphere.cc (InterpAtmFieldToPosition): Renamed from InterpAtmFieldToRtePos, and changed pos (GIN) to rtp_pos (IN). * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: [R,T,O,A] was added just in header. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Fixed bad comment. 2013-10-22 Patrick Eriksson * arts-2-1-804 * controlfiles/planetary_toolbox/demos/passive/demo_planets_limbcomp.m: Adopted to changes below. For abs_xsec_per_speciesAddCIA, using T_extrapolfac=3. More warnings in header text. * controlfiles/planetary_toolbox/includes/jupiter/atmo_jupiter.arts: * controlfiles/planetary_toolbox/DemoJupiterAtmo3D.arts: * controlfiles/planetary_toolbox/DemoJupiterAtmo1D.arts: Added H2-CIA-H2-0, H2-CIA-He-0, H2-CIA-CH4-0, CH4-CIA-CH4-0 * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Adopted to change below. * controlfiles/planetary_toolbox/DemoMarsAtmo3D.arts: * controlfiles/planetary_toolbox/DemoMarsAtmo1D.arts: * controlfiles/planetary_toolbox/includes/mars/atmo_mars.arts: Added CIA and PWR CO2-CO2, and modified accordingly. 2013-10-22 Patrick Eriksson * arts-2-1-803 * controlfiles/planetary_toolbox/demos/passive/demo_planets_limbcomp.m: New. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m. Fixed a typo. 2013-10-22 Patrick Eriksson * arts-2-1-802 * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_earth_ionosphere.m: * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Added [R,T,O,A] as output for all four functions. 2013-10-18 Patrick Eriksson * arts-2-1-801 * src/m_cloudradar.cc (iyCloudRadar): Added Transmission as aux variable. 2013-10-18 Oliver Lemke * arts-2-1-800 * src/abs_species_tags.h: == operator should return false for a CIA species where the second species doesn't match. 2013-10-18 Patrick Eriksson * arts-2-1-799 * controlfiles/planetary_toolbox/demos/active/DemoLinkBudget.arts: Fixed a high number of spelling mistakes in the header text. 2013-10-18 Stefan Buehler * arts-2-1-798 * src/lineshapes.cc (lineshape_norm_VVH): Fixed bug reported by Patrick. (Take absolute value of line center frequency, so that the factor works also for mirror lines at negative center frequency.) At least I think this fixes the bug, but I have no good testcase. Patrick, please test. :-) (lineshape_norm_linear): Same fix also here, although this function is deprecated anyway and no longer user visible. 2013-10-17 Patrick Eriksson * arts-2-1-797 * Defined 100 MHz as the lower frequency limit if there is any refraction due to free electrons! * src/m_refraction.cc (refr_index_airFreeElectrons): Changed check with respect to plasma grequency to use f_grid[0]. Also added a general demand that f_grid[0] is >= 100 MHz, to have a safe margin to birefringence (following article by Hartmann and Leitinger). * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Adjusted axis for one plot. 2013-10-17 Patrick Eriksson * arts-2-1-796 * Made some additions to test if they could help decreasing impact on radio occultation simulations of abrupt gradient changes in input data (as is the case for Venus). Helped a bit, but no huge success. Smaller peak values, but now both positive and negative "peaks". * src/m_atmosphere.cc (p_gridDensify): New WSM. (AtmFieldsCalc): Added GIN vmr_nonegative. (AtmFieldsCalcExpand1D): Adopted to change above. * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Now all test settings removed. Now final!?!? 2013-10-16 Jana Mendrok * arts-2-1-795 * src/gas_abs_lookup.cc(Extract): Relaxed identity check of f_grid entries according to Stefan's suggestion. Identity on floats is delicate, so now checking for diff<1Hz. 2013-10-16 Patrick Eriksson * arts-2-1-794 * Something is wrong with line mirroring !!! * src/m_abs.cc (abs_lines_per_speciesAddMirrorLinesOld): This is the old version. Put it back for test purpose. But shows the same bad feature. 2013-10-16 Patrick Eriksson * arts-2-1-793 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Something starnge is happening here, trying to understand what. * controlfiles/planetary_toolbox/demos/active/demo_earth_ionosphere.m: * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Adopted to renaming of O fields, and polishing of coemments. 2013-10-16 Patrick Eriksson * arts-2-1-792 * controlfiles/planetary_toolbox/DemoVenusAtmo3D.arts: * controlfiles/planetary_toolbox/DemoVenusAtmo1D.arts: Changed following addition below. * controlfiles/planetary_toolbox/includes/venus/atmo_venus.arts: Added "CO2-SelfContPWR93, CO2-ForeignContPWR93" as 'species'. 2013-10-15 Patrick Eriksson * arts-2-1-791 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Switched position between GPS and LEO, using new feature in the atmlab function used. 2013-10-15 Patrick Eriksson * arts-2-1-790 * doc/uguide/absorption.tex (subsection{Continua and complete absorption models}): Added H066 also here. 2013-10-15 Patrick Eriksson * arts-2-1-789 * controlfiles/general/continua.arts: CO2-SelfContHo66 and CO2-ForeignContHo66. * src/species_data.cc (define_basic_species_data): Added SelfContHo66 and ForeignContHo66. * src/continua.cc (xsec_continuum_tag): Added CO2-SelfContHo66 and and CO2-ForeignContHo66. (Ho66_CO2_self_continuum, Ho66_CO2_foreign_continuum): New. * Removed everything added by Stefan in arts-2-1-786. Sorry! 2013-10-14 Patrick Eriksson * arts-2-1-788 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Just changed fs to 14. 2013-10-14 Patrick Eriksson * arts-2-1-787 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Fine tuned settings. Partly to mimic figures from journal articles. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Just fixed a comment. * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: Defocus method 2 selected here. As this method appears most stable for the GPS altitude (and lower). 2013-10-14 Stefan Buehler * arts-2-1-786 * src/continua.cc (Oschlisniok2012_CO2_venus): Added this function. Just a stubb at the moment, implementation of equation left to Patrick. (xsec_continuum_tag): Added Oschlisniok2012 continuum call. * src/species_data.cc (CO2): Added CO2-Oschlisniok2012 absorption model. * controlfiles/general/continua.arts: Added entry for CO2-Oschlisniok2012 absorption model. 2013-10-14 Patrick Eriksson * arts-2-1-785 * controlfiles/artscomponents/radiolink/TestRadioLink.arts: defocus_shift hard coded to 1e-3, to not ruin consistency with reference values. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Just played around with settings. * src/methods.cc: After some tests, changed default for defocus_shift from 1e-3 to 3e-3. Was found to give more stable results. And maybe better represent the fact that there is a Fresnel zone. 2013-10-13 Patrick Eriksson * arts-2-1-784 * src/m_abs.cc (abs_lines_per_speciesAddMirrorLines): Added GIN max_f, to give the for stopping the mirroring at some frequency. Default is "mirror all", as before. 2013-10-13 Patrick Eriksson * arts-2-1-783 * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: Just removed a "keyboard" * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Now also covering gas absorption. Header and comments written. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Typo in comment. * controlfiles/planetary_toolbox/demos/active/ demo_earth_fascode_ionosphere.m: Was still in svn. 2013-10-12 Patrick Eriksson * arts-2-1-782 * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: Missed to do svn add. 2013-10-12 Patrick Eriksson * arts-2-1-781 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Some polishing of settings, but not ready. * controlfiles/planetary_toolbox/demos/active/demo_earth_ro.m: New. Includes both power and Faraday. Should be complete. * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Now using propmat_clearsky_agenda__OnTheFly_Faraday. * controlfiles/general/agendas.arts: Defined propmat_clearsky_agenda__OnTheFly_Faraday. * controlfiles/planetary_toolbox/demos/active/demo_earth_ionosphere.m: Made the name of the function a bit short (removed fascode_). And some fine tuning of plotting. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Now a complete test, with detailed comments. 2013-10-12 Jana Mendrok * arts-2-1-780 * src/m_abs.cc(abs_xsec_per_speciesInit): Bugfix(?). Added a safety check that number of abs_species_active is not larger than number of abs_species. Might happen, when the abs_xsec_per_species* WSM are accessed directly and not through the agenda (e.g. in TestCIA.arts). * controlfiles/general/agendas.arts: Added abs_xsec_agenda__withCIAextraT for CIA with (sufficient in practice) temperature extrapolation range. * controlfiles/planetary_toolbox/includes/venus/atmo_venus.arts, DemoVenusAtmo1D.arts, DemoVenusAtmo3D.arts: Bugfix. There were some more species in day profiles than in night. Added them as selectable (also requires an arts-xml-data update). Added a CO2-CO2-CIA species. 2013-10-11 Patrick Eriksson * arts-2-1-779 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Now using arts_radioocc_1D_power. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Now including some test settings. * src/m_transmitter.cc (iyRadioLink): -1 instead of f_grid was sent to defocusing functions!!! This has worked until now without any bug, but was now catched by free electron refr_index method. * controlfiles/general/agendas.arts: Removed an unnecessary ignore from refr_index_air_agenda__GasThayerAndElectrons. * src/m_refraction.cc (refr_index_airFreeElectrons): Introduced demand_vmr_value, for higher flexibility. Extended built-in doc to warn about the default constrain on abs_species, and that demand_vmr_value shall be used with care. * src/ppath.cc (raytrace_1d_linear_basic): Tangent point a few mm below a pressure level could lead to infinite loop. A bug caused by change of how tangent points are handled. Fixed by adding: za_flagside = za_v[1]; 2013-10-11 Jana Mendrok * arts-2-1-778 * src/test_cia.cc(test01): Fixed the cia_interpolation call that Hudson didn't like. 2013-10-11 Jana Mendrok * arts-2-1-777 * src/m_cia.cc, methods.cc (abs_xsec_per_speciesAddCIA): Added temperature extrapolation factor as method input. * src/cia.cc,cia.h(Extract,cia_interpolation): Handling temperature extrapolation factor. * src/m_refraction.cc(refr_index_airMWgeneral): Catch case sum(vmr)=0 over all refraction species in rescaling. Fixes issue pointed out by Patrick. 2013-10-11 Patrick Eriksson * arts-2-1-776 * controlfiles/planetary_toolbox/demos/active/demo_venus_ro.m: Started. * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Added data and info. 2013-10-11 Oscar Isoz * arts-2-1-775 * src/m_sensor.cc src/sensor.cc src/methods.cc: Corrected how the passbands are calculated for the AMSU-A sensor. 2013-10-10 Patrick Eriksson * arts-2-1-774 * controlfiles/planetary_toolbox/demos/active/demo_mars_ro.m: Just a start. 2013-10-10 Patrick Eriksson * arts-2-1-773 * controlfiles/planetary_toolbox/demos/active/ demo_earth_fascode_ionosphere.m: A demo script using the new atmlab functions. * controlfiles/planetary_toolbox/demos/active/ earth_tropical_false3d_0to64km_lowfreq.arts: * controlfiles/planetary_toolbox/demos/active/ earth_tropical_false3d_0to1000km_lowfreq.arts: Updated these two include files. * controlfiles/planetary_toolbox/demos/active/DemoLinkBudget.arts: Finished this demo file. * controlfiles/general/agendas.arts: Defined iy_transmitter_agenda__UnitUnpolIntensity. 2013-10-10 Jana Mendrok * arts-2-1-772 * controlfiles/planetary_toolbox/includes/venus/getwind_venus.arts, controlfiles/planetary_toolbox/includes/jupiter/getatmo_jupiter.arts, controlfiles/planetary_toolbox/includes/jupiter/getwind_jupiter.arts, controlfiles/planetary_toolbox/includes/jupiter/getmagfield_jupiter.arts, controlfiles/planetary_toolbox/includes/mars/getwind_mars.arts, controlfiles/planetary_toolbox/includes/common/makemagfield.arts, controlfiles/planetary_toolbox/includes/common/makefield1D.arts, controlfiles/planetary_toolbox/includes/common/makefield3D.arts, controlfiles/planetary_toolbox/includes/common/makeatmo1D.arts, controlfiles/planetary_toolbox/includes/common/makeatmo3D.arts, controlfiles/planetary_toolbox/includes/common/getgrids_1D.arts: Improved documentation. 2013-10-09 Jana Mendrok * arts-2-1-771 * src/m_atmosphere.cc(GriddedFieldLatLonRegrid): Added the true-3D-data check here already to catch mistakenly empty grids (else is_cyclic causes an assert). * controlfiles/planetary_toolbox/TestJupiterAtmo.arts, TestVenusAtmo.arts: Removed. Get replaced by the files below. * controlfiles/planetary_toolbox/DemoVenusAtmo[1,3]D.arts, DemoJupiterAtmo[1,3]D.arts: Added. Demos/templates for getting venus and jupiter atmospheric data. Separate setups for 1D and 3D. Replace the previous Test*Atmo.arts. * controlfiles/planetary_toolbox/DemoMarsAtmo[1,3]D.arts, controlfiles/planetary_toolbox/includes/mars/getatmo_mars.arts, controlfiles/planetary_toolbox/includes/common/makemagfield.arts: Minor fixes. * controlfiles/planetary_toolbox/includes/venus/atmo_venus.arts, getatmo_venus.arts, jupiter/atmo_jupiter.arts, getatmo_jupiter.arts: Improved documentation. * controlfiles/planetary_toolbox/includes/mars/getwind_mars.arts, controlfiles/planetary_toolbox/includes/jupiter/getmagfield_jupiter.arts: Bugfixes. 2013-10-09 Patrick Eriksson * arts-2-1-771 * Removed/changed stuff stopping iyRadioLink to be used with ppath_agenda__FollowSensorLosPath. This combination can i fact be very useful. * src/m_transmitter.cc (iyRadioLink): Removed if statement demanding transmitter. rte_los now an input, passed on to ppath_agenda. * src/rte.cc (defocusing_sat2sat): Changed if-statement detecting if limb sounding is being performed. Old one demanded tracking of transmitter. 2013-10-09 Jana Mendrok * arts-2-1-770 * controlfiles/planetary_toolbox/DemoMarsAtmo3D.arts, DemoMarsAtmo1D.arts, getgrids_1D.arts, getgrids_3Dsimple.arts, getgrids_3Dspaced5deg.arts, getatmo_mars.arts, atmo_mars.arts: Improved documentation. 2013-10-09 Richard Larsson * arts-2-1-769 * controlfiles/general/continua.arts: Added O2-MPM89 support since it is already in ARTS. 2013-10-09 Jana Mendrok * arts-2-1-768 * controlfiles/planetary_toolbox/includes/mars/getatmo_mars.arts: Remove grid settings recently introduced by Patrick. We rather do them in a separate include (and they do not belong in here, where we just read the raw atmospheric grids). * controlfiles/planetary_toolbox/TestMarsAtmo.arts: Removed. Gets replaced by the files below. * controlfiles/planetary_toolbox/DemoMarsAtmo[1,3]D.arts: Added. Demos/templates for getting mars atmospheric data. Separate setups for 1D and 3D. They replace the previous TestMarsAtmo.arts. * controlfiles/planetary_toolbox/includes/common/getgrids_1D.arts, getgrids_3Dsimple.arts, getgrids_3Dspaced5deg.arts: Added. Include files that create p/lat/lon grid purely on p/lat/lon_min/max specifications by the user (everything else set or extracted internally). * controlfiles/planetary_toolbox/includes/common/makemagfield.arts, makefield1D.arts, makefield3D.arts: Use named parameters instead of positional passing. * controlfiles/planetary_toolbox/includes/common/createvars.arts: A string variable added. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: Added abs_xsec check within outcommented make-LUT part. * ChangeLog: Added my forgotten-to-commit last entry and fixed version numbering. 2013-10-08 Richard Larsson * arts-2-1-767 * src/methods.cc: Changed documentation on the definition function for line shapes to include the Faddeeva option. 2013-10-07 Patrick Eriksson * arts-2-1-766 * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Updated reference values, to have a clear reference (data and platform given as comment in file). Increased tolerance for y to 2e-17, following data reported by Nicolas. This is about 2%, but impact of numerical inaccuracy on defocuisng results are high (see comment for arts-2-1-495) * controlfiles/artscomponents/faraday/test_faraday.m: Improved comment and accuracy of scaling factor. * doc/uguide/faraday.tex: Corrected a citep to citet. 2013-10-06 Jana Mendrok * arts-2-1-765 * src/m_cloudbox.cc, methods.cc (ParticleTypeAdd, ParticleTypeAddAll, ParticleType2abs_speciesAdd): Removed p/lat/lon_grid as passed variables. We don't need them in there. Whether they are consistent with atmosphere_dim is not necessary to be checked HERE! * controlfiles/artscomponents/arts-xml-data/TestClouds_Mars.arts, TestClouds_Venus.arts: Added. Cloud data tests. * controlfiles/CMakeLists.txt: Cloud data test added to test suite. 2013-10-04 Jana Mendrok * arts-2-1-764 * controlfiles/CMakeLists.txt: Oops, TestGridsExtract requires arts-xml-data. Moved into the corresponding if clause. 2013-10-04 Jana Mendrok * arts-2-1-763 * src/m_atmosphere.cc,methods.cc (lat_gridFromRawField, lon_gridFromRawField): Added. For extraction of lat_ and lon_grid from data grids. Similar to p_gridFromZRaw, but acting on a generic GriddedField3 instead of on z_field_raw. * controlfiles/artscomponents/helpers/TestGridsExtract.arts: Added. Testing above introduced grid extraction including cropped grids as introduced in 2-1-759. * controlfiles/CMakeLists.txt: Added above test case to the test suite. 2013-10-04 Jana Mendrok * arts-2-1-762 * src/m_refraction.cc(refr_index_airMWgeneral): Added H2O with reference refractivity calculated from Thayer. * src/methods.cc(refr_index_airMWgeneral): Description adapted accordingly. * doc/uguide/refr_index.tex, refr_index_theory.tex: AUG and ATD on refr_index_airMWgeneral adapted accordingly. 2013-10-04 Jana Mendrok * arts-2-1-761 * src/m_atmosphere.cc(GriddedFieldPRegrid,GriddedFieldPRegridHelper): No attempt of interpolation if old grid is completely outside new grid. Rather set everything to 0 if zeropadding (else throw error, as usual). Fixes issue reported by Patrick in 2-1-760. 2013-10-03 Patrick Eriksson * arts-2-1-760 * src/m_refraction.cc (refr_index_airMWgeneral): Commented out if-statement demanding that sum(vmr) is close to 1. This is not working together with the Mars data. Discussed with Jana, and seems difficult to keep the constrain. Note that the method applies a "rescaling" to sum(vmr)=1. * controlfiles/planetary_toolbox/includes/mars/getatmo_mars.arts: Found a setting p_grid resulting in an assert error. Not tracked down, but setting left as a comment in the file. 2013-10-03 Patrick Eriksson * arts-2-1-759 * Jana and I have decided on a general principle for inclusion of atmospheres. Basically following what is already in place in eg. getatmo_mars.arts, but extend to automatically set p/lat/lon_grid, with the option to crop the grids. Some first step to implement this: * src/m_basic_types.cc (VectorCrop): New WSM. Note default values, trying to mimic +-Inf. For example this works: VectorCrop( out=p_grid, in=p_grid, min_value=0.1e2 ) * controlfiles/planetary_toolbox/TestMarsAtmo.arts: Removed setting of p_grid, lat_grid and lon_grid. * controlfiles/planetary_toolbox/includes/mars/getatmo_mars.arts: p_grid, lat_grid and lon_grid are now set here. lat_grid and lon_grid set to be empty if not 3D. Values for 3D are just test values, things will be improved ... 2013-09-30 Patrick Eriksson * arts-2-1-758 * controlfiles/general/agendas.arts: Defined. refr_index_air_agenda__GasThayerAndElectrons. This as refr_index_air_agenda__GasMWgeneralAndElectrons is NOT working for Earth, as water vapour is not considered at all by the MWgeneral method. 2013-09-23 Richard Larsson * arts-2-1-757 * src/{continua.{cc,h},species_data.cc,partition_function_data.cc}, controlfiles/general/continua.arts: Added Tretyakov et al. 2005 mpm-like continua model. Call "O2-TRE05" to get to it. This addition is just a copy of mpm93 with the Tretyakov et al. 2005 numbers instead of the mpm. * src/{m_zeeman.cc,linerecord.cc}: Added some quantum number reading for N and J so Zeeman Hund case b should work now. * doc/uguide/absorption.tex: Changed text on Zeeman here since NO can do b-case now. Also added O2-TRE05 to the right list. 2013-09-16 Johan Strandgren * arts-2-1-756 * src/cloudbox.cc (area_ratioH13): Corrected the values for alpha and beta. 2013-09-16 Johan Strandgren * arts-2-1-755 * src/methods.cc (scat_meta_arrayAddTmatrix): Updated GIN and description due to the changes for the aspect ratio and size inputs. Numeric aspect_ratio --> Vector aspect_ratio_grid Vector diameter_grid --> Vector diameter_max_grid * src/workspace.cc (scat_meta): Corrected two errors in the description. * src/m_tmatrix.cc (scat_meta_arrayAddTmatrix): Changed size input from equivalent diameter to diameter_max and changed the aspect ratio from Numeric to Vector. Added a loop to calculate meta data for each combination of diameter_max and aspect_ratio. Before the diameter_max was calculated, now it's the volume that is calculated from diameter_max and aspect_ratio. * src/m_cloudbox.cc (pnd_fieldSetup): Added a new PND parametrization with an included shape distribution (H13Shape). * src/cloudbox.cc: (pnd_fieldMH97, pnd_fieldH11, pnd_fieldH13): Added a check to make sure that just one aspect ratio is used for these parametrizations, just as before. (pnd_fieldH13Shape): The new PND parametrization with an included shape distribution (H13Shape). (IWCtopnd_H13Shape, area_ratioH13): The actual parametrizations containing the equations and variables to calculate the PND and area ratio based on temperature. * src/cloudbox.h: (pnd_fieldH13Shape, IWCtopnd_H13Shape, area_ratioH13): The same parametrizations have been added as in src/cloudbox.cc. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Updated due to the changed inputs (diameter_max_grid and aspect_ratio_grid) 2013-09-04 Johan Strandgren * arts-2-1-754 * src/optproperties.h (ScatteringMetaData): Changed complex_refr_index from being a Tensor3 to a Griddedfield3 * src/m_cloudbox.cc (pnd_fieldSetup): * src/cloudbox.cc (pnd_fieldH13, IWCtopnd_H13, scale_H13): * src/cloudbox.h (pnd_fieldH13, IWCtopnd_H13, void scale_H13): Added the updated version of Heymsfield's PSD from 2013. Very similar to the earlier version (H11), only updated variable values. * src/methods.cc (complex_refr_indexRegrid): Removed this WSM used for interpolation of the refractive index. * src/m_tmatrix.cc (complex_refr_indexRegrid): Deleted and replaced with a built-in interpolation function inside scat_data_arrayFromMeta instead (see below). (scat_meta_arrayAddTmatrix): removed check-function for refractive index. Simplified and clarified the equation used for calculation of diameter_max. (scat_data_arrayFromMeta): Added a built-in interpolation function that interpolates the refractive index to fit the frequency and temperature grids chosen for the T-matrix calculations. 2013-08-23 Johan Strandgren * arts-2-1-753 * src/methods.cc: (complex_refr_indexIceWarren84, complex_refr_indexIceLiebe93): Renamed GINs: f_grid --> data_f_grid t_grid --> data_T_grid. (complex_refr_indexRegrid): Added new WSM to interpolate complex_refr_index. * src/m_refraction.cc: (complex_refr_indexWaterLiebe93): Added a warning if temperatures below 250 K are used. * src/m_tmatrix.cc: (complex_refr_indexRegrid): Added the interpolation method mentioned above. (scat_meta_arrayAddTmatrix): changed complex_ref_index to be IN instead of GIN. Updated the variable names in the check functions. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: * controlfiles/artscomponents/doit/TestDOIT.arts: Adapted the changed variable names. 2013-08-22 Patrick Eriksson * arts-2-1-752 * After discussion with Stefan, removed abs_check. This leaves stokes_dim and f_grid "uncovered". Add checks where required. See start of yCalc for the checks performed earler in abs_checkedCalc (and before that in basics_checkedCalc)... * artscomponents/absorption/TestAbsDoppler.arts: * artscomponents/absorption/TestCompareArtscat3And4.arts: * artscomponents/absorption/TestIsoRatios.arts: * artscomponents/arts-xml-data/TestPlanetIsoRatios.arts: * artscomponents/arts-xml-data/TestSurf_Earth.arts: * artscomponents/arts-xml-data/TestSurf_Mars.arts: * artscomponents/arts-xml-data/TestSurf_Venus.arts: * artscomponents/cia/TestRTwithCIA.arts: * artscomponents/clearsky/TestClearSky.arts: * artscomponents/clearsky/TestClearSky2.arts: * artscomponents/disort/TestDISORT.arts: * artscomponents/doit/TestDOIT.arts: * artscomponents/doitbatch/TestDOITBatch.arts: * artscomponents/faraday/TestFaradayRotation.arts: * artscomponents/groundbased/TestFgrid.arts: * artscomponents/groundbased/TestGbased.arts: * artscomponents/groundbased/TestWinds.arts: * artscomponents/montecarlo/TestMonteCarloGeneral.arts: * artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts: * artscomponents/montecarlo/TestRteCalcMC.arts: * artscomponents/pencilbeam/TestPencilBeam.arts: * artscomponents/radiolink/TestRadioLink.arts: * artscomponents/radiolink/TestRadioLink2.arts: * artscomponents/radiolink/TestRadioOccultation.arts: * artscomponents/transmission/TestTransmission.arts: * artscomponents/wfuns/TestWfuns.arts: * artscomponents/zeeman/TestZeeman.arts: * instruments/amsu/TestAMSU_generic.arts: * instruments/hirs/TestHIRS.arts: * instruments/mhs/TestMHS_generic.arts: * instruments/odinsmr/TestOdinSMR.arts: * instruments/odinsmr/TestOdinSMR_1D.arts: Adopted. * src/m_montecarlo.cc (MCGeneral): * src/m_abs_lookup.cc (propmat_clearsky_fieldCalc): * src/m_disort.cc (ScatteringDisort): * src/m_doit.cc (CloudboxGetIncoming,CloudboxGetIncoming1DAtm,ScatteringDoit): * src/m_rte.cc (iyCalc,yCalc): * src/m_cloudradar.cc (iyCloudRadar): Adopted. Added check of stokes_dim, where this WSV is input. * src/m_checked.cc (abs_checkedCalc): Removed. * src/workspace.cc: Removed abs_checked. 2013-08-22 Jana Mendrok * arts-2-1-751 * controlfiles/testdata/isoquantum.xml: Removed. It's a plain copy of zeeman_constants.xml in arts-xm-data. So, we directly want to use that instead! * controlfiles/artscomponents/zeeman/TestZeeman.arts: Adapted accordingly to use zeeman_constants.xml from arts-xm-data. * controlfiles/CMakeLists.txt: Accordingly, moved Zeeman test into arts-xml-data section. * src/geodetic.cc(cart2poslos): Spellfixes in comments. 2013-08-22 Oliver Lemke * arts-2-1-750 * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts src/m_cloudbox.cc, src/methods.cc, src/workspace.cc: Rename WSV part_species_nout -> scat_data_per_part_species. 2013-08-21 Patrick Eriksson * arts-2-1-749 * Polishing of last commit. Mixed CloudboxGetIncoming with iyInterp.... The CloudboxGetIncoming WSMs shall use the checked WSVs. Added these WSVs also to some other WSMs not even using basics_checked, but should have done. Fixes pointed out in email from Jana. Thanks. * ChangeLog: Edited entry for 2-1-748, to not have misleading information in the file. * src/m_disort.cc (ScatteringDisort): * src/m_doit.cc (CloudboxGetIncoming) (ScatteringDoit,CloudboxGetIncoming1DAtm): Now using abs_checked, atmfields_checked and atmgeom_checked and cloudbox_checked. * controlfiles/artscomponents/arts-xml-data/TestSurf_Earth.arts: Changed to 1e-6 also here. Not needed, but for consistency. * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: Test using this file failed worked my work desktop, but failed on home Mac desktop. The diff on the Mac was 1.1e-8, and the limit was set to 1e-8. A very hard limit, now relaxed to 1e-6. Diffs below 1-e3 should have no practical importance. 2013-08-20 Patrick Eriksson * arts-2-1-748 * Warning! New WSVs and WSMs introduced. You need to change your 2.1 cfiles. Basically all cfiles should be affected. * Revision of the variables and method of check-type now activated. More WSVs of checked-type, for better modularity and making the variables easier to use in WSMs. Note that the checked-variables only are used in methods normally called directly in the control file, but not used in methods normally placed in agendas, for efficiency reasons. So, yCalc, ppathCalc etc. uses the variables, but I have removed old checks in e.g. iyMC to be consistent with this rule. That is, if you make direct calls of methods like iyMC and iyEmissionStandard its on your own risk. If you use bad input for such calls, you can obtain an assert instead of an error, or even worse, incorrect result. However, you can of course call e.g. atmfields_checkedCalc anyhow before calling e.g. iyMC. That will decrease the risk of bad surprises later on. For a claculation with yCalc you now need these calls propmat_clearsky_agenda_checkedCalc abs_checkedCalc atmfields_checkedCalc atmgeom_checkedCalc cloudbox_checkedCalc sensor_checkedCalc * controlfiles/instruments/odinsmr/TestOdinSMR_1D.arts: * controlfiles/instruments/odinsmr/TestOdinSMR.arts: * controlfiles/instruments/mhs/TestMHS_generic.arts: * controlfiles/instruments/hirs/TestHIRS.arts: * controlfiles/instruments/avhrr/TestAVHRR.arts: * controlfiles/instruments/amsu/TestAMSU_generic.arts: * controlfiles/artscomponents/arts-xml-data/TestPlanetIsoRatios.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: * controlfiles/artscomponents/arts-xml-data/TestSurf_Earth.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScen_Venus.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScen_Mars.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScen_Jupiter.arts: * controlfiles/artscomponents/cia/TestRTwithCIA.arts: * controlfiles/artscomponents/disort/TestDISORT.arts: * controlfiles/artscomponents/groundbased/TestFgrid.arts: * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts: * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: * controlfiles/artscomponents/ppath/TestRefractPlanets.arts: * controlfiles/artscomponents/wfuns/TestWfuns.arts: * controlfiles/artscomponents/zeeman/TestZeeman.arts: * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/artscomponents/doit/TestDOIT.arts: * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/transmission/TestTransmission.arts: * controlfiles/artscomponents/clearsky/TestClearSky2.arts: * controlfiles/artscomponents/clearsky/TestClearSky.arts: * controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Venus.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Earth.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Jupiter.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Mars.arts: * controlfiles/artscomponents/absorption/TestIsoRatios.arts: * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts: * controlfiles/artscomponents/absorption/TestAbsDoppler.arts: * controlfiles/artscomponents/groundbased/TestWinds.arts: * controlfiles/artscomponents/groundbased/TestGbased.arts: * controlfiles/artscomponents/ppath/TestPpath3D.arts: * controlfiles/artscomponents/ppath/TestPpath2D.arts: * controlfiles/artscomponents/ppath/TestPpath1D.arts: * controlfiles/artscomponents/helpers/TestHSE.arts: Adopted to changes below. * src/m_doit2.cc (CloudboxGetIncoming2, iyInterpCloudboxField2): Removed these from methods.cc. Unfinished work. Do not even remember that I had started this! * src/m_rte.cc (iyMC): * src/m_ppath.cc (ppathFromRtePos2): Now not using any of the check variables, see comment at top. * src/m_abs_lookup.cc (propmat_clearsky_fieldCalc): Now using abs_checked and atmfields_checked, instead of basics_checked. * src/m_rte.cc (iy_auxFillParticleVariables): * src/m_atmosphere.cc (z_fieldFromHSE): Now using atmfields_checked, instead of basics_checked. * src/m_ppath.cc (ppathCalc): Now using atmgeom_checked, instead of basics_checked. * src/m_montecarlo.cc (MCGeneral): * src/m_rte.cc (iyCalc): * src/m_cloudradar.cc (yCloudRadar): * src/m_rte.cc (yCalc): Now using abs_checked, atmgeom_checked, atmfields_checked, instead of basics_checked. * src/m_checked.cc (basics_checkedCalc, basics_checkedCalcNoGeo): Removed these WSMs and related internal functions. Code already reused in atmfields_checkedCalc, atmgeom_checkedCalc. (propmat_clearsky_agenda_checkedCalc): Commented out needs_free_electrons, variable not used. * src/workspace.cc: Removed basics_checked, and added: abs_checked atmfields_checked atmgeom_checked 2013-08-20 Patrick Eriksson * arts-2-1-747 * src/methods.cc (particle_massesFromMetaDataSingleCategory): Extended doc text, for hopefully better clarity. * src/geodetic.cc (cart2poslos): Removed assert of abs( abs(za) - RAD2DEG*acos(dr) ) < 1e-4 Added this assert as a double check that correct angle was resolved and there is no real loopholes in the code. Ole Martin now got a case with a difference of 1.018e-4. This is a numerical issue. No point in just relaxing the assert, the assert has fulfilled its purpose. 2013-08-20 Johan Strandgren * arts-2-1-746 * src/workspace.cc: (scat_meta, scat_meta_array): updated online doc. * src/methods.cc: (scat_meta_arrayAddTmatrix, scat_data_arrayFromMeta): updated online doc. 2013-08-20 Jana Mendrok * arts-2-1-745 * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.y.xml: Added. Reference file for test case TestSurf_Mars.arts (missed in arts-2-1-738). * doc/uguide/absorption.tex: Spellfix. 2013-08-20 Oliver Lemke * arts-2-1-744 * One more WSV rename. This concludes the renaming of the scattering WSVs / WSM. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, src/m_cloudbox.cc, src/methods.cc, src/workspace.cc: scat_data_array_nelem -> part_species_nout 2013-08-20 Oliver Lemke * arts-2-1-743 * Warning! WSM and WSV renaming in this commit!!! * controlfiles/artscomponents/disort/TestDISORT.arts, controlfiles/artscomponents/doit/TestDOIT.arts, controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloDataPrepare.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts, controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts, controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts, doc/uguide/absorption.tex, doc/uguide/clouds.tex, doc/uguide/rte_basics.tex, doc/uguide/scattering.tex, src/cloudbox.cc, src/cloudbox.h, src/disort.cc, src/disort.h, src/m_abs.cc, src/m_batch.cc, src/m_checked.cc, src/m_cloudbox.cc, src/m_cloudradar.cc, src/m_disort.cc, src/m_doit.cc, src/m_fos.cc, src/m_montecarlo.cc, src/m_optproperties.cc, src/m_rte.cc, src/m_tmatrix.cc, src/m_transmitter.cc, src/mc_NotUsed.cc, src/methods.cc, src/montecarlo.cc, src/montecarlo.h, src/partition_function_data.cc, src/rte.cc, src/rte.h, src/workspace.cc: single_scattering_data -> scat_data scat_data_raw -> scat_data_array scat_data_mono -> scat_data_array_mono scat_data_nelem -> scat_data_array_nelem scat_data_meta -> scat_meta scat_data_meta_array -> scat_meta_array Resulting WSM renames: scat_data_meta_arrayAddTmatrix -> scat_meta_arrayAddTmatrix scat_data_meta_arrayInit -> scat_meta_arrayInit scat_data_monoCalc -> scat_data_array_monoCalc scat_data_rawCheck -> scat_data_arrayCheck scat_data_rawFromMeta -> scat_data_arrayFromMeta 2013-08-20 Patrick Eriksson * arts-2-1-742 * Work in progress, no active changes yet. * Start on revision of checked WSVs and WSMs. Following the lines of Jana's changes, but instead using more WSVs. And trying to better distinguish between atmospheric and absorption parts. For example, basics_checkedCalc requires f_grid to be set, while f_grid is not always used, such as when calling ppathCalc. Now planning to have these flag WSVs: abs_checked atmfields_checked atmgeom_checked cloudbox_checked sensor_checked For abs_checked to be true, both abs_xsec_agenda_checked and propmat_clearsky_agenda_checked must be true, and some additional tests done. So it is a "super flag" for the absorption part. * src/m_checked.cc: New file and placed all WSM returning checked-variables here. The idea is by putting them side-by-side it should be easier to make sure that the checks are complete and there is a good logic between the methods. (atmfields_checkedCalc, atmgeom_checkedCalc, abs_checkedCalc): New methods, not yet active. * Corrected date for commit below. 2013-08-20 Oliver Lemke * arts-2-1-741 * README: Extend section on enabling / disabling Fortran features. * CMakeLists.txt: Add -Wno-return-type-c-linkage to shut up clang warning about Complex C++ return type used in C call to refice_. It's fine. Remove f2c related code. * config.h.cmake: Remove f2c cmakedefine. * src/CMakeLists.txt: Removed test_disort. Now in 3rdparty dir. * 3rdparty/disort1.2/CMakeLists.txt: Add test_disort. * 3rdparty/disort1.2/ErrPack.f: DSERRMSG->ERRMSG. * 3rdparty/refice/REFICE.f: ERRMSG->RERRMSG. Easier to rename it here than in the Disort code. * 3rdparty/disort1.2/CMakeLists.txt, 3rdparty/refice/CMakeLists.txt, 3rdparty/tmatrix/CMakeLists.txt: Simplify. Tweak messages. * controlfiles/CMakeLists.txt: Promote tmatrix tests from nocheck to fast. 2013-08-19 Jana Mendrok * arts-2-1-740 * src/m_cloudbox.cc: Renamed particle_massesSet -> particle_massesFromMetaDataAndPart_species. Corrected mixed up dimensions pointed out by Patrick. * src/methods.cc: Renamed particle_massesSet. Minor fixes in particle_massesFromMetaDataSingleCategory. * src/workspace.cc: Minor fixes in particle_masses. 2013-08-19 Patrick Eriksson * arts-2-1-739 * src/m_cloudbox.cc (particle_massesFromMetaDataSingleCategory): New WSM. Can set particle_masses from scat_data_meta_array for some special conditions. * src/m_general.cc (Test): Just removed verbosity to avoid compiler warning. * src/m_refraction.cc (complex_refr_indexWaterLiebe93): Changed built-in doc to reflect change below. * src/refraction.cc (complex_n_water_liebe93): Changed lower temperature limit to -40. * src/m_tmatrix.cc (scat_data_meta_arrayAddTmatrix): Defined default for material and density, as a way to indicate that they are not actuall needed for T-matrix (as description, already having "" as default). Default for density is -999, to get a number that is easy to detect as unphysical. * src/workspace.cc: A very small change of text for particle_masses. 2013-08-17 Jana Mendrok * arts-2-1-738 * controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: Adapted to changes in surface_complex_refr_index handling. * controlfiles/artscomponents/absorption/IsoRatios_H2Oorig.xml, controlfiles/artscomponents/absorption/IsoRatios_H2Omani.xml: Include N2-45 to fix broken test case. * controlfiles/artscomponents/absorption/TestIsoRatios.arts: Minor adaption. * controlfiles/artscomponents/arts-xml-data/TestIsoRatios.arts: Renamed to TestPlanetIsoRatios.arts to avoid mexing up output with absorption/TestIsoRatios.arts case. * controlfiles/CMakeLists.txt: Adapted accordingly. * src/species_data.cc,partition_function_data.cc: A bit of cleaning up (tag updates, layouting, missed data updates) after arts-2-1-721. * src/workspace.cc,methods.cc: Minor fixes. 2013-08-17 Patrick Eriksson * arts-2-1-737 * 2D ray tracing now following the approached already used for 3D. Less elegant but seems needed to get away from a constant tuning of settings to handlle the numerical problems. * src/ppath.cc (ppath_step_geom_2d): Now calling do_gridcell_2d_byltest. If you run into problems with the new 2D ppath calculations, just change if(0) to if(1) on line 3311. (raytrace_2d_linear_basic): As above, including a if-statement to switch back to old code. * src/geodetic.cc (cart2pol, cart2poslos): Changes to get the functions to work with negative zenith angles. 2013-08-16 Patrick Eriksson * arts-2-1-736 * src/ppath.cc (do_gridcell_2d_byltest): A 2D version of the corresponding 3D one. Not yet active, fails at least for negative za. 2013-08-15 Johan Strandgren * arts-2-1-735 * src/m_refraction.cc: Included physics_funcs.h. (complex_refr_indexIceWarren84): Corrected the name of the WSM. Removed "scat_" from "scat_f_grid" and "scat_t_grid". 2013-08-15 Patrick Eriksson * arts-2-1-734 * src/m_tmatrix.cc (single_scattering_dataFromTmatrix): Removed. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Adopted. * controlfiles/artscomponents/surface/TestSurface.arts: Adopted to changes below. * controlfiles/artscomponents/surface/create_gfields.m (create_gfields): Updated, complex_n_field now GriddedField5. * controlfiles/artscomponents/doit/TestDOIT.arts: Included, adopted, agenda defintion from below. * controlfiles/general/agendas_surface.arts: Removed definition of surface_rtprop_agenda__Specular_Pol_Water_SurfTFromt_field. A bit to specific to be generally defined. * src/m_refraction.cc (ParticleRefractiveIndexConstant) (ParticleRefractiveIndexWaterLiebe93) (ParticleRefractiveIndexIceWarren84): Renamed to start with complex_refr_index. In all cases changed output from being GOUT to OUT. Names of GIN variables changed. E.g. scat_ removed from grid names. (complex_refr_indexConstant): New version. Now there are no input grids. * src/m_cloudradar.cc (iyCloudRadar): Used complex_refr_indexWaterLiebe93, adopted this call. * src/refraction.cc (complex_n_water_liebe93): New function, based on old complex_refr_indexWaterLiebe93. * src/m_refraction.cc: Removed complex_refr_indexWaterLiebe93. * src/methods.cc (define_md_data_raw): Removed defintion of complex_refr_indexWaterLiebe93. * src/m_surface.cc (surfaceFlatRefractiveIndex): Adopted to change of type for surface_complex_refr_index. (surface_complex_refr_indexFromGriddedField5): Also adopted, and changed to take Field4 to Feidl5 as input. The new dimension is temperature, to be fully consistent with complex_refr_index. * src/workspace.cc: Redefined surface_complex_refr_index to GriddedField3. Removed old complex_refr_index and replaced with new version. * src/m_refraction.cc: * src/m_physics.cc: Moved all methods for complex refractive index from m_pysics to m_refraction. 2013-08-14 Patrick Eriksson * arts-2-1-733 * src/m_general.cc (Test): Now including code to test function below. * src/special_interp.cc (complex_n_interp): New. Function to interpolate variables of complex_refr_index type. * src/workspace.cc: Added complex_refr_indexNew (only temporary name). Wrote text describing the format of variables of this type. 2013-08-14 Richard Larsson * arts-2-1-732 * src/linerecord.cc: Reading from HITRAN now gets the quantum numbers for Zeeman. There is something wrong in the 2004 paper explaining the format because it seems the Symmetry field is also 2A1, not just as stated in the text that the Branch letter is 2A1, for OH. * doc/uguide/absorption.tex: Changed text on Zeeman here. 2013-08-14 Patrick Eriksson * arts-2-1-731 * doc/uguide/ppath.tex: * doc/uguide/refr_index.tex: * doc/uguide/refr_index_theory.tex: My last changes were not completely OK. One \ too many. 2013-08-14 Oliver Lemke * arts-2-1-730 * src/optproperties.{h,cc}: Add enum ParticleSSDMethod. Change type of particle_type in SMD from String to ParticleType. Add methods for mapping ParticleType and ParticleSSDMethod from/to enum value to/from String. Add ssd_method member to SMD. * src/xml_io_compound_types.cc: Add version attribute to SingleScatteringData. New data is now always written as version 2. Save particle_type as String in SingleScatteringData and ScatteringMetaData. Mapped to/from enum value on read/write. * src/m_tmatrix.cc: (scat_data_meta_arrayAddTmatrix): Set smd.ssd_method to T-Matrix. Use ParticleTypeFromString for particle_type String->enum conversion. (single_scattering_dataFromTmatrix): Use ParticleTypeFromString. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Change horiz_al to horizontally_aligned. Store and load scat_data_meta_array and scat_data_raw. 2013-08-14 Patrick Eriksson * arts-2-1-729 * doc/uguide/refr_index_theory.tex: * doc/uguide/ppath.tex: * doc/uguide/rte.tex: * doc/uguide/refr_index.tex: * controlfiles/artscomponents/transmission/TestTransmission.arts: * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/ppath/TestRefractPlanets.arts: * controlfiles/artscomponents/ppath/TestPpath3D.arts: * controlfiles/artscomponents/ppath/TestPpath2D.arts: * controlfiles/artscomponents/ppath/TestPpath1D.arts: * controlfiles/general/agendas.arts: * src/ppath.cc: * src/m_ppath.cc: * src/m_refraction.cc: * src/refraction.cc: * src/methods.cc: * src/agendas.cc: * src/workspace.cc: As decided in skype meeting, in all files above changed: refr_index -> refr_index_air refr_index_group -> refr_index_air_group refr_index_agenda -> refr_index_air_agenda 2013-08-14 Johan Strandgren * arts-2-1-728 * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Adapted testcase to new variable names (see below) and additional minor changes. * src/optproperties.h (ScatteringMetaData): Renamed some of the variables: type -> material d_max -> diameter_max V -> volume A_projec -> area_projected asratio -> aspect_ratio f_grid -> scat_f_grid T_grid -> scat_T_grid ref_index -> complex_refr_index * src/xml_io_compound_types.cc (xml_write_to_stream/xml_read_to_stream): Updated with the new variable names. * src/cloudbox.cc: (pnd_fieldMH97/pnd_fieldH11/pnd_fieldMP48/pnd_fieldH98/parse_part_type): Updated with the new variable names. * src/m_cloudbox.cc: (ScatteringParticlesSelect/particle_massesSet/pnd_fieldSetup/): Updated with the new variable names. * src/m_tmatrix.cc: (scat_data_meta_arrayAddTmatrix): renamed from scat_data_meta_arrayAdd to scat_data_meta_arrayAddTmatrix. Updated with the new variable names. Removed the hardcoding of the density. Renamed Spherical to spheroidal. Replaced the GIN r_grid with GIN diameter_grid. Allowed aspect_ratio to be 1 for cylindrical particles. Updated to SI units. Changed to lowercase letters where possible. (scat_data_rawFromMeta): Renamed from scat_data_rawFromTmatrix to scat_data_rawFromMeta. Changed to lowercase letters where possible. Updated with the new variable names. Renamed Spherical to spheroidal. (single_scattering_dataFromTmatrix): Renamed macro_iso to macros_iso. Renamed spherical to spheroidal. Changed to SI units. * scat_data_meta (scat_data_meta): Updated description accoring to new variable names. * src/cloudbox.h (parse_part_material): updated from "type" to "material" * src/methods.cc: (ParticleRefractiveIndexIceWarren84/ParticleRefractiveIndexWaterLiebe93): scat_ref_index -> complex_refr_index (scat_data_meta_arrayAddTmatrix): renamed from scat_data_meta_arrayAdd to scat_data_meta_arrayAddTmatrix. Updated with the new variable names. (scat_data_rawFromMeta): Renamed from scat_data_rawFromTmatrix to scat_data_rawFromMeta. 2013-08-14 Richard Larsson * arts-2-1-727 General: Zeeman now runs for NO2 and HO2. * src/m_zeeman.cc: Removed S>0, since Sigma may be less than zero. * src/linerecord.cc: Added reading for NO2 and HO2 quantum numbers. * controlfiles/testdata/isoquantum.xml: Added NO2 and HO2 to the Zeeman species in this file. WARNING: the g_s is for a free electron assumption and I have no idea how good that assumption is for these molecules. 2013-08-14 Oliver Lemke * arts-2-1-726 * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: p_type -> particle_type 2013-08-14 Oliver Lemke * arts-2-1-725 * src/cloudbox.cc, src/m_cloudbox.cc, src/m_optproperties.cc, src/m_tmatrix.cc, src/methods.cc, src/montecarlo.cc, src/optproperties.cc, src/optproperties.h, src/tmatrix.cc, src/xml_io_compound_types.cc: SingleScatteringData.ptype -> SingleScatteringData.particle_type ScatteringMetaData.p_type -> ScatteringMetaData.particle_type * src/workspace.cc: Move scat_data_meta_array detailed docs to scat_data_meta. 2013-08-14 Patrick Eriksson * arts-2-1-724 * src/ppath.cc (rslope_crossing2d): Changed dmin from 1e-12 to 5e-12. A setting to handle numerical problems. Another case from Ole Martin required a dmin of 1.8e-12 to be handled. So increased dmin with some margin. 2013-08-13 Patrick Eriksson * arts-2-1-723 * src/ppath.cc (ppath_calc): Improved check if TOA reached. Added second part of if-statement. Required for some fatal cases where the start part otherwise can jump outside the atmosphere. This fixed one failing case provided by Ole Martin. 2013-08-12 Jana Mendrok * arts-2-1-722 * doc/uguide/refr_index_theory.tex: Added. Moved refractive index (models) theory/background parts from AUG to here and merge info from ESA-Planetary TN1 into it. Currently an own chapter; in future rather make it a section in propagation paths chapter? * doc/uguide/refr_index.tex: Minor updates, corrections. Few parts moved to ATD. * doc/uguide/arts_theory.tex: Include the refractive index chapter. * doc/uguide/references.bib: Added newell65 as refractive index reference. 2013-08-12 Richard Larsson * arts-2-1-721 * src/linerecord.cc: Reading some quantum numbers for ClO and NO now. * src/m_zeeman.cc: Preliminary compatibility with NO and ClO now. Not tested yet. Any suggestions on how to test this? I could not find any models doing this. * src/quantum.{h,cc}: Added QN_Omega. * src/partition_function_data.cc, src/species_data.cc: Can now work with HITRAN2012 based on the HITRAN ref-table.pdf. For isotopes already in these files, I only added the HITRAN tag number. For isotopes of already existing molecules, I assumed Q(T) to by from the most abundant of the species, the mass was calculated from the most common isotope with integer addition for all extra mass. For new molecules, the atomic mass as an integer of the isotopic parts was assumed, C4H2 was assumed linear and SO3 assumed non-linear for the Q(T)={T,T^1.5}, and were thus given the corresponding degree of freedoms. HBr have 2 molecules with molecule number "11" in the new HITRAN. The latter of these is now named 11_2 in ARTS, whilst the first remains unchanged in name. The completely new isotopologues are: HNO3-156, HBr-29, HBr-11_2, HI-27, N2-45, and COF2-369 The completely new species are C4H2, and SO3. The isotopologues new in HITRAN2012 number are: HCl-25, HCl-27, HF-29, H2-11, and H2-12. Some check-all tests will fail with this commit. 2013-08-12 Patrick Eriksson * arts-2-1-720 * src/m_rte.cc (iyEmissionStandard): Uh, mixed up rows and cols. Now changed to x[is] = -trans_partial(iv,is,0,ip)*dbdt; And also noticed that a factor 2 was not included in x[is] for is>0. So that was another bug. 2013-08-11 Patrick Eriksson * arts-2-1-719 * src/m_rte.cc (iyEmissionStandard): For T jacobian changed the lines including: x[is] = -trans_partial(iv,0,is,ip)*dbdt; is was 0 on the right-hand side. Another bug in this part, of the same type! 2013-08-09 Johan Strandgren * arts-2-1-718 * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Adapted testcase to use scat_data_meta_array. * src/m_physics.cc: Added ParticleRefractiveIndexConstant. * src/workspace.cc: Updated docs for scat_data_meta_array. * src/tmatrix.{cc,h} (calcSingleScatteringDataProperties): Removed phase. * src/methods.cc: Added SingleScatteringData to Extract. Added ParticleRefractiveIndexConstant, scat_data_meta_arrayInit. Renamed single_scattering_dataCalcTMatrixTest to scat_data_rawFromTMatrix. * src/m_tmatrix.cc: (scat_data_meta_arrayAdd): Made it compatible with cylinders and spherical particles with other aspect ratios than one. removed density as an input, which is now set using the input material. Added the feature to autocreate a description based on the input data. (scat_data_rawFromTMatrix): Made it compatible with cylinders and spherical particles with other aspect ratios than one. 2013-08-09 Oliver Lemke * arts-2-1-717 * CMakeLists.txt, 3rdparty/disort1.2/CMakeLists.txt, 3rdparty/refice/CMakeLists.txt, 3rdparty/tmatrix/CMakeLists.txt: Detect Fortran compiler and set commandline options accordingly. Currently only gfortran is fully supported. g95 partially works. Throws an error for unsupported compilers. * KNOWN_ISSUES: Add note that compilation with g95 fails in some configurations. * config.h.cmake: Add FORTRAN_COMPILER. * src/main.cc (main): Add Fortran info to -v. 2013-08-08 Richard Larsson * arts-2-1-716 * src/linerecord.cc: Pass on NO quantum numbers for now. Will need more testing here it seems. 2013-08-08 Patrick Eriksson * arts-2-1-715 * src/m_tmatrix.cc (single_scattering_dataFromTmatrix): A version of single_scattering_dataCalcTMatrixTest, that potentially could be the basic WSM for T-matrix. Work in progress. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Some small changes in existing code to get the file to run. Added a second part calling single_scattering_dataFromTmatrix. 2013-08-08 Oliver Lemke * arts-2-1-714 * 3rdparty/disort1.2/ErrPack.f: Rename ErrMsg to DSErrMsg to avoid conflict with function in REFICE.f. * CMakeLists.txt, config.h.cmake: Check for f2c header. * src/CMakeLists.txt: Disable test_disort if f2c.h is unavailable. 2013-08-07 Patrick Eriksson * arts-2-1-713 * src/m_rte.cc (iyEmissionStandard): sibi was incorrect if stokes_dim > 1. Replaced (iv,0) with (iv,is) in for loop. * src/methods.cc: Reverted change in arts-2-1-695. That is, for jacobianAddPolyfit, changed default for no_pol_variation back to 0. This is the best default value. It is up to qpack2 to handle possible complications. 2013-08-07 Oliver Lemke * arts-2-1-712 * src/m_physics.cc, src/methods.cc: Add WSM ParticleRefractiveIndexIceWarren84. * 3rdparty/refice, 3rdparty/CMakeLists.txt, CMakeLists.txt, src/CMakeLists.txt, config.h.cmake, src/main.cc, src/physics_funcs.h: Add REFICE fortran routine. 2013-08-05 Patrick Eriksson * arts-2-1-711 * src/m_transmitter.cc (iyTransmissionStandard): y changed to y[is] at end of temparure jacobian part. Same fix as in arts-2-1-689. 2013-08-02 Johan Strandgren * arts-2-1-710 * src/optproperties.h: Updated the format of ScatteringMetaData. Added p_type, f_gridScat, T_gridScat and ref_index as generic inputs. * src/m_tmatrix.cc: (scat_data_meta_arrayAdd): Added a method for adding elements to scat_data_meta_array. (single_scattering_dataCalcTMatrixTest): expand to a vector of equiv_radius. * src/xml_io_compound_types.cc (xml_read_from_stream) (xml_write_to_stream): Adapted to changes of ScatteringMetaData. * src/methods.cc: added scat_data_meta_arrayAdd and adapted to changes of single_scattering_dataCalcTMatrixTest 2013-08-02 Jana Mendrok * arts-2-1-709 * src/methods.cc,workspace.cc: Replaced complex_n by complex_refr_index and surface_complex_refr_index. Renamed related WSM accordingly depending on intended usage (complex_nWaterLiebe93->complex_refr_indexWaterLiebe93, complex_nFromGriddedField4->surface_complex_refr_indexFromGriddedField4). * src/m_cloudradar.cc(iyCloudRadar), src/m_physics.cc(complex_nWaterLiebe93, ParticleRefractiveIndexWaterLiebe93), src/m_surface.cc(complex_nFromGriddedField4, surfaceFlatRefractiveIndex): Adapted to above name changes. * controlfiles/artscomponents/surface/create_gfields.m: Adapted to above name changes. * controlfiles/artscomponents/surface/TestSurface.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts, controlfiles/general/agendas_surface.arts: Adapted to above name changes. * doc/uguide/absorption.tex: Fixed broken links to AUG. Corrected line-mixing data example. 2013-08-02 Oliver Lemke * arts-2-1-708 * src/methods.cc, src/m_physics.cc: (ParticleRefractiveIndexWaterLiebe93): New method. (complex_nWaterLiebe93): Make method less chatty in out2. * doc/uguide/check_refs.py: Exit code should be 0 if no error occured. 2013-08-01 Jana Mendrok * arts-2-1-707 * src/m_abs.cc (propmat_clearsky_agenda_checkedCalc): Removed requirement for AddFaraday when free_electrons in abs_species (we might want them for refraction , not for faraday). (propmat_clearskyAddFaraday): Fixed error message. * src/m_abs_lookup.cc (propmat_clearsky_fieldCalc): Require basics_checked (non-geometry level; see below). In turn, remove local checks. * src/m_atmosphere.cc (basics_checkedCalcNoGeo): Reduced version of basics_checked without surface/geometry checks. Returns basics_checked=1 when passed. (basics_checkedCalc): Now returning basics_checked=2 when passed. (z_fieldFromHSE): Adapt to modified basics_checked behaviour. * src/m_cloudbox.cc (cloudbox_checkedCalc): Adapt to modified basics_checked behaviour. Moved check for no "particles" in abs_species further up. * src/m_doit2.cc(CloudboxGetIncoming2), src/m_montecarlo.cc(MCGeneral), src/m_cloudradar.cc(yCloudRadar), src/m_ppath.cc(ppathCalc, ppathFromRtePos2), src/m_rte.cc(iyCalc, iy_auxFillParticleVariables, yCalc), src/m_doit.cc(CloudboxGetIncoming, CloudboxGetIncoming1DAtm): Adapt to modified basics_checked behaviour. * src/methods.cc(basics_checkedCalcNoGeo, basics_checkedCalc, propmat_clearsky_fieldCalc), workspace.cc(basics_checked): Adapted to changes above. 2013-07-31 Richard Larsson * arts-2-1-706 * src/lineshapes.cc: Made some constants const (faddeeva_algorithm_916). * src/linerecord.cc: Changed, hopefully fixed, a very strange bug in the NO quantum number HITRAN reading routine. 2013-07-25 Jana Mendrok * arts-2-1-705 * doc/uguide/absorption.tex: Added sections on propmat_clearskyAddFaraday and propmat_clearskyAddParticles. Added info on setting isotopologue_ratios. Moved input-to-LbL paragraphs into their own subsection (it's not only for LbL. and that way we have a proper place to document how to set iso ratios). Minor updates (it's propmat now!), rewording, re-layouting, spellfixes... * doc/uguide/references.bib: Zeeman paper added. * doc/uguide/absorption_theory.tex: Updated info on isotopologue ratios (not hard-coded anymore!) * doc/uguide/clouds.tex: Section label added. * doc/uguide/symbol_defs.tex: \chem makro added. * src/workspace.cc, methods.cc: Sorted some stuff in its (alphabetically) right place (particularly propmat*). In abs_speciesSet added clear note that order of tag groups matters. * src/gas_abs_lookup.cc (Adapt): Error message improved(?). 2013-07-23 Oliver Lemke * arts-2-1-704 * doc/uguide/Figs/abs/propmat_clearsky_agenda_detail.pdf: Updated. * doc/uguide/absorption.tex: Remove fixme. 2013-07-23 Oliver Lemke * arts-2-1-703 * src/m_tmatrix.cc, src/methods.cc: (single_scattering_dataCalcTMatrixTest): Add WSM that takes all parameters needed for Tmatrix calculations as input for easier testing. * src/tmatrix.{cc,h}: (calcSingleScatteringDataProperties): Don't pass ConstMatrixView as reference. * controlfiles/artscomponents/tmatrix/TestTMatrixSSD.arts: Add simple test case to calculate single_scattering_data for given parameters and save it to a file. * controlfiles/CMakeLists.txt: Add TestTMatrixSSD.arts. 2013-07-23 Richard Larsson * arts-2-1-702 * doc/uguid/absorption.tex: Zeeman is now a subsection of "Calculating gas absorption". This fix why line mixing was considered a subsection of Zeeman. 2013-07-23 Oliver Lemke * arts-2-1-701 * src/tmatrix.{cc,h}: Add checks for ref index size. * src/xml_io_compound_types.cc: Fix typo. * src/wigner_functions.cc (wigner3j): Add braces for outer if to avoid confusion where the inner else belongs to. (wigner9j): Return NAN to avoid warning. * src/test_matpack (test45): Use explicit cast to avoid warning. 2013-07-19 Jana Mendrok * arts-2-1-700 * src/methods.cc (propmat_clearskyAddParticles, propmat_clearskyAddFaraday): Added description. (propmat_clearskyAddZeeman, ParticleType2abs_speciesAdd, basics_checkedCalc): Spell fixed, more internal links, little rewording. * src/m_abs.cc (propmat_clearskyAddParticles, propmat_clearskyAddFaraday): Catch case of rtp_los not specified (happened when methods get called from propmat_clearsky_fieldCalc). * src/m_abs_lookup.cc (propmat_clearsky_fieldCalc): Temporary(?) bugfix. Do NOT require all 3 magfield components to be explicitly specified, but allow implicit zero-setting for separate components. This particularly circumvents silently ignoring magfield as happened with previous version. * doc/uguide/refr_index.tex: Added internal reference to Faraday section. 2013-07-16 Oliver Lemke * arts-2-1-699 * src/test_matpack.cc: Help gcc 4.2 to pick the right pow function. 2013-07-10 Oliver Lemke * arts-2-1-698 * src/file.{h,cc} (make_filename_unique): Add optional extension argument. Incrementing numbers are inserted before this extension. Also increase numbering if a gzipped version of the file already exists. * src/xml_io.cc (xml_write_to_file): Pass xml extension to make_filename_unique. 2013-07-10 Oliver Lemke * arts-2-1-697 * src/test_binaryio.cc, src/test_quantum.cc, src/test_sparse.cc, src/test_xml.cc: Adapt calls to WriteXML and xml_write_to_file. 2013-07-10 Oliver Lemke * arts-2-1-696 * src/methods.cc, src/xml_io.{h,cc}, src/xml_io_instantiation.h, src/m_xml.{h,cc}: Add option no_clobber to WriteXML and xml_write_to_file. Appends an incrementing number to the filename if it already exists. (WriteXMLNoClobber): Removed. Sorry Richard, I decided to make no_clobber a flag to WriteXML instead. * src/m_abs.cc (abs_lines_per_speciesWriteToSplitArtscat), src/m_batch.cc (ybatchMetProfilesClear), src/m_doit.cc (DoitWriteIterationFields), src/m_ppath.cc (ppathWriteXMLPartial): Adapt calls to WriteXML and xml_write_to_file. * src/m_xml.h (WriteXML): Add critical region around xml_write_to_file. * src/file.{cc.h} (make_filename_unique): Added. (file_exists): Make sure to return false if lstat call fails. * src/methods.cc: Add AgendaExecuteExclusive. * src/m_agenda.cc (AgendaExecuteExclusive): Renamed from ...Critical. 2013-07-09 Patrick Eriksson * arts-2-1-695 * src/methods.cc: For jacobianAddPolyfit, changed default for no_pol_variation from 0 to 1. This as a temporary fix to allow Qpack2 to be used with stokes_dim > 1. Need to think how this shall be handled. I assume that nobody is affected by this change. 2013-07-09 Richard Larsson * arts-2-1-694 * src/m_xml.{cc,h}: Dummy added (WriteXMLNoClobber). This does nothing now. * src/m_agenda.cc: Dummy added (AgendaExecuteCritical). Does nothing yet. 2013-07-09 Oliver Lemke * arts-2-1-693 * src/tmatrix.h (calcSingleScatteringDataProperties): Add public interface to header file. * src/tmatrix.cc: Add documentation for tmatrix_, ampl_ and avgtmatrix_. Make PI only visible in functions where it is used. * 3rdparty/tmatrix/ampld.arts.f: Move quiet parameter to group it together with other inputs. 2013-07-08 Richard Larsson * arts-2-1-692 * src/absorption.cc (xsec_species_line_mixing_2nd_order): Added test for line mixing inputs. Also changed provided input file in arts-xml-data. 2013-07-08 Oliver Lemke * arts-2-1-691 * src/m_linemixing.cc (ArrayOfLineMixingRecordReadAscii): Add check that the input stream is good(). Otherwise the last value gets added twice. 2013-07-05 Oliver Lemke * arts-2-1-690 The interface between ARTS and the T-Matrix Fortran codes, as well as providing the same functionality as PyARTS, is now pretty much completely. Except for calculating the refractive index, calcSingleScatteringDataProperties now does the same as SingleScatteringData.calc in PyARTS. TODO: - Integration of calcSingleScatteringDataProperties with the rest of ARTS, so that it can be practically used. - Better error handling if Fortran code fails. - Ensure all calls into the Fortran codes are threadsafe (via omp critical). * src/tmatrix.{cc,h}: (calcSingleScatteringDataProperties): Calculate Csca integral for oblate and prolate particles and from that K_abs. (integrate_phamat_*): Add gauss legendre integration for phamat over different angles thet0, phi, alpha. (calc_ssp_fixed_test, calc_ssp_random_test): Updated. 2013-07-05 Richard Larsson * arts-2-1-689 * src/m_rte.cc: Changed y to y[is] on line 913 and 915. 2013-07-04 Oliver Lemke * arts-2-1-688 * ChangeLog: Mixed up prolate/oblate in my previous two entries. * src/tmatrix.cc (integrate_phamat): Finished this function. 2013-07-04 Richard Larsson * arts-2-1-687 * src/m_zeeman.cc: Added some tests for 3D atmosphere and ppath_los being defined that was missing. Also made the test of quantum numbers print more information when the user defines Zeeman species that are not really Zeeman affected. 2013-07-04 Oliver Lemke * arts-2-1-686 * src/tmatrix.cc: (integrate_phamat): Add Gauss Legendre phase matrix interpolation. (calcSingleScatteringDataProperties): Calculate phase matrix for prolate particles. (calc_phamat): Remove unit conversion. Now done in ampmat_to_phamat. 2013-07-04 Oliver Lemke * arts-2-1-685 * src/tmatrix.{h,cc}: (calcSingleScatteringDataProperties): Started PARTICLE_TYPE_HORIZ_AL. Implemented calculation of phase matrix for oblate particles and extinction matrix for oblate and prolate particles. TBD: Csca integral to get abs_vec_data. Phase matrix for prolate particles. (tmatrix_fixed_orientation): Add wrapper for Fortran subroutine tmatrix_. (avgtmatrix_): Add fortran interface. (calc_phamat): Calculate phase matrix. (ampmat_to_phasmat): Renamed phasmat. Convert phase matrix to m^2. (calc_ssp_fixed_test): Add test for particles with fixed orientation. * 3rdparty/tmatrix/avg_tmatrix.f: Added from PyARTS. * 3rdparty/tmatrix/CMakeLists.txt: Add avg_tmatrix.f. * 3rdparty/tmatrix/tmd.lp.f: Output Csca and Cext. * 3rdparty/tmatrix/tmatrix_tmd.ref: Updated. * src/m_tmatrix.cc (TMatrixTest): Add calc_ssp_fixed_test. 2013-07-02 Oliver Lemke * arts-2-1-684 * src/tmatrix.cc: (calcSingleScatteringDataProperties): Port of PyARTS' calc_SSP function. Implemented particle type 20 and verified that results are consistent with PyARTS. (calc_ssp_test): Test function to compare results to PyARTS. (tmatrix_random_orientation): Convenience function for T-Matrix calculations of randomly oriented particles. Based on tmat_rnd in PyARTS. (tmd_): Add documentation. * src/tmatrix.h: Add calc_ssp_test. * src/m_tmatrix.cc (TMatrixTest): Call calc_ssp_test. * 3rdparty/tmatrix/tmd.arts.f: Comment out unhelpful info output. 2013-07-01 Richard Larsson * arts-2-1-683 * doc/uguide/references.bib, doc/uguide/absorption.tex: Added Zeeman explanation. Made line mixing explanation more exhaustive. I am not entirely certain if this is sufficient as documentation, but it should now explain the steps necessary to attain make the program run. 2013-06-27 Patrick Eriksson * arts-2-1-682 * controlfiles/artscomponents/zeeman/TestZeeman.arts: No change done. This test case now runs again, after the change below. But there is a deviation to reference data of -0.043 K, that is outside the set limit of 0.01 K. * src/m_zeeman.cc (Part_Return_Zeeman): Added "if( temp_lut.size() > 0 )", on line819. This fix suggested by Richard. 2013-06-26 Oliver Lemke * arts-2-1-681 * More work in progress on T-Matrix code. * 3rdparty/tmatrix/{ampld.lp.f, ampld.lp.f.orig, ampld.par.f, ampld.arts.f, tmatrix_ampld.ref}: Added T-Matrix codes for nonspherical particles in a fixed orientation. ampld.arts.f is based on the version in PyARTS. Added RAT as a parameter, renamed subroutines that are also present in tmd.arts.f to avoid duplicate symbol errors. Use LaPACK version of TT subroutine from ampld.lp.f. * 3rdparty/tmatrix/tmd.arts.f: Renamed from tmd.pyarts.f. * 3rdparty/tmatrix/CMakeLists.txt: Add ampld.arts.f to tmatrix library. Add target tmatrix_ampld for reference calculation. * 3rdparty/tmatrix/README: Updated. * 3rdparty/tmatrix/tmd.lp.f: Don't output time. It's incorrect. * src/tmatrix.{h,cc}: Add functions tmatrix_ampld_test, phasmat. Add declarations for Fortran subroutines tmatrix_ and ampl_. * src/m_tmatrix.cc (TMatrixTest): Add tmatrix_ampld.test. 2013-06-25 Oliver Lemke * arts-2-1-680 * src/tmatrix.cc, src/tmatrix.h, src/m_tmatrix.cc: Added. Basic integration of low-level T-Matrix codes for randomly oriented nonspherical particles. Fortran routine tmd can be called from ARTS and produces the same results as the reference example included with the original code. * 3rdparty/tmatrix/{README, License.txt, lpd.f, tmatrix_tmd.ref, tmd.lp.f, tmd.lp.f.orig, tmd.par.f, tmd.pyarts.f}: Added T-Matrix codes for randomly oriented nonspherical particles. For ARTS I rely on the same version as used by PyARTS. It has already been adapted to be called as a subroutine and results are identical to the latest version from the T-Matrix homepage. * 3rdparty/tmatrix/CMakeLists.txt: Add tmatrix_tmd executable. * README: Add ENABLE_FORTRAN option. * src/methods.cc: Add TMatrixTest for testing the T-Matrix code. * src/CMakeLists.txt: Add tmatrix.cc and m_tmatrix.cc to artscore. * config.h.cmake: Add ENABLE_TMATRIX. * controlfiles/CMakeLists.txt, controlfiles/artscomponents/tmatrix/TestTMatrix.arts: Add basic tmatrix test case. 2013-06-25 Patrick Eriksson * arts-2-1-679 * src/jacobian.cc (diy_from_path_to_rgrids): Removed variable r_grid, that was only used to make code somewhat simpler. Added and modified code to handle retrieval grids having length 1. 2013-06-25 Oliver Lemke * arts-2-1-678 * Preparations for better fortran integration. No more f2c. * 3rdparty/CMakeLists.txt, 3rdparty/disort1.2/CMakeLists.txt, 3rdparty/tmatrix/CMakeLists.txt: Added. * CMakeLists.txt: Remove f2c stuff. Add option ENABLE_FORTRAN. Add 3rdparty subdirectories. * src/disort_DISORT.h, src/m_disort, controlfiles/artscomponents/disort/TestDISORT.arts: Remove f2c stuff. Update for changes in arts. Needs more work, don't use. * controlfiles/CMakeLists.txt: Make disort controlfile available. Currently fails. * src/main.cc: Add info about tmatrix support to -v. 2013-06-21 Stefan Buehler * arts-2-1-677 * src/m_abs.cc, src/methods.cc (f_gridSelectFIndex): Removed, since this is obsolete with the new absorption lookup table frequency treatment. * doc/uguide/absorption.tex: Overall revision, added new intro and CIA part. * doc/uguide/common.tex: Removed deprecated dvips option from \usepackage{graphicx}. * doc/uguide/interpolation.tex (Higher order interpolation): Added paragraph on zeroth-order interpolation (nearest neighbor). * doc/uguide/references.bib (richard:12): Added. * doc/uguide/Figs/abs/plot_all_arts_cia_generic_1.pdf: Added. * doc/uguide/Figs/abs/plot_earth_continua_1_1.pdf: Added 2013-06-20 Oliver Lemke * arts-2-1-676 * src/xml_io.cc (xml_open_output_file, xml_read_from_file): Properly handle filenames that are 3 characters or less. * doc/uguide/Figs/abs/{abs_lookupCalc.pdf,abs_xsec_agenda.pdf, propmat_clearsky_agenda.pdf,propmat_clearsky_agenda_detail.pdf}, doc/uguide/absorption.tex: Add some absorbing flow charts. 2013-06-18 Patrick Eriksson * arts-2-1-675 * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: Removed old incorrect comment. 2013-06-19 Richard Larsson * arts-2-1-674 * src/wigner_functions.{cc,h}: Preparation for ECS line-mixing. Mathematical functions that calculate the wigner 3j and 6j functions. Not yet in use. * doc/uguide/absorption.tex: Some comments on how to use line-mixing. * src/absorption.{cc,h}: Changes in 2nd order line mixing routine to allow more pressure levels necessary for abs_lookup. Also, small changes in {h} for implementing different Q(T) calculations soon. 2013-06-18 Patrick Eriksson * arts-2-1-673 * controlfiles/planetary_toolbox/demos: Started this folder. * controlfiles/planetary_toolbox/demos/active/DemoLinkBudget.arts: A first attempt to a demo script. 2013-06-17 Patrick Eriksson * arts-2-1-672 * doc/uguide/rte_basics.tex: Same error as below here for vmr_field. * src/workspace.cc: It said incorrectly g/m3 for vmr_field and rtp_vmr, changed to kg/m3. 2013-06-14 Oliver Lemke * arts-2-1-671 * src/parameters.cc (get_parameters): Tweak helptext for docserver. 2013-06-14 Oliver Lemke * arts-2-1-670 * controlfiles/artscomponents/absorption/TestAbsDoppler.arts, controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts, src/m_abs.cc (WriteMolTau), src/m_abs_lookup.cc (abs_mat_fieldCalc), src/workspace.cc, src/methods.cc: Rename abs_mat_field and abs_mat_fieldCalc to propmat_clearsky_field and propmat_clearsky_fieldCalc. * src/m_abs_lookup.cc (propmat_clearsky_fieldCalc): Add mag_*_field as input. Add checks for magnetic field. Add los Vector as generic input. 2013-06-12 Patrick Eriksson * arts-2-1-669 * src/m_transmitter.cc (iyTransmissionStandard): Same changes as below. * src/m_rte.cc (iyEmissionStandard): ppath_awx now a pointer variable. Change after discussion with Oliver. Not sure if previous version was a bug or not. This would then affect u and w component wind jacobians. Removed k1 and k2 variables from T-jac part. 2013-06-12 Oliver Lemke * arts-2-1-668 * src/linerecord.cc (LineRecord::ReadFromHitran2004Stream): Allow one extra space at the end of the line. Workaround for formatting bugs in HITRAN 2012. 2013-06-11 Patrick Eriksson * arts-2-1-667 * Extension of analytical Jacobians ready. Memory usage decreased for larger calculations involving Jacobians or iy_aux (but the reversed can happen for small calculations). There should also be a slight speed improvement for analytical Jacobians. * doc/uguide/wfuns.tex: Some more details on temperature, general case. * src/m_transmitter.cc (iyTransmissionStandard): Changed to mimic iyEmissionStandard as far as possible. Old jacobian code removed. Replaced with code from iyEmissionStandard, but with all emission terms removed and no special treatment of Stokes 1 for unpolarised case. * src/m_rte.cc (iyEmissionStandard): New version now active. Code for Jacobians with polarised absorption in place. * src/m_transmitter.cc (iyRadioLink): * src/m_fos.cc (fos): * src/m_cloudradar.cc (iyCloudRadar): Adopted to change of get_ppath_abs. Required some reorganisation of code. * src/rte.cc (get_ppath_abs): Now two output variables. One with summed absorption, and one with "abs_per_species", but only for selected species. This in order to avoid repeated summation of absorption. Memory usage is also decreased, except when all species are either retrieved or their absorption is put into iy_aux. (get_ppath_trans2): Adopted to new version of ppath_abs. (get_ppath_trans): Adopted to new version of ppath_abs. Some internal variables could be removed. 2013-06-07 Patrick Eriksson * arts-2-1-666 * src/m_rte.cc (iyEmissionStandard2): Backup commit. Work in progress. 2013-06-05 Patrick Eriksson * arts-2-1-665 * src/m_rte.cc (iyEmissionStandard2): Temporary playground for extending WFs to also handle polarised absorption. 2013-06-05 Patrick Eriksson * arts-2-1-664 * Work to avoid repeated checks if ext_mat is diagonal. Mainly justified for extension of WFs, but should give a slight general speed improvement. * src/m_fos.cc (fos): * src/m_rte.cc (iyEmissionStandard): Adopted call of get_ppath_trans and emission_rtstep. * src/m_transmitter.cc (iyTransmissionStandard, iyRadioLink): * src/m_cloudradar.cc (iyCloudRadar): Adopted call of get_ppath_trans. * src/rte.cc (get_ppath_trans, get_ppath_trans2): Adopted call of ext2trans, and added output argument to pass on icase. (emission_rtstep): Added input argument matching icase. This avoids a call of is_diagonal, for each frequency. * src/montecarlo.cc (mcPathTraceGeneral): * src/m_fos.cc (fos): Adopted call of ext2trans. * src/doit.cc (rte_step_doit): Adopted call of ext2trans, and using icase to remove a call of is_diagonal. * src/rte.cc (ext2trans): The found structure of ext_mat is now returned, as *icase*. If icase already known, that information can also be provided to save time. 2013-06-04 Patrick Eriksson * arts-2-1-663 * doc/uguide/wfuns.tex: Corrected some mistakes from writing earlier today. Resurrected some text about more fully handling the vector case analytically. 2013-06-04 Patrick Eriksson * arts-2-1-662 * doc/uguide/wfuns.tex: A complete rewrite of the analytical expressions. Now common terms are really discussed first, and separately. And the complete calculation procedure is represented mathematically. Hopefully more easy to understand what is actually done, and the difference between unpolarised and polarised more clearly separated. 2013-06-03 Patrick Eriksson * arts-2-1-661 * src/m_sensor.cc (sensor_responseMixer): Check of symmetry of response grid allowed a margin on 1kHz, but that cause problems in the core functions. Now no margin allowed. Safest, and simplest for the implementation. This opens for potential practical problems due rounding errors in files etc., but hopefully possible to handle ... 2013-05-31 Patrick Eriksson * arts-2-1-660 * src/rte.cc (ext2trans): Added comment explaining why assert( ext_mat(0,0) >= 0 ); is removed. * src/m_atmosphere.cc (basics_checkedCalc): Added argument negative_vmr_ok. If false, vmr_field now demanded to be >= 0. This is set to be default. Note the difference for t and vmr: t>0 while vmr>=0 Made also search for negative f_grid more efficient. Just needed to check for element when the vector is known to be increasing. 2013-05-30 Patrick Eriksson * arts-2-1-659 * src/rte.cc (ext2trans): Commented out assert( ext_mat(0,0) >= 0 ); This assert made qpack2_demo in atmlab to fail. I guess due to negative vmr. Uh, not sure how to handle this and removing the assert to avoid the problem for the moment! 2013-05-29 Patrick Eriksson * arts-2-1-658 * doc/uguide/wfuns.tex: A number of smaller corrections. 2013-05-29 Patrick Eriksson * arts-2-1-657 * doc/uguide/wfuns.tex: More rewriting. * doc/uguide/arts_user.tex: Changed position of WF chapter. 2013-05-29 Oscar Isoz * arts-2-1-656 * src/rte.cc (ext2trans) : Fixed a sign error in the assertion between ext_mat(3,0) and ext_mat(0,3) (removed the '-' sign) 2013-05-29 Patrick Eriksson * arts-2-1-655 * doc/uguide/wfuns.tex: Started to restructure the presentation of analytical expressions, with the aim of getting matching expressions for scalar and vector cases. 2013-05-27 Patrick Eriksson * arts-2-1-654 * doc/uguide/wfuns.tex (subsubsection{General case}): Finished a first version of this sub-section, dealing with absorption WFs with polarised absorption. 2013-05-26 Oscar Isoz * arts-2-1-653 * src/sensor.cc (find_effective_channel_boundaries): Minor bugfix found just after the last commit * src/m_sensor.cc (f_gridFromSensorAMSUgeneric): Fixed an issue with how the passband frequency grid is calculated * src/m_sensor.cc (sensor_responseGenericAMSU): Found (and fixed) a discrepancy in how the properties of the AMSU-A sensor is saved in amsua.arts vs how it is used in this function. Introduced a slight reduction in the effective bandwidth of the channels by 60 Hz in order to avoid for them to merged by f_gridFromSensorAMSUgeneric (this was donet to save computational time and make more room for optimisations of the frequency grid) 2013-05-24 Patrick Eriksson * arts-2-1-652 * doc/uguide/references.bib: Added Dattorro2011. * doc/uguide/wfuns.tex (subsubsection{General case}): Further work. Had to change strategy somehwat. 2013-05-23 Patrick Eriksson * arts-2-1-651 * doc/uguide/wfuns.tex: Changed to use Jacobian in preference of weighting functions. Some rearrangement to introduce expressions for polarised absorption. * doc/uguide/rte.tex: Some typos from last commit, and expanded slightly around calculation of matrix exp. 2013-05-23 Oliver Lemke * arts-2-1-650 * src/logic.cc: (is_increasing): Adapt the if statement so that the functions correctly return false if the Vector contains NaN values: if( x[i] <= x[i-1] ) return false; -> if( !(x[i] > x[i-1]) ) return false; Although logically the same for floating point numbers, the second implementation behaves correctly for NaN values because any comparison with NaN returns false. (is_decreasing, is_sorted): Same. * src/test_matpack.cc: Add test44 to check above changes. 2013-05-23 Patrick Eriksson * arts-2-1-649 * src/check_input.cc (chk_atm_field): Error now thrown if field contains NaNs. Implemented for both versions of the function. 2013-05-23 Patrick Eriksson * arts-2-1-648 * doc/uguide/rte_basics.tex: * doc/uguide/rte.tex: Replaced a few B with \Planck. * doc/uguide/wfuns.tex: Included a high number of "symbold_defs". * doc/uguide/CMakeLists.txt: Added symbol_defs.tex dependencies. * doc/uguide/symbol_defs.tex: Removed some odd, and not used, definitions. Fixed some comment typos. Bold i was used both for Stokes vector and total vector of pencil beam monochormatic data, so to avoid this clash redefined as follows \PpathLng: s changed to l \StoVec: i changed to s Added: \SttElm with friends and \Trn with friend. 2013-05-22 Jana Mendrok * arts-2-1-647 * controlfiles/planetary_toolbox/includes/mars/*.arts: Added include files for getting Mars atmospheric setups (selecting scenario and species/parameters to include, reading in, and bringing to calculation grids). * controlfiles/planetary_toolbox/Test{planet}Atmo.arts: Moved the previous My{planet}.arts from their respective directories to here as these are the templates for the actual main controlfiles (we don't want to hide them too far down). Made all includes absolute (allow to use or include this file from anywhere). * controlfiles/planetary_toolbox/includes/venus/[getatmo_venus,getwind].arts, controlfiles/planetary_toolbox/includes/common/createvars.arts: Minor docu- and bug-fixes. 2013-05-22 Oscar Isoz * arts-2-1-646 * src/sensor.cc (find_effective_channel_boundaries): Modified the code so that it can ignore frequencies where the filter response explicitly is set to zero, particularly useful for the AMSU-A channels. * src/m_sensor.cc (f_gridFromSensorAMSUgeneric): Added support to have set a separate frequency grid spacing for each channel * src/m_sensor.cc (sensor_responseGenericAMSU): Minor bugfixes, main change was to make the slopes of edges of the backend_channel_response f_grid edges constant. * controlfiles/CMakeLists.txt, instruments/amsu/TestAMSUA.arts : Added AMSU-A test case, not run by default yet 2013-05-22 Jana Mendrok * arts-2-1-645 * src/m_atmosphere.cc (GriddedFieldLatLonRegrid): Bugfix. Added check for new lat/lon_grids not empty in the beginning, before any of them is tried to be used. * src/m_abs_lookup.cc (abs_mat_fieldCalc), methods.cc,workspace.cc: Minor updates of variable namings and variable descriptions. 2013-05-21 Jana Mendrok * arts-2-1-644 * controlfiles/planetary_toolbox/includes/[common,jupiter,venus]/*.arts: Added a couple of controlfiles (of includes nature) for getting atmospheric setups (selecting scenario and species/parameters to include, reading in, and bringing to calculation grids). My{planet}.arts is the respective main file for each planet. It's supposed to be used as template - i.e., for usage, make a copy of it and modify according to your wishes. It's work in progress, some things not in satisfying state yet (too much room for bugs/breaking the file), evaluating better options. 2013-05-21 Richard Larsson * arts-2-1-643 * src/partition_function_data.cc: Defines partition function type in the defaults to allow for other types of partition functions. * src/absorption.h: Changed mqcoeff to a Vector and added some more variables. These are: mqcoefftype which is defined from the public enum and influences what type of partition function will be used in the switch added to (alculatePartitionFctRatio) to change between the previous standard way of only allowing coefficients in the now called (CalculatePartitionFctAtTempFromCoeff) to also allowing gridded funtions that can be interpolated in (CalculatePartitionFctAtTempFromData). To use the new FromData function it is necessary to specify the grid, the data and the interpolation order in present design, together with the partition function type. * src/absorption.cc: Here (CalculatePartitionFctAtTempFromData) is defined. * src/methods.cc: Added format documentation to (ArrayOfLineMixingRecordReadAscii). 2013-05-20 Oliver Lemke * arts-2-1-642 * src/m_basic_types.h: Add missing Array types for nelemGet. 2013-05-17 Patrick Eriksson * arts-2-1-641 * Work on MC, to finish changes to just use ext2trans. Used a calculation with 200e3 photons to check that result not changed. (ext2trans and matrix_exp_p30 also compared directly). The change made MC 1-2% slower, but MC can now handle any ext_mat (at least for this step, before p30 or simpler was assumed) and now ext_mat is asserted carefully. * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: Uptaed references values to 198.7 and 7.9 K, assuming that this file should give same result as the one below. * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: Updated reference value to 198.7, which was the combined result of two 200k photon runs, see above. * src/m_general.cc (Test): Commenetd out present test code (as using matrix_exp_p30. * src/montecarlo.cc (matrix_exp_p30): Moved to mc_NotUsed.cc. * src/montecarlo.cc (mcPathTraceGeneral): Switched to use ext2trans, that required some internal changes (opp_depth_mat -> ext_mat). * src/rte.cc (ext2trans): Synced header with content. Removed old version of the function. 2013-05-17 Patrick Eriksson * arts-2-1-640 * Started to clean up conversion of extinction to transmission. Beside for MC, this is now only done by ext2trans. One step forward is that ext2trans checks all expected symmetries of ext_mat. Also tried to make it faster by using special expressions for "p30". In matlab the special expressions are one order of magnitude faster than Pade, but the overall improvement in ARTS is only marginal. Hence, ARTS' Pade-approximation is very fast, or the matrix exponential is not a calculation bootleneck. * src/lin_alg.cc (matrix_exp): Only Pade-approximation is now done. Special treatment of diagonal matrices removed, now checked before calling the function. * src/montecarlo.cc (matrix_exp_p30): Several terms calculated twice, now instead copied. * src/mc_interp.cc (interpTArray): Moved to mc_NotUsed.cc. * src/m_fos.cc (fos): Now using ext_mat, instead of matrix_exp. And also using the flag introduced below. * src/doit.cc (rte_step_doit): Now takes a flag telling if trans_mat is already calculated. Now using ext_mat, instead of matrix_exp. * src/rte.cc: Removed declaration of unused constants. (get_ppath_trans, get_ppath_trans2): Now using ext_mat, instead of matrix_exp. (ext2trans): Rewritten and extended. Expected symmetry of ext_mat now fully checked. Matrix exponential calculated in three different ways depending on structure of ext_mat. The three cases are diagonal, "p30" and general. For p30 special expressions are used, following matrix_exp_p30 and double-checked with a text book. 2013-05-16 Patrick Eriksson * arts-2-1-640 * src/rte.cc (ext2transNEW): New version of the function below, with the aim of introdocing special expressions, as well as more asserts. Not yet used. (ext2trans): Discovered that the function is not used as planned. matrix_exp called instead. Work to do ... 2013-05-13 Patrick Eriksson * arts-2-1-639 * src/m_physics.cc (complex_nWaterLiebe93): Updated comment. Changed 146.4 to 146, to be consistent with paper, and eps_water_liebe93 in atmlab. 2013-05-13 Oliver Lemke * arts-2-1-638 * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: Include planet_mars.arts instead of planet_venus.arts. 2013-05-08 Richard Larsson * arts-2-1-637 * src/lineshapes.cc: Confirmation on which order Faddeeva's frequency grid should be arranged. It is the opposite of how Jefferies etal wrote it down. Changed the function Accordingly * src/m_zeeman.cc: Made this compatible with line-mixing. Differences of 1 K in the Bern test simulations followed. * src/absorption.cc: Better comments now. 2013-05-08 Oliver Lemke * arts-2-1-636 * src/groups.cc: Add ArrayOfLineMixingRecord. * src/m_linemixing.cc, src/methods.cc: Split the reading of line mixing data from the matching process. See builtin docs of ArrayOfLineMixingRecordReadAscii and line_mixing_dataMatch. * src/m_abs.cc (abs_lines_per_speciesCreateFromLines): Cosmetics. 2013-05-06 Oliver Lemke * arts-2-1-635 * src/rational.{h,cc}: (Rational::Rational(int)): Add conversion ctor for int. (bool()): Removed. Conversion operators are evil for all the pitfalls they bring along, so let's get rid of them. (Numeric()): Renamed to toNumeric(); (Index()): Renamed to toIndex(). Change the assert to a runtime error. Otherwise invalid conversions from Rational to Index will go unnoticed in non-debug mode. E.g. 3/2 would be silently converted to 3. Simplify code by not calling Simplify() (on a copy of the object). Rational objects are always immediately simplified when they're modified or initialized, no need to do it here again. Move implementation to cc file. Get rid of arithmetic and boolean operators where second argument is not a Rational. They were only implemented in one direction, e.g. Rational + Index worked but not Index + Rational. Instead of implementing a dozen more operators, let's get rid of them altogether. Sometimes less is more: By removing the conversion operators, all the operations work in both directions (Index+Rational and Rational+Index). Because now, the compiler has no other choice than converting the other argument into a Rational. Exactly what we want! Moved all operators that don't modify the object outside the class. Only implement full logic for operator== and operator<. Implement all other boolean operators by calling those two. (assignment operators): Should always return a reference to the object itself. Assignment operator with Index no longer needed. Uses converting ctor implicitly. * src/m_zeeman.cc: Use Rational::toNumeric. * src/quantum.h (QuantumNumbers::operator[]): Change return type to const. * src/interpolation_poly.cc: Do same caching for LOOPIDX as for LOOPW. Move the CACHE* statements from the innermost loop to the outer loops right after the corresponding variables definition. * src/test_matpack.cc: Add test43 for Rational. 2013-05-06 Patrick Eriksson * arts-2-1-634 * doc/uguide/Figs/rte/ycalc_flow.odg: abs_mat_per_species_agenda changed to propmat_clearsky_agenda. 2013-05-02 Oliver Lemke * arts-2-1-633 * src/groups.cc: Add ArrayOfArrayOfLineMixingRecord. * src/workspace.cc: Change type of line_mixing_data to ArrayOfArrayOfLineMixingRecord. * src/linemixingrecord.{cc,h} (LineMixingRecord): Implement class. * src/absorption.{h,cc} (xsec_species_line_mixing_wrapper, xsec_species_line_mixing_2nd_order), src/m_abs.cc (abs_xsec_per_speciesAddLines), m_linemixing.cc (line_mixing_dataInit, line_mixing_dataRead), src/m_zeeman.cc (propmat_clearskyAddZeeman): Adapt for type change of line_mixing_data from ArrayOfArrayOfVector to ArrayOfArrayOfLineMixingRecord. * src/m_linemixing.cc (line_mixing_dataRead): Read the species tag from the line mixing data file. Improved parsing of data values. * src/absorption.{h,cc} xsec_species_line_mixing_2nd_order): Change local variables data and lut to reference type to avoid unnecessary copying of arrays. * src/make_auto_md_h.cc, make_auto_workspace_h.cc: Include linemixingrecord.h in generated code. * src/xml_io_compound_types.cc, src/xml_io_array_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Add IO routines for LineMixingRecord, ArrayOfLineMixingRecord and ArrayOfArrayOfLineMixingRecord. * src/test_quantum.cc: Updated. 2013-05-02 Oliver Lemke * arts-2-1-632 * src/nc_io_array_types.cc, src/nc_io_compound_types.cc, src/nc_io_instantiation.h, src/nc_io_types.h: Cleanup. Get rid of all dummy implementations for non-supported types. In contrast to WriteXML, WriteNetCDF is only defined for a limited set of types. Only those need to be defined. * src/matpackI.{h,cc} (Vector): Add converting constructor from std::vector. 2013-05-02 Patrick Eriksson * arts-2-1-631 * src/m_fos.cc (fos): Shit, by copy and paste one for-loop became wrong (used nfs instead of nf). Caused a bug with use_mean_scat_data set to true (a case I had not tested). * src/rte.cc (get_ppath_ext): Extended header test, to be clearer around use_mean_scat_data. * controlfiles/general/general.arts: use_mean_scat_data now set here, to 0. * src/m_cloudbox.cc (cloudboxOff): Now NOT setting use_mean_scat_data. As not a standard variable, and not checked by cloudbox_checkedCalc. 2013-04-29 Oliver Lemke * arts-2-1-630 * src/quantum.{h,cc}: Don't include arts.h, just matpack.h. Remove empty default constructors. (QuantumNumbers): Implement input operator. Update output operator. * src/xml_io_compound_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Implement xml io routines for QuantumNumberRecord and QuantumNumbers. * src/rational.h: Use element initialization list in constructors. Remove copy assignment operator. The implicit one will do just fine. Remove assignment operator for int. * src/linemixingrecord.{cc,h}: Add stub for line mixing data class. * src/CMakeLists.txt: Add linemixingrecord.cc to artscore. * src/test_quantum.cc: Updated. * src/doit.cc (cloud_RT_no_background): Get rid of the pointers for swapping around the two propmat_clearsky instances. Use the new swap() function instead. More readable code. 2013-05-02 Patrick Eriksson * arts-2-1-629 * controlfiles/artscomponents/doit/TestDOIT.arts: Adopted to renamed agenda. * controlfiles/general/agendas_surface.arts: Changed NoPol to Pol for surface_rtprop_agenda__Specular_Pol_Water_SurfTFromt_field. This agenda is based on surfaceFlatRefractiveIndex, that is of polarised nature. * src/methods.cc: Corrected several typos for surfaceFlatReflectivity. 2013-05-02 Stefan Buehler * arts-2-1-628 * src/gas_abs_lookup.cc (GasAbsLookup::Extract): Pre-calculate interpolation weights outside species loop for speed optimization. 2013-05-02 Patrick Eriksson * arts-2-1-627 * src/rte.cc (get_ppath_f): Added more comments to the function. To hopefully in the future avoid confusion about the signs to apply for the terms. For a moment I got lost here ... 2013-05-01 Oliver Lemke * arts-2-1-626 * src/matpack*.h (*::get): Add a non-asserting element accessor to Vector, Matrix and Tensor* View classes. Should only in places were maximum speed is of the essence. * src/interpolation.{h,cc}: Cache the begin() and end() iterators in loops. Use the matpack get function inside the loops. Speeds up interpolation, especially the GasAbsLookup::Extract function. For example, arts.ctlfile.slow.amsub runs 30% faster. * src/m_rte.cc (yCalc), src/rte.cc (iyb_calc): Tweak OpenMP loop condition for cases where the number of frequencies is smaller than nmblock and nza. 2013-05-01 Oliver Lemke * arts-2-1-625 * src/absorption.cc (xsec_species): Fix bug for lineshapes that don't calculate phase information. ls_phase was never initialized and garbage values where used in later calculations. this_ls_phase *= this_fac was up to 2 times slower under some circumstances (mostly in the profiler) when t_l_p contained garbage. Further phase calculations are now skipped if the chosen lineshape doesn't return phase. Still some memory allocation overhead left. Would be much nicer to be able to pass in a zero-sized xsec_phase to skip the phase calculations altogether. But that's tricky with the current use of Views. Removed variables base_attenuation and base_phase as they were only used in one place. * src/m_abs.cc (abs_xsec_per_speciesAddLines): Don't make a full copy of another variable and then set it to zero. Instead use the appropriate constructor to create it with the right size and value in one go. 2013-05-01 Oliver Lemke * arts-2-1-624 * src/make_auto_md_cc.cc: Add assertion to *_agendaExecute functions to make sure the input_agenda is valid. * src/agenda_class.h (checked): Add access function. 2013-04-30 Patrick Eriksson * arts-2-1-623 * src/m_fos.cc (fos): Now using ext_matFromabs_vec. * src/rte.cc (get_iy_of_background): Added chk_not_empty call for all agendas used. To catch highly non-standard usage where dummy agendas can end up to being called. * src/check_input.cc: Type for x was wrong for most chk_size functions. 2013-04-30 Jana Mendrok * arts-2-1-622 * src/optproperties.[cc,h] (ext_matFromabs_vec): Added. Method for deriving/setting an extinction matrix from the absorption vector. * src/m_abs.cc (propmat_clearskyAddParticles): Replacing own code for extinction matrix from absorption vector by ext_matFromabs_vec. 2013-04-30 Oliver Lemke * arts-2-1-621 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag): I hate BSD for providing an isnumber function. s/isnumber/isdigit/ 2013-04-30 Oliver Lemke * arts-2-1-620 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag): Make parsing of SpeciesTag strings more robust. Invalid frequency numbers where silently ignored. Same for wrong placement of Zeeman tag. It must be located after the species, not after the isotopologue. 2013-04-30 Patrick Eriksson * arts-2-1-619 * src/m_fos.cc: Now also fos_za_interporder considered. 2013-04-30 Jana Mendrok * arts-2-1-618 * Nicer (not mis-using pnd_field) version of handling particles as absorbing-only, reverting obsolete parts of the older version. Now EACH particle type is added as an instance to abs_species, with its pnd field going into the corresponding vmr_field(_raw) entry. Single scattering data continue to be hold in scat_data_raw (we disallow parallel usage of "particles" in abs_species and scattering (i.e., cloudbox on) calculations). A new method added - ParticleType2abs_speciesAdd - corresponding to ParticleTypeAdd (corresponding version of ParticleTypeAddAll to come soon), which adds a "particle" instance to abs_species, reads the single scattering data, reads and appends pnd data to vmr_field_raw. * src/m_abs.cc (propmat_clearskyAddParticles): Adapted for looping over abs_species, handling multiple "particles" instances therein (provinding propmat_clearsky separately for particle type). * src/m_cloudbox.cc (cloudbox_checkedCalc): Added check that abs_species has not "particles" while cloudbox is on. * src/abs_species_tags.cc (check_abs_species): Removed obsolete requirement of only one "particles" instance in abs_species. * src/rte.[cc,h] (get_ppath_atmvars, get_ppath_abs): Removed parameters ppath_pnd, pnd_field, cloudbox_on. * src/m_rte.cc (iyEmissionStandard), m_cloudradar.cc (iyCloudRadar), m_transmitter.cc (iyRadioLink, iyTransmissionStandard) m_fos.cc (fos): Removed ppath_pnd, pnd_field, cloudbox_on from calls of get_ppath_atmvars and get_ppath_abs. * src/agendas.cc (propmat_clearsky_agenda), montecarlo.cc (clear_rt_vars_at_gp, cloudy_rt_vars_at_gp), disort.cc (dtauc_ssalbCalc), m_abs_lookup.cc (abs_mat_fieldCalc) doit.cc (cloud_RT_no_background, cloud_ppath_update1D_planeparallel): Removed obsolete usage of rtp_pnd in propmat_clearsky_agenda call. * src/workspace.cc: Removed rtp_pnd. * src/m_atmosphere.cc (basics_checkedCalc): Removed pnd_field checks and method parameters pnd_field, cloudbox_on. * src/cloudbox.[cc,h] (chk_pnd_data, chk_pnd_raw_data): Remove obsolete parameters p_grid, lat_grid, lon_grid. * src/m_append.h (Append): Added a version for Tensor-to-Tensor append (leading dimension only). Needed for appending (modified) data (like profiles/fields of a single absorbing species) to vmr_field. * src/array.h: spell fix. * src/methods.cc: Adapted to changes above. * controlfiles/general/agendas.arts, controlfiles/artscomponents/doit/TestDOIT.arts, doitbatch/TestDOITBatch.arts, helpers/TestAgendaCopy.arts, montecarlo/TestMonteCarloGeneralGaussian.arts, faraday/TestFaradayRotation.arts: Removed rtp_pnd usage in propmat_clearsky_agenda definitions. * controlfiles/general/general.arts: Removed obsolete pnd_field=0 and cloudbox_on=off settings. 2013-04-29 Oliver Lemke * arts-2-1-617 * src/m_rte.cc (iyMC): Fix parallelization of frequency loop. There is no further parallisation in the MonteCarlo code, therefore it is best to parallelize for nf>1 instead of nf>max_threads. 2013-04-29 Stefan Buehler * arts-2-1-616 * Implemented frequency interpolation in lookup table extraction, to allow for more elegant Doppler shift treatment. * src/gas_abs_lookup.{h,cc} (GasAbsLookup:fgp_default): Added this new member, which holds the trivial frequency grid positions (without frequency interpolation). (GasAbsLookup::Adapt): Initialize fgp_default. (GasAbsLookup::Extract): Implemented frequency interpolation. Required significant reorganization. The new philosophy is to first determine grid positions for all dimensions, including trivial grid positions in case a dimension should not be interpolated. Then the code for the interpolation itself (calculate weights and interpolate) can be the same for all cases. So, overall messiness somewhat reduced. * src/rte.cc (get_ppath_abs): Get rid of rtp_doppler, directly pass ppath_f to propmat_clearsky_agendaExecute. (get_ppath_f): Inverted the sign of the Doppler shift. For absorption features to shift to higher frequencies, the calculation grid for the absorption calculation has to be shifted to lower frequencies. With this change, the TestWinds control file gives the same result as before. Patrick, please confirm my change. * src/montecarlo.cc: Adapted. * src/disort.cc: Adapted. * src/doit.cc: Adapted. Also removed or commented-out some cout command that seem to be old debugging remnants. * src/interpolation_poly.cc (gridpos_poly): Implemented nearest neighbour interpolation (interpolation order 0). This is very handy, because it can be used to make interpolation code robust to the case that a particular dimension should not be interpolated at all. * src/test_interpolation.cc: Test the new order 0 interpolation. * src/main.cc (arts_mod_time): Added "compiled" to give some indication what the date/time means. (main): Added a copy of the command line to the report output. My main reason is that I wanted see the name of the control file from the report file. But perhaps also useful to see what other switches were used. * src/workspace.cc (rtp_doppler): Removed. Bye-bye. * src/methods.cc (propmat_clearskyAddFromLookup) (propmat_clearskyAddOnTheFly, propmat_clearskyAddZeeman): Removed input argument rtp_doppler. Updated documentation. * src/agendas.cc (propmat_clearsky_agenda): Removed input argument rtp_doppler. * src/m_abs.cc (propmat_clearskyAddOnTheFly): Removed input argument rtp_doppler and code handling it. * src/m_zeeman.cc (propmat_clearskyAddZeeman): Removed input argument rtp_doppler and code handling it. * src/m_abs_lookup.cc (abs_lookupCalc): Initialize fgp_default. (propmat_clearskyAddFromLookup): Added input argument abs_f_interp_order. Considerably simplified the function itself, since more work is now done in GasAbsLookup::Extract. (abs_mat_fieldCalc): Adapted. Also renamed all ampsXXX variables back to absXXX. This method still takes Doppler shift as input (it is just used for plotting and testing purposes, where this is handy). It constructs a new frequency grid and calls propmat_clearsky_agendaExecute with it. A remark: It would make sense to get rid of the Stokes dimension in abs_mat_field. abs_mat_fieldCalc can anyway not handle effects that would cause polarization, so only the (1,1) element of the absorption matrix (propmat_clearsky) is of interest here. And then revert both to their old names (abs_field and abs_fieldCalc). (calc_lookup_error): Adapted. * controlfiles/artscomponents/absorption/TestAbsDoppler.arts: Adapted and tested. * controlfiles/artscomponents/doit/TestDOIT.arts: Cosmetics. * controlfiles/artscomponents/wfuns/TestWfuns.arts: Set abs_f_interp_order to 1, to avoid runtime error with wind Jacobians. 2013-04-29 Patrick Eriksson * arts-2-1-615 * src/m_rte.cc (iyEmissionStandard): Added Transmission as aux var. * src/methods.cc: Polishing of escription of Transmission and Optical dept aux variables * ChangeLog: Slight edit of message for 2-1-613 to make clear that the comment refers to a specific method, and not generally for the file. 2013-04-29 Oliver Lemke * arts-2-1-614 * ChangeLog: Fix version numbers in previous two commits. 2013-04-29 Mathias Milz * arts-2-1-613 * src/m_sensor.cc (sensor_responseWMRF): removed the check if the f_grid is inside the sensor_reponse_function. This is apparently obsolete. 2013-04-29 Richard Larsson * arts-2-1-612 * src/lineshapes.cc: Made the lorentz function slower by calculating the phase shape function as well, which is necessary for Zeeman and line mixing. * src/absorption.cc (xsec_species_line_mixing_2nd_order): Fixed error in the mathematics that ignored the first-order line-mixing. Also, it only accepts calculations if the specified line-shape returns the phase, as this is necessary for line-mixing. Also, now takes data in SI units. The data will soon be added to arts-xml-data. 2013-04-28 Oliver Lemke * arts-2-1-611 * src/matpack*.{h,cc}: (Sparse): Don't use pointer variables for the members mdata, mrowind and mcolptr. Several advantages: No custom memory management needed -> Copy constructor, copy assignment operator and destructor removed. Code is much more readable. (mult, transpose): Non-const iterators were used to loop over elements of the const input parameter. (*Iterator*): Remove copy constructor from all Iterator classes. The implicit one generated by the compiler does just fine. And in C++11 the presence of a custom copy constructor will prevent the generation of an implicit move constructor. Might give better performance. (Vector, Matrix, TensorX): Change the argument type of the assignment operator from a const reference to a call by value. This way, we can let the copy constructor do the work instead of duplicating its initialization code in the assignment op. Additionally, with this implementation, the copy assignment operator will also work as a move assignment operator in C++11. And this implementation is exception safe. With the previous one, if the copy operation failed, the current object was left in an undetermined state. Add swap function to swap two objects. * src/xml_io_basic_types.cc: Adapt for Sparse changes. * src/matpack.h: Include debug.h * src/debug.h: Include iostream, add some std::. * controlfiles/instruments/odinsmr/yREFERENCE*.xml: Add ref values. * controlfiles/instruments/odinsmr/TestOdinSMR*.arts: Compare y against reference. * src/m_fos.cc (fos): Add explicit cast to Numeric for 'nin' in division to silence compiler warning. 2013-04-28 Patrick Eriksson * arts-2-1-610 * src/m_fos.cc: A complete version. So far only 1D only, and just a few rudimentary checks made. * src/doit.h: Included rte_step_doit. * src/doit.cc (rte_step_doit): Removed some inactive old lines. 2013-04-27 Oliver Lemke * arts-2-1-609 * src/test_complex.cc, src/test_gridded_fields.cc, src/test_linalg.cc src/test_matpack.cc, src/test_tensor.cc: Forgot to fix the test_* files in previous commit. * src/describe.{cc,h}: Use our String class instead of the standard string. Good example for a type error that went unnoticed before because std::string was visible everywhere although we don't want to use it. 2013-04-26 Oliver Lemke * arts-2-1-608 * src/matpack.h: Remove 'using namespace std;' from header. It is bad practice because it pollutes the global namespace of every file it is included by. Removing it here makes at least matpack behave nicely. Still present in arts.h. * src/array.h src/complex.{cc,h}, src/exceptions.h, src/fastem.cc, src/file.h, src/gridded_fields.{cc,h}, src/make_array.h, src/matpack*.{cc,h}, src/mystring.h, src/rational.{cc,h}, src/sourcetext.{cc,h}: In header files, add prefix std:: to all entities from the std namespace. In cc files, it is ok(ish) to use 'using namespace std;'. But it is preferable to only import what is actually used. This can be done at the beginning of the file after the include directives, e.g. 'using std::runtime_error;'. * src/sourcetext.cc (operator<<): Write to os not cout. * src/jacobian.h (RetrievalQuantity): Remove unneeded copy constructor. Change type of grids argument in constructor from MakeArray to ArrayOfVector. * src/m_jacobian.cc: Remove unnecessary assignments of RetrievalQuantity() in variable definitions. 2013-04-26 Patrick Eriksson * arts-2-1-607 * src/m_fos.cc: Extended, but still not complete. * src/methods.cc: GIN for sensor_responseBackendFrequencySwitching had inconsistent names. * src/workspace.cc: Introduced fos_scatint_angles and fos_iyin_za_angles. 2013-04-26 Oliver Lemke * arts-2-1-606 * src/linerecord.{cc,h}: Added. Move LineRecord class from absorption.{cc,h} into its own file. It's a large class and absorption.{h,cc} became very cluttered. Also moved all method documentation from the cc into the header file. (LineRecord::ReadFromHitranStream): Rename to ReadFromHitran2001Stream to be consistent with ReadFromHitran2004Stream. * src/m_abs.cc (abs_linesReadFromHitranPre2004): Call lr.ReadFromHitran2001Stream. * src/absorption.{cc,h}: Remove LineRecord class. Remove unnecessary includes. Include linerecord.h. * src/mystring.h: Moved extract helper function from absorption.cc to here. It is not specific to absorption and might be handy for other cases. * src/CMakeLists.txt: Add linerecord.cc to artscore. 2013-04-26 Oliver Lemke * arts-2-1-605 * src/continua.{cc,h}: Move definition of constant variables with model data to .cc file. Reduces header file size by 200kB. 2013-04-26 Patrick Eriksson * arts-2-1-604 * src/m_cloudradar.cc: * src/m_fos.cc: * src/m_transmitter.cc: * src/m_rte.cc: Adopted all calls of get_ppath_abs. * src/rte.cc (get_ppath_abs): Introduced only_sum_abs. This flag can be set to true when only summed absorption is needed, that in some cases will save considerable amount of memory. Cases where this flag must be false is when abs_species jacobians are calculated, "abs per species" is aux output and when Faraday is aux output. * src/rte.cc (get_ppath_trans): Removed obselete comment about Faraday. * src/m_fos.cc: Further work on reimplementation ... 2013-04-26 Oliver Lemke * arts-2-1-603 * src/matpack.h: Include cmath before applying the isnan-isinf-fix for GCC C++11. 2013-04-25 Oliver Lemke * arts-2-1-602 * src/absorption.h (LineshapeRecord): Add bool member to store if this lineshape calculates phase information. Important to determine later whether this lineshape can be used for line mixing calculations. * src/absorption.cc (xsec_species_line_mixing_2nd_order): Add example code for Richard on how to get LineshapeRecord::Phase(). * src/global_data.h: Declare lineshape_data and lineshape_norm_data. * src/lineshapes.cc (define_lineshape_data): Add PHASE or NO_PHASE to each LineshapeRecord constructor call. Define lineshape_data and lineshape_norm_data inside global_data namespace. * src/m_abs.cc: extern const... -> using... for l_d and l_n_d. 2013-04-25 Oliver Lemke * arts-2-1-601 * Cleanup of global variables. * src/global_data.h: Gather extern const declarations of all global variables in a separate namespace and document in which files the variables are defined. If you need access to a global variable (e.g. md_data), include this file and make the variable visible in the function where you need it with: using global_data::md_data; (The old way was: extern const Array md_data;) Now you can access the variable as usual: md_data.bla(); To keep things clean, this file should never be included in .h files, only in .cc files. * src/globals_2.cc: Removed. Moved definitions into the cc files where the initialization function of each variables is implemented. * src/CMakeLists.txt: Remove globals_2.cc. * src/abs_species_tags.cc, src/absorption.{cc,h}, src/agenda_class.cc, src/agenda_record.cc, src/agendas.cc, src/cia.cc, src/continua.cc, src/docserver.cc, src/groups.cc, src/m_abs.cc, src/m_abs_lookup.cc, src/m_atmosphere.cc src/make_auto_md_cc.cc, src/make_auto_md_h.cc, src/make_auto_workspace_h.cc, src/methods.cc, src/methods_aux.cc src/parser.cc, src/partition_function_data.cc, src/species_data.cc src/test_quantum.cc, src/test_xml.cc, src/xml_io_compound_types.cc, src/main.cc: Import global_data.h where needed and replace all 'extern const...' statements by 'using global_data::...'. * src/abs_species_tags.{cc,h}, src/absorption.{h,cc}: Move species_index_from_species_name and species_name_from_species_index from a_s_t to absorption. They act on the species, not on the species tag. Also removes the necessity of SpeciesMap being a global variable which is defined in absorption.cc. * src/absorption.{h,cc} (LineRecord::BroadSpecSpecIndex): Move implementation to cc file. * src/matpack.h: Move isnan and isinf fix from arts.h to here. * src/debug.h: Added. Move debug macros from arts.h to here. * src/arts.h: See above. 2013-04-25 Patrick Eriksson * arts-2-1-600 * src/m_fos.cc: Adding support for fos_n > 0. Work in progress. Don't use FOS at all!!! * src/m_rte.cc (iyEmissionStandard): Removed non-active code, moved to sub-function. * src/workspace.cc: Removed all FOS specific variables. 2013-04-24 Richard Larsson * arts-2-1-599 * src/absorption.h: Two new functions: (xsec_species_line_mixing_wrapper) and (xsec_species_line_mixing_2nd_order) that will act as a line mixing layer for (xsec_species). * src/m_linemixing.cc: Fix to work with new ArrayOfArray* line_mixing_data*. * src/m_abs.cc: Made line_mixing_data* active variables. Added call to (xsec_species_line_mixing_wrapper) where appropriate. * src/absorption.cc: (xsec_species_line_mixing_wrapper) and (xsec_species_line_mixing_2nd_order) added. When utilized with data from Makarov etal 2011 these will change O2 band near 6 GHz both positively and negatively (I have seen at most 1 K). These still require more testing. 2013-04-24 Oliver Lemke * arts-2-1-598 * src/methods.cc (abs_xsec_per_speciesAddLines, propmat_clearskyAddZeeman): Add line mixing as input. * src/abs_species_tags.{cc,h} (SpeciesTag): Add line mixing type support. (SpeciesTag::operator==): Add mtype and mline_mixing_type. * src/m_abs.cc (abs_xsec_per_speciesAddLines): Prepare for line mixing support. * controlfiles/general/general.arts: Touch line_mixing_data and line_mixing_data_lut. 2013-04-23 Stefan Buehler * arts-2-1-597 * src/gas_abs_lookup.h: Cosmetics. * src/gas_abs_lookup.cc (GasAbsLookup::Adapt): The current species list may now contain species that are not included in the original lookup table IF they are trivial species, such as free electrons or zeeman species, for which there is no lookup table absorption anyway. The data for these additional species is simply set to NAN, the same value that *GasAbsLookup::Adapt* would produce. * src/check_input.h (runtime_error_not_found, runtime_error_not_unique): Added these two new classes, which are public derivatives of *runtime_error*. (chk_contains): Use the new error classes. This makes it possible for the caller to selectively catch one of the two error conditions, which is needed in *GasAbsLookup::Adapt*. 2013-04-23 Oliver Lemke * arts-2-1-596 * src/abs_species_tags.{h,cc} (check_abs_species): Gather checks for abs_species in one function. * m_abs_lookup.cc (abs_speciesSet, abs_speciesAdd, abs_speciesAdd2): Call check_abs_species after modifying abs_species. 2013-04-23 Oliver Lemke * arts-2-1-595 * src/m_linemixing.cc, src/methods.cc, src/workspace.cc: line_mixing_o2 -> line_mixing_data. line_mixing_o2_lut ->line_mixing_data_lut line_mixing_o2Read -> line_mixing_dataRead line_mixing_o2Init -> line_mixing_dataInit Change type of l_m_d to ArrayOfArrayOfVector. This way it can hold all the line mixing data for all species. Add argument species_tag to line_mixing_dataRead to specify to which abs_species this line mixing data should be attached to. * src/absorption.cc (find_matching_lines): If isotopologue index equals the total number of isotopologues in that species, it is also treated as a wildcard. Consistent with the behavior of SpeciesTag. * src/abs_species_tags.h (get_tagindex_for_Strings): Removed. Unused, no implementation present. * src/test_quantum.cc: Updated. 2013-04-22 Oliver Lemke * arts-2-1-594 * src/absorption.cc (LineRecord::ReadFromHitran2004Stream): Fix parsing of v1 for O2. Add parsing of F'' for O2. * src/quantum.{h,cc}: Add quantum number F. * src/rational.cc (operator>>): Don't check for EINVAL. * src/m_linemixing.cc (line_mixing_o2Read): Add out3 info for matches. 2013-04-22 Oliver Lemke * arts-2-1-593 * src/m_linemixing.cc (line_mixing_o2Read): Implement reading of line mixing data and matching it to lines in abs_lines_per_species. Needs more work in picking the right species. Currently just looks for the first O2 tag. * src/absorption.{cc,h} (find_matching_lines): Use -1 as wildcard for species and isotopologue. Add docs. * src/methods.cc, src/m_linemixing.cc (line_mixing_o2Init): Added. * src/workspace.cc (line_mixing_o2_lut): Update docs. * src/test_quantum.cc: Updated. 2013-04-22 Oliver Lemke * arts-2-1-592 * src/rational.{cc,h} (operator>>): Implement input operator for quantum numbers. * src/quantum.cc (operator<<): Prettier output with QN names. * src/absorption.cc (LineRecord::ReadFromHitran2004Stream): Parse upper/lower global quanta v1 value for O2. * src/test_quantum.cc: More tests. 2013-04-21 Jana Mendrok * arts-2-1-591 * Introduced a "particles" abs_species, that takes the absorption properties from scat_data_raw and "vmr"s prom pnd_field. Note that this approach completely ignores scattering - both in extinction as well as in source part! Allows to consistently use the cloud/dust optical property data and density fields from arts-xml-data in non-scattering calcs (and only there!). The only change required for "usual" ARTS setups is when applying DOIT, iyEmissionStandard in the iy_main_agenda needs to get passed an empty dummy pnd_field. TO DO: Adapt documentation in AUG. Adapt abs_mat_fieldCalc. * src/abs_species_tags.cc: Adapted constructor and tag name extraction for new species "particles". * src/species_data.cc, partition_function_data.cc, abs_species_tags.h: Introduced species "particles" and type PARTICLES. * src/m_abs.cc (propmat_clearskyAddParticles): Introduced this method. Provides the propmat_clearsky for abs_species "particles" from scat_data_raw and rtp_pnd (taken from pnd_field). (abs_xsec_agenda_checkedCalc, propmat_clearsky_agenda_checkedCalc): Adapted for new abs_species "particles" and its type PARTICLES. * src/workspace.cc: Added rtp_pnd. * src/agendas.cc: Added rtp_pnd as input to propmat_clearsky_agenda. * src/rte.[cc,h] (get_ppath_atmvars): Added ppath_pnd as output, pnd_field and cloudbox_on as input, and functionality to calc ppath_pnd (only in case cloudbox_on is false). (get_ppath_abs): Added ppath_pnd as input and pass to propmat_clearsky_agenda. * src/m_rte.cc (iyEmissionStandard): Added pnd_field as input allowing to use in clear-sky absorption calculations (for abs_species "particle). Adapted all calls of get_ppath_atmvars and get_ppath_abs accordingly. * src/m_transmitter.cc, m_cloudradar.cc, m_fos.cc (iyRadioLink, iyTransmissionStandard, iyCloudRadar, iyFOS): Adapted calls of get_ppath_atmvars and get_ppath_abs. * src/montecarlo.cc, disort.cc, doit.cc: Adapted all calls of propmat_clearsky_agenda passing a dummy rtp_pnd. * src/m_abs_lookup.cc (abs_lookupCalc, abs_speciesSet): Adapted for use with abs_species "particles". (abs_mat_fieldCalc): Temporarily adapted call of propmat_clearsky_agenda passing a dummy rtp_pnd. * src/gas_abs_lookup.cc (GasAbsLookup::Extract): Adapted for new type PARTICLES (no extraction for this. in analogy to FREE_ELECTRONS). * src/m_atmosphere.cc (basics_checkedCalc): Added some pnd_field and "particles" abs_species related checks ("particles" only allowed when cloudbox off; if cloudbox off & pnd_field set, then pnd_field needs to cover whole atmo AND "particles" need to be in abs_species). * src/m_cloudbox.cc (ParticleTypeAdd, ParticleTypeAddAll): Removed any usage of cloudbox_limits. (pnd_fieldCalc): Allow empty cloudbox_limits assuming then pnd_field has to cover complete atmosphere (this facilitates the non-cloudbox usage of pnd_field for "particles" abs_species). * src/cloudbox.[cc,h] (chk_pnd_data, chk_pnd_raw_data): Removed check for all non-zero pnd values to be inside the cloudbox. Makes ParticleTypeAdd independent of the cloudbox definition, i.e. allows to get the particle data before defining the cloudbox (useful e.g. for auto-cloudbox detection). Check is then anyway done by pnd_fieldCalc using chk_pnd_field_raw_only_in_cloudbox. * src/m_doit.cc, m_doit2.cc (CloudboxGetIncoming): Moved if (!cloudbox_on) to the very beginning. We don't need to do anything here, if cloudbox is off - not even checking that certain other checks were done. (CloudboxGetIncoming1DAtm): As CloudboxGetIncoming. And added sensor_checked for consitency with CloudboxGetIncoming. (CloudboxGetIncoming2): Added sensor_checked for consitency with CloudboxGetIncoming. * src/methods.cc: Adapted to changes above. * controlfiles/general/agendas.arts, controlfiles/artscomponents/helpers/TestAgendaCopy.arts, controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Adapted propmat_clearsky_agenda definitions to ignore rtp_pnd. * controlfiles/general/general.arts: Default set FlagOff( cloudbox_on ) and empty pnd_field. * controlfiles/artscomponents/doit/TestDOIT.arts, doitbatch/TestDOITBatch.arts: Pass empty dummy pnd_field into iyEmissionStandard (to avoid it trying to use the real, cloudbox-targeted pnd_field when called from CloudboxGetIncoming with a cloudbox_on=false flag) * controlfiles/artscomponents/montecarlo/TestMonteCarloDataPrepare.arts, TestMonteCarloGeneral.arts: Use named method parameters. 2013-04-21 Oliver Lemke * arts-2-1-590 * src/m_abs_lookup.cc (abs_lookupCalc): Increase spec index if a species is skipped (Zeeman / free_electrons). Otherwise the following species are stored in the wrong place. 2013-04-19 Oliver Lemke * arts-2-1-589 * src/agendas.cc, src/methods.cc: doit_mono_agenda and doit_i_fieldSetClearsky defined doit_i_field as output only. This works fine if the all_frequencies flag is set to true (the default). However, if set to false, doit_i_field is resized when the first frequency is calculated. For the following frequencies, doit_mono_agenda is assuming that doit_i_field has already been resized, essentially misusing the output variable as an input. Nowadays, output-only variables are initialized to 0 to catch these cases of variable abuse. Hence, doit_i_field is now also defined as input for doit_mono_agenda and doit_i_fieldSetClearsky. Fixes bug reported by Patrick. 2013-04-19 Patrick Eriksson * arts-2-1-588 * src/m_fos.cc (iyFOS): A bit better handling of hgher stokes_dims. 2013-04-19 Patrick Eriksson * arts-2-1-587 * src/m_fos.cc (iyFOS): FOS restarted. So far just some kind of zero-order verson. * doc/uguide/faraday.tex (section{Practical usage}): Fixed typo, that check-all did not like. * src/make_array.h: Introduced array lengths 38 and 39. Turned out to be not needed right now, but kept anyhow. * src/doit.cc (rte_step_doit): rte_step_std renamed. * src/rte.cc (rte_step_std): Moved and renamed (see above). (emission_rtstep): New, dedicated for iyEmission. * src/m_transmitter.cc (iyTransmissionStandard): Typo in a comment * controlfiles/general/general.arts: Remobed fos_i. * src/workspace.cc: * src/agendas.cc: Commented out all variables associated with FOS. 2013-04-19 Oliver Lemke * arts-2-1-586 * src/m_zeeman.cc (propmat_clearskyAddZeeman): Check that abs_species and abs_lines_per_species match in size. * src/workspace.cc: Add line_mixing_o2 and line_mixing_o2_lut. Names might change. * src/methods.cc: Add line_mixing_o2Read. * src/src/m_linemixing.cc: New file. Only contains stub for line_mixing_o2Read. * src/CMakeLists.txt: Add m_linemixing.cc. 2013-04-19 Oliver Lemke * arts-2-1-585 * src/quantum.{h,cc}: Change internal storage class of Quantum Numbers from ArrayOfRational to a map. Saves memory and is also faster. * controlfiles/artscomponents/zeeman/yREFERENCE_3D.xml: Update references values to calculation results after richard's previous change. * src/absorption.cc (find_matching_lines): Return ret. * src/test_quantum.cc: Playing around. 2013-04-18 Richard Larsson * arts-2-1-584 * src/m_zeeman.cc: Use the unDefined * src/lineshape.cc: Return to the previous way of doing Faddeeva. I personally think there is something fishy going on in how we use gamma and sigma in ARTS. I think there should be a more clear-cut definition and that names should change more often between the functions (e.g. be clear when gamma is self-broadening, Lorentz-broadening and/or collisional half-life). In any case, the Faddeeva function passes the standard clearsky test case and should therefore represent the Voigt shape quite well. 2013-04-18 Oliver Lemke * arts-2-1-583 * src/m_abs_lookup.cc (abs_lookupCalc): Initialize abs_lookup.xsec with NAN. Ignore free_electrons species. * src/gas_abs_lookup.cc (GasAbsLookup::Extract): Ignore species such as Zeeman and free_electrons which are not stored in the lookup table. For those the result is set to 0. 2013-04-18 Oliver Lemke * arts-2-1-582 * src/xml_io_basic_types.cc: Use double_imanip() whenever reading a floating point number from an ASCII XML file. Allows proper reading of nan and inf values even if the compiler doesn't support it by default (such as gcc). 2013-04-18 Oliver Lemke * arts-2-1-581 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag(String def)): Initialize misotopologue with -1. * src/gas_abs_lookup.cc (GasAbsLookup::Adapt): species -> abs_species in chk_contains message. 2013-04-18 Oliver Lemke * arts-2-1-580 * ChangeLog: Correct filename in previous entry. 2013-04-18 Oliver Lemke * arts-2-1-579 * src/partition_function_data.cc: (define_partition_species_data): Add assertion at the end to ensure that all species have been taken care of. Add dummy entry for the free_electrons species. (spec, iso): Remove empty if statements that were just there to avoid an unused variable warning from the compiler when compiling without assertions. Instead, add _U_ in function parameter list to the variable that is only used in the assertion. * src/file.cc (open_input_file): Respect ARTS search path. 2013-04-17 Oliver Lemke * arts-2-1-578 * src/rational.h: Tweak comparison operators. If the denominator is 0, the comparison is always false (except !=). * CMakeLists.txt: Don't run testcases with 'nocheck' in their name automatically. This way we can have testcases defined that are currently broken / under construction without breaking 'make check' and still run them easily with ctest directly. * controlfiles/CMakeLists.txt: Enable test_zeeman, add 'nocheck' to testcase name. 2013-04-17 Oliver Lemke * arts-2-1-577 * src/CMakeLists.txt: Add test_quantum. * src/absorption.{h,cc} (LineRecord::ReadFromHitran2004Stream): Store quantum numbers for O2 in new QuantumNumberRecord. (find_matching_lines): Search in ArrayOfLineRecord. * src/m_zeeman.cc (propmat_clearskyAddZeeman): Use quantum numbers from the QuantumNumberRecord. * src/rational.h: Define RATIONAL_UNDEFINED and add isUndefined method. * src/quantum.{cc,h}: Add Compare function and simple output operators. Remove QUANTUM_UNDEFINED and use new RATIONAL_UNDEFINED instead. 2013-04-16 Patrick Eriksson * arts-2-1-576 * src/ppath.cc (raytrace_1d_linear_basic) (raytrace_2d_linear_basic, raytrace_3d_linear_basic): With ppath_lmax=-1, lmax was effectively set lraytrace and number of path points could differ between geometric and refraction calcs. Expanded an if-statement, to solve this problem. 2013-04-16 Oliver Lemke * arts-2-1-575 * src/arts.h: Add define for isnan an isinf to fix compilation on g++ (>=4.7) using the new c++11 standard. * controlfiles/artscomponents/zeeman/yREFERENCE_3D.xml: Update reference file. * controlfiles/artscomponents/zeeman/TestZeeman.arts: Remove abs_n2. * src/m_extract.h: Update docs for Extract template function. 2013-04-15 Jana Mendrok * arts-2-1-574 * src/m_extract.h (Extract): Removed Extract for Index from ArrayOfIndex as this - according to Oliver - is implicitly included in the template function. 2013-04-15 Jana Mendrok * arts-2-1-573 * src/m_extract.h (Extract): Added Extract for Index from ArrayOfIndex. * src/m_doit.cc (CloudboxGetIncoming, iyInterpCloudboxField): Introduce sanity check for radiance field interpolation - throws an error if radiance ratio between two interpolation points exceeds a threshold. Can be switched off (and old non-check behaviour used instead, which is preferable for very thin atmospheres, where radiance field is a step function when going from downlooking to limb) via "rigorous" keyword. Only for 1D case implemented, though. (doit_za_grid_optCalc): Throw level-1 warning instead of runtime error if number of zenith angles for grid optimizations seems too low (<500). * src/methods.cc: Adapted to the changes in WSM above. * src/doit.[cc,h] (iy_interp_cloudbox_field): Sanity check for radiance field interpolation (see iyInterpCloudboxField above). * src/ppath.cc (ppath_start_stepping): Minor fix: in 3D allow sensor to be right on the edge of the defined lon-grid. * src/continua.cc controlfiles/artscomponents/arts-xml-data/TestAtmScen_Mars.arts: Minor spellfixes. * doc/uguide/gridded_field_gridnames.txt: Some more specifications. 2013-04-12 Oliver Lemke * arts-2-1-572 * src/quantum.{cc,h}: Quantum numbers implementation. Unfinished. * src/absorption.{cc,h}: Rename QuantumNumbers to QuantumNumbersString. Will be removed once the new implementation is completed. Add QuantumNumberRecord to LineRecord. * src/CMakeLists.txt: Add quantum.cc. * src/rational.{cc,h}: Remove assertion for denom>0 (for now). Because we want to use Rational(0,0) as an undefined value. Use less controversial names for member variables. top -> mnom, low -> mdenom. 2013-04-10 Oliver Lemke * arts-2-1-571 * src/m_abs.cc, src/absorption.h (linesElowToJoule): Removed unused function. * src/rational.{cc,h}: Add typedef for ArrayOfRational. Move implementation of Simplify to cc file. 2012-04-10 Oscar Isoz * arts-2-1-570 * src/methods.cc, src/m_sensor.cc (sensor_responseGenericAMSU,f_gridFromSensorAMSUgeneric): Added workspace methods for implementation of AMSU-A type sensors, * controlfiles/instruments/amsu/TestAMSUA.arts, controlfiles/instruments/amsu/amsua.arts : Added preliminary testcases for AMSU-A type sensor 2013-04-09 Stefan Buehler * arts-2-1-569 * src/methods.cc (basics_checkedCalc): Added input variable *abs_f_interp_order*. * src/m_atmosphere.cc (basics_checkedCalc): If any of the wind fields exist, abs_f_interp_order must not be zero. This to make sure that absorption lookup table extraction still works if the frequency grid is Doppler shifted. * controlfiles/artscomponents/groundbased/TestWinds.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Jupiter.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Venus.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Mars.arts: Set abs_f_interp_order to 1 to avoid runtime error. 2013-04-09 Oliver Lemke * arts-2-1-568 * README: Cleanup TESTS section. Fix factual error: clang does NOT support OpenMP. 2013-04-09 Oliver Lemke * arts-2-1-567 * src/docserver.cc (Docserver::doc_method): Instead of listing variables that are used both as input and output twice, just list them once and mark them with 'OUT+IN'. 2013-04-09 Oliver Lemke * arts-2-1-566 * src/workspace.cc: Remove abs_species_lookup and abs_species_onthefly. * src/methods.cc, src/m_abs_lookup.cc (SpeciesPartitionLookupOnthefly): Removed. 2013-04-08 Oliver Lemke * arts-2-1-565 * tests/: Get rid of empty directory. * ChangeLog: Aesthetics. Fix indentation, shorten line length to 80 chars. 2013-04-05 Richard Larsson * arts-2-1-564 * src/absorption.cc: Fix HITRAN reading routine for species without isotopologues. * controlfiles/artscomponents/cia/TestCIA.arts: Fix what previous commit broke. 2013-04-05 Richard Larsson * arts-2-1-563 * src/workspace.cc: Returned to not having a phase xsec. Also added extra commentary to isotopologue_quantum. * src/m_zeeman.cc: Removed reference to line mixing. LM will be handeled internally in xsec_species in the future. * src/methods.cc,src/m_abs.cc,src/agendas.cc: Returned to not having a phase xsec explicitly for functions that don't care about it. (xsec_species) still return the phase variable because functions like m_zeeman require the phase. * src/lineshapes.cc: Fixed major bug in treatment of pressure broadening in (faddeeva_algorithm_916). We treat the pressure broadening parameter as half width half strength, not full width half strength. So to get the necessary parameter for the Faddeeva function, gamma should thus be divided by 2PI and nothing else. This might have to be clarified in the related paper, but it does not change the results in there the slightest, since the related paper is clearly in the temperature region of atmospheric broadening. 2013-03-31 Oliver Lemke * arts-2-1-562 * src/cia.{cc,h}: (cia_get_index): Fix critical bug. ArrayOfCIARecord was accidentally passed in by value instead of reference, causing horrible slowdown in abs_xsec_per_speciesAddCIA due to copying of all CIA species data on every call in inner loop. Single-threaded CIA calculations now 5x faster, multi-threaded (8 cores) 20x faster than before. (cia_interpolation): Only create out3 output if needed. * src/check_input.cc (chk_interpolation_grids): Only create ostringstream if needed. * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Got rid of one unnecessary ostringstream in the inner loop. * CMakeLists.txt: Set COMPILE_FLAGS just before creating config.h. Otherwise arts -v might not show the correct flags. Remove NDEBUG from CMAKE_C*_FLAGS earlier. 2013-03-25 Oliver Lemke * arts-2-1-561 * absorption.{cc,h}: (LineRecord): Add member mquantum_numbers. (LineRecord::ReadFromArtscat4Stream): Read quantum numbers into string. (LineRecord::operator<<): Do not write quantas from Hitran into ARTSCAT-4. They are incompatible with our format. Instead, use the quantum numbers that were read from the original ARTSCAT-4 file (if this LineRecord has them). 2013-03-24 Oliver Lemke * arts-2-1-560 * src/m_cloudbox.cc (ParticleTypeInit): Do a resize(0) instead of a reserve(20) because the latter does not do any initialization. This is required behaviour of Init methods. * arts.h (DEBUG_PRINT): Add convenience macro for debugging to cerr. DEBUG_PRINT(x) outputs DBG: x: 1 Can be used with expressions too: DEBUG_PRINT(x+1) outputs DBG: x+1: 2 * src/m_general.{cc,h}, src/methods.cc: Fix behaviour of timer WSV. Instead of outputting the timer values inside the timerStop method, move that implementation to Print. 2013-03-21 Oliver Lemke * arts-2-1-559 * src/m_doit.cc (DoitInit): Throw runtime_error if scat_za_grid is not increasing. Fixes assertion in doit_scat_fieldCalcLimb reported by Jana. Fix typo in the scat_aa_grid runtime error (s/za/aa/). 2013-03-21 Oliver Lemke * arts-2-1-558 * WARNING! This version requires you to adapt your controlfiles: Replace SpeciesSet with abs_speciesSet! Insert abs_xsec_agenda_checkedCalc and propmat_clearsky_agenda_checkedCalc where needed. I recommend to always call abs_speciesSet, abs_speciesAdd and abs_speciesDefineAllInScenario by keyword: Use abs_speciesSet( species=["CO2"] ) instead of abs_speciesSet( abs_species, ["CO2"] ). Same for abs_speciesAdd and DefineAllScenarios: abs_speciesAdd( species=["H2O"] ) abs_speciesDefineAllInScenario( basename="testdata/tropical" ) * src/methods.cc, src/m_abs.cc, src/m_abs_lookup.cc: (abs_xsec_agenda_checkedCalc, propmat_clearsky_agenda_checkedCalc): Two new checks that have to be called before abs_xsec_agenda or propmat_clearsky_agenda are used. They ensure that the two agendas contain the required methods to satisfy calculation of all tags set in abs_species. (abs_speciesDefineAllInScenario, abs_speciesAdd, abs_speciesAdd2): Add propmat_clearsky_agenda_checked and abs_xsec_agenda_checked as output. (propmat_clearskyInit): Add propmat_clearsky_agenda_checked as input. (abs_xsec_per_speciesInit): Add abs_xsec_agenda_checked as input. (abs_speciesSet): Change abs_species output type from generic to specific and rename the function accordingly. In almost all cases this method is called with abs_species. By changing it to a specific output, it can be left out in the call. The rare case of setting abs_nls directly can be easily done by calling: abs_speciesSet( abs_species=abs_nls, species=["H2O-PWR98"] ) * src/agenda_class.{cc,h} (Agenda::has_method): Added. * src/workspace.cc: Add abs_xsec_agenda_checked and propmat_clearsky_agenda_checked. * src/abs_species_tags.cc (get_tagindex_for_Strings): Removed. * doc/uguide/absorption.tex: SpeciesSet -> abs_speciesSet. * controlfiles/*/*/*.arts: Use keywords in SpeciesSet, abs_speciesAdd and abs_speciesDefineAllInScenario. Insert abs_xsec_agenda_checkedCalc, propmat_clearsky_agenda_checkedCalc where needed. 2013-03-21 Patrick Eriksson * arts-2-1-557 * Big cleaning, to finish the transition to new way for handling Faraday and storing free electrons. * doc/uguide/faraday.tex: Updated to new approach for Faraday rotation. * doc/uguide/rte_basics.tex: * doc/uguide/atmosphere.tex: Removed refences to unknown WSVs. * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Venus.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Jupiter.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Mars.arts: * controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Earth.arts: Added Tensor3Create( edensity_field ) to keep the cfiles OK. * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: * controlfiles/general/agendas.arts: * controlfiles/general/general.arts: Removed everything around edensity. * src/m_refraction.cc (refr_indexFreeElectrons): Now using rtp_vmr instead of rtp_edensity. * src/montecarlo.h: * src/montecarlo.cc (mcPathTraceGeneral): * src/m_montecarlo.cc (MCGeneral): * src/m_rte.cc: * src/refraction.cc: * src/m_atmosphere.cc (basics_checkedCalc): * src/ppath.cc: * src/m_doit.cc: * src/rte.cc: * src/m_cloudradar.cc: * src/doit.h: * src/doit.cc: Removed everything around edensity_field. * src/m_transmitter.cc (iyTransmissionStandard, iyRadioLink): * src/m_rte.cc (iyEmissionStandard): * src/m_cloudradar.cc (iyCloudRadar): Adopted to changes in rte.cc. * src/rte.cc (get_ppath_atmvars): Removed part around ppath_ne. (get_ppath_trans, get_ppath_trans2): Removed everything around Faraday rotation. * src/agendas.cc: Removed rtp_edensity as input for refr_index_agenda. And edensity_field from both ppath agendas. * src/workspace.cc (define_wsv_data): Removed rtp_edensity. This is now part of rtp_vmr. And removed edensity_field. Now part of vmr_field. 2013-03-20 Patrick Eriksson * arts-2-1-556 * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Updated. Faraday rotation handled by the changes below. Perfect match to old reference data. * src/m_transmitter.cc (iyRadioLink, iyTransmissionStandard): The auxiliary Faraday quantities now filled by data taken from propmat_clearsky. * src/m_abs.cc (propmat_clearskyAddFaraday): Included input checks and physics. Completed. 2013-03-20 Oliver Lemke * arts-2-1-555 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag): Get the species index before handling the free_electrons tag. (SpeciesTag::Name): Use name from species_data for free_electrons. * src/species_data.cc (define_basic_species_data): Add tag 'free_electrons'. 2013-03-20 Patrick Eriksson * arts-2-1-554 * doc/uguide/atmosphere.tex: * doc/uguide/absorption.tex * doc/uguide/concept.tex: As below, but inside AUG. * src/m_abs_lookup.cc: * src/mc_interp.h: * src/m_optproperties.cc: * src/mc_interp.cc: * controlfiles/general/agendas.arts: * src/m_refraction.cc: * src/refraction.cc: * src/doit.cc : * src/m_abs_o2_models.cc: * src/m_zeeman.cc: * src/montecarlo.cc: * src/mc_NotUsed.cc: * src/disort.cc: * src/montecarlo.h: * src/methods.cc: Changed all rte_temperature, rte_pressure, rte_mag * src/agendas.cc: rte_doppler and rtp_abs_species, to new rtp- * src/m_abs.cc: correspondance. * src/workspace.cc: Renamed rtp_abs_species to rtp_vmr. 2013-03-20 Patrick Eriksson * arts-2-1-553 * controlfiles/testdata/tropical.expanded.t.xml: * controlfiles/testdata/tropical.expanded.z.xml: Grids still lacked name. 2013-03-20 Oliver Lemke * arts-2-1-552 * doc/uguide/concept.tex, uguide/development.tex, doc/uguide/scattering.tex: Update docs about test cases. * tests/: Removed. 2013-03-15 Oliver Lemke * arts-2-1-551 * src/m_doit.cc, src/methods.cc (doit_i_fieldUpdate1D): Remove doit_i_field_old from inputs. Instead, use a local variables that's initialized from doit_i_field. * src/physics_funcs.cc (invplanck): Convert assertion for radiance < 0 to runtime_error. 2013-03-13 Oliver Lemke * arts-2-1-550 * src/absorption.cc, src/continua.cc, src/m_abs.cc, src/m_abs_lookup.cc, src/m_atmosphere.cc, src/m_batch.cc, src/m_rte.cc: Revise all OpenMP loops. Make sure loops have enough iterations before parallelizing them. Otherwise it can really hurt performance. Basically now all loops require the number of iterations to be greater or equal to the maximum number of threads (some exceptions such as ybatchCalc). Here are some benchmarks: make check (TEST_JOBS=4) ubuntu5 before: 29 sec ubuntu5 after : 18 sec ubuntu1 before: DNF (stuck in fast.doit) ubuntu1 after: 13 sec ctest -j4 -R xmldata -E isoratios ubuntu5 before: 43 sec ubuntu5 after: 17 sec ubuntu1 before: 22 sec ubuntu1 after: 15 sec ubuntu5 uses gcc 4.4.4, ubuntu1 gcc 4.6.3 * src/m_abs.cc (abs_xsec_per_speciesAddLines, abs_xsec_per_speciesAddLines), src/m_cia.cc (abs_xsec_per_speciesAddCIA): Only output to out3/2 if visible. 2013-03-13 Oliver Lemke * arts-2-1-549 * This commit breaks backwords-compatibility: All occurences of abs_mat_per_species have been renamed to propmat_clearsky. This includes all Workspace methods that have abs_mat_per_species in their name and the abs_mat_per_species_agenda. * src/agendas.cc, src/disort.cc, src/disort.h, src/doit.cc, src/doit.h, src/m_abs.cc, src/m_abs_lookup.cc, src/m_cloudradar.cc, src/m_doit.cc, src/m_montecarlo.cc, src/m_optproperties.cc, src/m_rte.cc, src/m_transmitter.cc, src/m_zeeman.cc, src/methods.cc, src/montecarlo.cc, src/montecarlo.h, src/optproperties.cc, src/optproperties.h, src/rte.cc, src/rte.h, src/workspace.cc, doc/uguide/absorption.tex, doc/uguide/concept.tex, controlfiles/*/*/*.arts, controlfiles/general/agendas.arts, controlfiles/general/agendasDOIT.arts, controlfiles/planetary_toolbox/includes/common/AbsLookup.arts, controlfiles/planetary_toolbox/includes/common/AbsOnTheFly.arts, controlfiles/planetary_toolbox/validation/common/spectroscopy/SpecCat_Consistency_Perrin-vs-HITRAN.arts: s/abs_mat_per_species/propmat_clearskypropmat_clearsky/g 2013-03-12 Oliver Lemke * arts-2-1-548 * src/mystring.h (my_basic_string): Add trim method to remove whitespace from Strings. Remove cruft. * src/abs_species_tags.{cc,h} (SpeciesTag): Add support for 'free_electrons' tag. (species_index_from_species_name): Use new String.trim. * src/m_abs_lookup.cc (SpeciesSet): Make sure 'free_electrons' is not used with other tags in the same group and not more than once overall. * src/methods.cc, src/m_abs.cc: Add stub for abs_mat_per_speciesAddFaraday. 2013-03-12 Oliver Lemke * arts-2-1-547 * src/m_transmitter.cc: Use NAN instead of 0/0. The latter can produce an exception on some compilers. 2013-03-12 Patrick Eriksson * arts-2-1-546 * doc/uguide/rte_basics.tex: Modified following new discussions about new WSV and their names. Hopefully final ... 2013-03-11 Oliver Lemke * arts-2-1-545 * src/m_append.h: Several fixes. Properly handle appending to or appending an empty variable. Allow appending a variable to itself. Don't run into an endless loop and eat all memory when appending an ArrayOf to itself. * src/mystring.h: Fix bug in constructor that produced an assertion when trying to create an arts String from an empty C++ string. 2013-03-11 Oliver Lemke * arts-2-1-544 * src/m_basic_types.cc, src/methods.cc: Add ArrayOfIndexLinSpace. 2013-03-11 Oliver Lemke * arts-2-1-543 * controlfiles/CMakeLists.txt: Add cia testcases to check-xmldata. * controlfiles/artscomponents/cia/TestCIA.arts, controlfiles/artscomponents/cia/TestRTwithCIA.arts: Adapt path to arts-xml-data. 2013-03-08 Stefan Buehler * arts-2-1-542 * src/m_basic_types.cc: Added Compare for ArrayOfMatrix. * src/methods.cc: Added Compare for ArrayOfMatrix. * controlfiles/artscomponents/cia/TestCIA.arts: Added. Calculate absorption cross sections for all CIA continua and compare to reference calculation. Path to arts-xml-data needs adjustment, and must still be added to suitable test target. * controlfiles/artscomponents/cia/TestCIA.abs_xsec_per_species_reference.xml: Reference result for the above. * controlfiles/artscomponents/cia/TestRTwithCIA.arts: Added. Calculate RT simulation with mixed CIA and other absorption tags. Compare to reference calculation. Path to arts-xml-data needs adjustment, and must still be added to suitable test target. * controlfiles/artscomponents/cia/TestRTwithCIA.iy_reference.xml: Reference result for the above. 2013-03-08 Jana Mendrok * arts-2-1-541 * src/methods.cc: Updated doc of AtmFieldsCalc and pnd_fieldCalc regarding zeropadding. * src/workspace.cc: Added info on requirement that outer points of pnd_field in each dim have to have pnd=0. * src/m_cloudbox.cc (cloudbox_checkedCalc): Improved a couple of error messages. (pnd_fieldCalc): Removed Oliver's recent grid name fix. * src/cloudbox.cc (chk_pnd_field_raw_only_in_cloudbox): Allow pnd to have non-zero values below lower cloudbox limit, if this is at the lowerest pressure level. Also reject cases, where pnd has non-zero values AT the cloudbox_limits and print info on which entry of pnd_field_raw array is problematic. * controlfiles/artscomponents/[doit/pnd_field_1D,montecarlo/pnd_field_raw].xml: Add names for grids of GriddedField (now required by pnd_fieldCalc). 2013-03-07 Oliver Lemke * arts-2-1-540 * src/m_abs_lookup.cc (abs_lookupCalc): Adapt OpenMP loop. 2013-03-07 Stefan Buehler * arts-2-1-539 * Quite a big absorption part overhaul. Not completely finished, there will be some polishing in the next days. All check-all targets run (except for something with the userguide that was already broken). I did not try to fix other controlfiles that are not part of check-all. In generally, just including the following should make your controlfile work again: # Agenda for scalar gas absorption calculation Copy(abs_xsec_agenda, abs_xsec_agenda__noCIA) * src/absorption.h (abs_n2Set, abs_h2oSet): Moved declarations here, since these are no longer WSMs. * src/gas_abs_lookup.h (GasAbsLookup): Updated friend function declarations. * src/m_abs.cc (abs_h2oSet): Removed fancy treatment if no H2O is found. Instead, throw runtime error directly, just as abs_n2Set does. (abs_coefCalc): Removed this method, which is no longer needed. (abs_coefCalcSaveMemory): Ditto. (abs_xsec_per_speciesInit, abs_xsec_per_speciesAddLines) (abs_xsec_per_speciesAddConts): Added input variable abs_species_active to all of these methods. Absorption is calculated only for the active species. (This feature is needed when abs_xsec_agenda is executed for absorption lookup table generation.) (abs_xsec_per_speciesAddConts): Now set h2o_abs and n2_abs internally (using the dedicated helper functions). (abs_mat_per_speciesAddOnTheFly): Use new agenda abs_xsec_agenda. Removed input variables that are specific to certain absorption methods, such as the line list, etc.. Eliminated call of abs_coefCalc. * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Added input variable abs_species_active. Absorption is calculated only for the active species. * src/methods.cc (abs_coefCalc, abs_coefCalcSaveMemory) (abs_h2oSet, abs_n2Set): Eliminated these WSMs. * src/m_abs_lookup.cc (abs_lookupCalc): Use new agenda abs_xsec_agenda, which considerably simplifies things. Removed input variables that are specific to certain absorption methods, such as line list, continuum models, etc.. (calc_lookup_error, abs_lookupTestAccuracy, abs_lookupTestAccMC): Use new agenda abs_xsec_agenda. * src/agendas.cc (abs_xsec_agenda): Added input variable abs_species_active. * src/workspace.cc (abs_h2o, abs_n2): Eliminated these WSVs. * controlfiles/*: Added Copy(abs_xsec_agenda, abs_xsec_agenda__noCIA) to most controlfiles. Removed calls of abs_h2oSet and abs_n2Set. 2013-03-07 Patrick Eriksson * arts-2-1-538 * src/methods.cc: GIN defocus_method was spelled as defocos_method 2013-03-06 Oliver Lemke * arts-2-1-537 * cmake/modules/ArtsTestcases.cmake: Raise the report level for test cases from -r002 to -r022. Then one can see useful information on the screen when manually running testcases with, e. g. 'ctest -V -R fast.faraday' * src/messages.h: (sufficient_priority_agenda): Move the in_main_agenda check into here. (sufficient_priority): New method. Returns true if current output priority is sufficient for either screen or file. (ArtsOut::operator<<): Remove in_main_agenda check. * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Correct output value to vmrs[this_species]+broad_spec_vmr_sum in warning. Use out2.sufficient_priority(). * src/arts.h: Add convenience macro DEBUG_COUNTER(n). This will create a static variable and output the name of the counter and its value everytime that code is reached. 2013-03-05 Oliver Lemke * arts-2-1-536 * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Only send the warning about the total VMR being more than 10% different from 1. to out2 if the user can actually see it (verbosity>=2). Speeds up arts.ctlfile.xmldata.surf.mars by a factor of 2 because the warning happens 11.8 million times. This output is unlikely to be ever seen because it only appears inside an agenda. Only running arts with -r202 will make this warning visible (and produce a 1.3 GB rep file). I think we'll have to rethink our logging strategy. 2013-03-05 Oliver Lemke * arts-2-1-535 * src/m_abs.cc (abs_xsec_per_speciesAddConts): Remove check_continuum_model calls. These have already been checked earlier and cost a lot of time. * src/continua.cc (check_continuum_model): Correct example tag in docs. 2013-03-05 Stefan Buehler * arts-2-1-534 * src/m_abs_lookup.cc (abs_lookupSetupWide) Set all plain VMRs (except N2, O2, H2O) to a default value of 1e9 (was 0 before). Zero works for LBL absorption, but may be problematic for continua. 2013-03-05 Stefan Buehler * arts-2-1-533 * src/gas_abs_lookup.cc (GasAbsLookup::Extract): Commented out runtime error check that reference VMR is not zero. * src/workspace.cc (abs_f_interp_order): Added this WSV. (Not yet used anywhere.) * controlfiles/general/general.arts: Initialize abs_f_interp_order to zero (no frequency interpolation). 2013-03-05 Oliver Lemke * arts-2-1-532 * src/m_cloudbox.cc, src/methods.cc: (pnd_fieldCalc): Add flag to enable zeropadding. Implemented only for 1D. Reimplemented the 1D case to reuse the existing GriddedFieldPRegrid method instead of duplicating the interpolation code. 2013-03-05 Oliver Lemke * arts-2-1-531 * src/docserver.cc (Docserver::insert_title): Add space between literal and identifier as required by C++11. 2013-03-04 Oliver Lemke * arts-2-1-530 * README: Add info on how to compile with LLVM/Clang. 2013-03-04 Oliver Lemke * arts-2-1-529 * Having fun with compiler bugs. * src/rte.cc (get_ppath_trans): The OpenMP loops in this function fail randomly with GCC on Mac OS X. This appears to be a compiler bug. The code looks fine and they work fine with GCC on Linux and with the Intel Compiler on Mac. Also tested to remove the OpenMP statements from our loops and instead add a dummy OpenMP loop that does nothing. This still leads to crashes which indicates there's nothing wrong with our loops but with the compiler implementation. Apple GCC 4.2 works fine but self-compiled GCC 4.4, 4.6, 4.7 and 4.8dev all experiences this issue. Added #if !(__APPLE__) || (__INTEL_COMPILER) for those loops. * Fix compilation with the Intel Compiler (tested with 12.1.0, 13.0.1): * src/m_xml.{h.cc}: Move non-template implementations into new .cc file. * src/absorption.cc: Always make species_data visible as const. * src/absorption.cc, src/m_abs_lookup.cc, src/m_batch.cc, src/m_doit.cc, src/m_rte.cc: Workaround for Intel Compiler (13.0.1) OpenMP issue. Loops that use firstprivate variables segfault if the number of iterations is 0. The Intel Compiler correctly skips the loop in that case, but still tries to call the destructors of the variables defined as firstprivate which haven't even been created in this scenario. * src/rte.cc (get_ppath_abs): Workaround for Intel Compiler (13.0.1) optimization bug. Remove the continue statement from within the catch block. Otherwise compilation will never finish. * src/m_abs.cc, src/m_ppath.cc: Include m_xml.h for WriteXML. * src/xml_io_compound_types.cc (xml_read_from_stream): Initialize n to 0 to avoid compiler warning. * src/CMakeLists.txt: Use set_source_files_properties for all compilers. Add m_xml.cc to artscore. * CMakeLists.txt: Add compiler flags -fvisibility=hidden -fvisibility-inlines-hidden. 2013-03-01 Oliver Lemke * arts-2-1-528 * WARNING! Zeropadding of VMRs in AtmFieldsCalc and AtmFieldsCalcExpand1D has to be enabled explicitly now! * src/m_atmosphere.cc, src/methods.cc (AtmFieldsCalc, AtmFieldsCalcExpand1D): Add flag vmr_zeropadding that is off by default to avoid accidental padding without the user noticing. Move description of interp_order from the general method description into GIN_DESC. * controlfiles/artscomponents/ppath/TestRefractPlanets.arts: Enable vmr_zeropadding in AtmFieldsCalc for Venus and Jupiter. * controlfiles/artscomponents/helpers/TestHSE.arts, controlfiles/artscomponents/faraday/TestFaradayRotation.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScen_Venus.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScen_Jupiter.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Earth.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Venus.arts, controlfiles/artscomponents/arts-xml-data/TestAtmScenSup_Jupiter.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_Earth.arts, controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts: Enable vmr_zeropadding in AtmFieldsCalc and AtmFieldsCalcExpand1D. 2013-03-01 Oliver Lemke * arts-2-1-527 * src/xml_io_compound_types.cc (xml_read_from_stream): Throw an error if a tag is defined twice in input file. * src/absorption.{cc,h} (SpeciesAuxData::ReadFromStream): Return the name of the current tag. * src/workspace_ng.{h,cc} (Workspace): Add some debugging code. 2013-02-27 Jana Mendrok * arts-2-1-526 * controlfiles/artscomponents/absorption/TestIsoRatios.arts, IsoRatios_H2Oorig.xml, IsoRatios_H2Omani.xml: Fixed isoratio test case (broken by slightly changed requirements on which isoratios have to be present). 2013-02-27 Jana Mendrok * arts-2-1-525 * controlfiles/artscomponents/arts-xml-data/TestAtmScen_Mars.arts, TestAtmScenSup_Mars.arts: Bugfix (get data from arts-xml-data, not from Jana's homedir!). * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: Removed leftover Print calls. 2013-02-27 Jana Mendrok * arts-2-1-524 * CMakeLists.txt: Introduced a target check-xmldata (which does exactly that - executing the arts-xml-data tests) and adapted make check setup such that xmldata tests are NOT executed with this one. * controlfiles/CMakeLists.txt: Introduced further tests, particular xmldata tests. * controlfiles/artscomponents/helpers/TestForloop.arts, TestHSE.arts, TestRegridding.arts, TestAgendaCopy.arts: Added. Tests of some ARTS helper methods. * controlfiles/artscomponents/arts-xml-data/TestIsoRatios.arts, TestSpectro*.arts, spectrotest.py: Added. Tests of toolbox spectroscopic and isotopologue ratio data. CAUTION: TestSpectro*.arts require HITRAN data, hence are not included in the make check target. Also, they need quite a bit of runtime. Nevertheless, they are part of the ESA planetary toolbox test cases, hence we want to have them in the repository. * controlfiles/artscomponents/ppath/TestRefractPlanets.arts: Added. Testing MWgeneral refraction method. * controlfiles/artscomponents/arts-xml-data/TestAtmScen*.arts, TestAtmScenSup*.arts, TestSurf*.arts: Minor modifications. * AUTHORS: Added myself. * src/methods.cc: Spellfix. * controlfiles/planetary_toolbox/validation/common/spectroscopy/ SpecCat_Consistency_Perrin-vs-HITRAN.arts: Corrected f_grid setup. * doc/uguide/absorption_theory.tex: Minor layout fix. 2013-02-27 Mathias Milz * arts-2-1-523 * controlfiles/testdata/chevallierl91_all_extract.xml: included information of the source of these profiles. 2013-02-21 Richard Larsson * arts-2-1-522 * src/m_zeeman.cc: Now takes manual angles given the right GIN. Useful with Oliver's named argument implementation to make simplistic magnetic field calculations without having to recompile the code or having to specifically customize the magnetic field. * src/methods.cc: manual_zeeman_angles_on, manual_zeeman_theta and manual_zeeman_eta are added as GIN to abs_mat_per_speciesAddZeeman. The first is a tag that will set eta and theta to the other two accordingly. 2013-02-21 Oliver Lemke * arts-2-1-521 * New controlfile feature: Named arguments! Besides calling a workspace method with positional arguments, it is now possible to use named arguments. Omitted arguments will be set to their defaults. For specific inputs/outputs the default WSV will be used and for generic in/out the default value. For example, calling a method with all the default arguments and only pass in two custom values for the generic input required this code before: doit_i_fieldUpdateSeq1D( doit_i_field, doit_scat_field, cloudbox_limits, abs_mat_per_species_agenda, vmr_field, spt_calc_agenda, scat_za_grid, scat_aa_grid, pnd_field, opt_prop_part_agenda, ppath_step_agenda, ppath_lraytrace, p_grid, z_field, refellipsoid, t_field, edensity_field, f_grid, f_index, surface_rtprop_agenda, doit_za_interp, 1, 0.05 ) now one can simply write: doit_i_fieldUpdateSeq1D( normalize=1, norm_error_threshold=0.05 ) * src/parser.{h,cc}: Add named argument support. * src/sourcetext.h (SourceText): Add new member functions LineRaw, ColumnRaw and SetPosition. * src/methods.cc: Make generic input/output variables names more consistent. Generic output in ...Set... WSMs is called 'out', generic input that is usually given as a literal is called 'value' (e.g. in VectorSet or MatrixSetConstant), otherwise 'in'. Add docs for FieldFromGriddedField. Set default value for userparam to [] in abs_cont_descriptionAppend. * controlfiles/general/continua.arts, controlfiles/general/general.arts, controlfiles/artscomponents/doit/TestDOIT.arts: Updated to use named arguments. * doc/uguide/concept.tex: Add paragraph about named arguments. 2013-02-24 Patrick Eriksson * arts-2-1-520 * Doppler shift now also included in call of blackbody_radiation_agenda, as well as when calculating particle extinction. However, for efficiency reasons, for particles only the mean shift along the path is considered. This as it is time consuming to extract the data from scat_data_raw. So this is done assuming a constant shift along the path. This allows to at least include big shifts caused by e.g. satellite velocity. The smaller shifts are here of less importance as the particle extinction is quite smooth with frequency. * doc/uguide/winds.tex: Chapter revised. * doc/uguide/atmosphere.tex (section{Wind and magnetic vector fields}): * doc/uguide/rte.tex (section{Dispersion}): Some smaller changes related to revision of the Doppler chapter. * controlfiles/artscomponents/wfuns/TestWfuns.arts: * controlfiles/artscomponents/groundbased/TestGbased.arts: Removed some obselete stuff related to jacobians. * doc/uguide/matrix_vector.tex: Added that the mean function is defined for vector and matrix. Also added a small note that min. max and mean for matrices is for the complete matrix. * controlfiles/artscomponents/absorption/TestIsoRatios.arts: Changed rte_ to rtp_, where necessary. * src/m_transmitter.cc (iyTransmissionStandard, iyRadioLink): * src/m_cloudradar.cc (iyCloudRadar): * src/m_rte.cc (iyEmissionStandard): Adopted to changes in rte.cc. * src/rte.cc (get_ppath_f): get_ppath_doppler renamed, as now shifted f_grid is returned, and not only the shift. (get_ppath_abs): Temporary solution for rtp_doppler, until settled how to handle frequency shifts for abslookup. (get_ppath_blackrad,get_ppath_ext): Now takes ppath_f as input. 2013-02-22 Richard Larsson * arts-2-1-519 * src/workspace.cc,methods.cc: Updated the documentation. * controlfiles/artscomponents/zeeman/TestZeeman.arts: Was broken by my last update. 2013-02-22 Stefan Buehler * arts-2-1-518 * src/methods.cc (SpeciesPartitionLookupOnthefly): Added. * src/m_abs_lookup.cc (SpeciesPartitionLookupOnthefly): Added. * src/agendas.cc (abs_xsec_agenda): Renamed from abs_xsec_per_species_agenda. * src/workspace.cc (abs_species_active): Added. (abs_species_lookup): Added. (abs_species_onthefly): Added. (abs_xsec_agenda): Renamed from abs_xsec_per_species_agenda. * controlfiles/general/agendas.arts (abs_xsec_agenda): Renamed from abs_xsec_per_species_agenda. 2013-02-21 Patrick Eriksson * arts-2-1-517 * Treatment of Doppler shifts streamlined. Now possible to include sensor movement (but so far only on iyCalc level), and prepared for frequency dependent shift. * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: Adopted call of iyRadioLink. * src/make_array.h: Had to add define MakeArray for 37 arguments. (iyRadioLink appearently has this record for input arguments). * src/m_transmitter.cc (iyTransmissionStandard, iyRadioLink): * src/m_rte.cc (iyEmissionStandard): * src/m_cloudradar.cc (iyCloudRadar): Adopted to changes below. And now also taking rte_alonglos_v as input (passed on to get_ppath_doppler). * src/rte.cc (get_ppath_xxxx): Now winds and mag-field stored as vectors even for ppath_wind and ppath_mag. (get_ppath_doppler): New. Returns frequency dependent Doppler shift. (calc_doppler): Removed (replaced by function above). (get_ppath_abs): Now using ppath_doppler. 2013-02-21 Oliver Lemke * arts-2-1-516 * src/make_auto_md_cc.cc: Bug fix: Workspace method parameters that are defined to be exclusively used as output are initialized to a specific values in debug mode. Due to the bug, always the default variable was initialized, not the variable that was actually passed to the WSM, e.g.: IndexCreate(i) AtmosphereSet1D(i, lat_grid, lon_grid) Print(i) Print(atmosphere_dim) This code should throw an error in the 2nd Print statement that atmosphere_dim is uninitialized. Instead, although i was initialized correctly to 1, also atmosphere_dim was set to -1. Added initialization code for Tensor4-7. 2013-02-21 Stefan Buehler * arts-2-1-515 * src/m_abs.cc (abs_linesReadFromSplitArtscat): Use SpeciesTag::Type() to decide on type of species tag. * src/absorption.cc (checkIsotopologueRatios): Rewritten. Use abs_species only to decide what species to check. For the check itself, rely only on the built in species data and the external isotopologue ratio data. * src/species_data.cc: Corrected outdated H2O comment. * src/agendas.cc (abs_xsec_per_species_agenda): Added. Name may still change. * src/workspace.cc (abs_xsec_per_species_agenda): Added. Name may still change. * controlfiles/general/agendas.arts: Added defaults for abs_xsec_per_species_agenda. 2013-02-21 Patrick Eriksson * arts-2-1-514 * src/m_surface.cc: Changed rte_pos and rte_los to rtp_pos and rtp_los, following renaming of WSVs. * src/ppath.cc (plevel_slope_3d): Nadir cases exactly at upper longitude end, with 360 deg lon-coverage, failed. Found be Richard. This special case now fixed. Fixed also the parallel case of nadir measurements exactly at the North pole. (No change should be required for lower lon end and South pole.) Note that nadir measurements exactly at end points are in gernal not allowed. But the two cases above are exceptions. 2013-02-20 Richard Larsson * arts-2-1-513 * src/m_zeeman.cc: My last update broke Zeeman. 2013-02-20 Patrick Eriksson * arts-2-1-512 * Quite a lot of changes, but should for most simulations not require any changes of your cfile. The exception is of you define some agendas without using the pre-defined ones. You can then need to change some rte_xyz to rtp_xyz. Ask me if you are in doubt. * src/rte.cc (calc_doppler): Created. * controlfiles/general/general.arts * controlfiles/general/agendas.arts * controlfiles/general/agendas_surface.arts * controlfiles/artscomponents/surface/TestSurface.arts * controlfiles/artscomponents/transmission/TestTransmission.arts * controlfiles/artscomponents/groundbased/TestGbased.arts * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts * controlfiles/artscomponents/faraday/TestFaradayRotation.arts * controlfiles/artscomponents/radiolink/TestRadioLink.arts * controlfiles/artscomponents/radiolink/TestRadioLink2.arts * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: Adopted to new WSV names. * src/methods.cc: Adopted to WSV changes below + fixed some incorrect doc-text. * src/workspace.cc: Tried to introduce a clearer distinction between variables defining a calculation to solve the radiative transfer equation (rte_xyz), and variables at a point along the path needed to calculate radiative transfer properties (rtp_xyz). "rtp" can also stand for radiative transfer point, select the full name you prefer This means that several variables before starting with rte now starts with rtp, for example, we now have rtp_temperature. Note that ppath_los is renamed to rtp_los for consistency. Totally new WSV: rte_alonglos_v, rtp_pos In addition, rte_vmr_list renamed to rtp_abs_species 2013-02-20 Richard Larsson * arts-2-1-511 * src/absorption.cc (xsec_species): Returns both phase and attenuation line shape. This halves the time spent in line shape functions for Zeeman and it is in preparation for the addition of first order line mixing (which still will require an additional database). * src/rte.cc (get_ppath_trans): Halves the time spent on Faraday rotation for special cases by moving matrix definition and adding parallellisation. * src/m_abs.cc,m_abs_lookup.cc (several places): Changed to allow for phase and attenuation shapes. Also prepared for line mixing. * src/workspace.cc: abs_lineshape_zeeman_phase is now gone. abs_xsec_per_species is replaces by abs_xsec_per_species_attenuation and abs_xsec_per_species_phase. * src/lineshapes.cc: Line shapes now accept and returns a phase line shape. Only algorithm 916 returns phase so far. * src/absorption.h,m_abs_lookup.cc: Changed necessary parts. * src/m_rte.cc: Slight speed improvement for special cases. 2013-02-20 Oliver Lemke * arts-2-1-510 * CMakeLists.txt: Account for bugfix in cmake 2.8.10 [1]. They now enable NDEBUG also in RelWithDebInfo configuration which turns off assertions. We don't want that. [1] http://public.kitware.com/Bug/view.php?id=11366 2013-02-20 Patrick Eriksson * arts-2-1-509 * doc/uguide/surface.tex: Now using symbol_defs more heavily. Some changes to be consistent with rte_basic.tex. * src/methods.cc: Gin-variable of refellipsoidOrbitPlane had a name inconsistent with header text. * doc/uguide/rte.tex: Revised. Made consistent with rte_basic.tex and using symbol_defs throughout. * doc/uguide/symbol_defs.tex: Introduced emission soure and general source vectors, and transmission matrix. And changed the symbol for the Stokes vector to small i, to be consistent with all other vectors. * doc/uguide/rte_basics.tex: Now strictly following symbol_defs. * doc/uguide/rte_basics.tex: * doc/uguide/complete_calcs.tex: * doc/uguide/atmosphere.tex: Smaller fixes after a quick reading of these chapters. 2013-02-19 Patrick Eriksson * arts-2-1-508 * src/workspace.cc (define_wsv_data): Removed old (now incorrect) comment for wind_v_field. * doc/uguide/atmosphere.tex: Changed to the Ionopsheric section to instead treat vector fields, as a common discussion area for wind and magnetic fields. Chapter also updated with respect to abs_species_field. * doc/uguide/common.tex: The text was poorly centered on page. Decreased \voffset with 0.5 cm, and increased \textheight to 23cm (+1cm). * doc/uguide/CMakeLists.txt: * doc/uguide/arts_user.tex: Included chapter below. * doc/uguide/complete_calcs.tex: New chapter. Fileld with some new text and stuff from rte.tex. 2013-02-18 Patrick Eriksson * arts-2-1-507 * doc/uguide/rte_basics.tex: Revised. 2013-02-15 Oliver Lemke * arts-2-1-506 * src/check_input.cc (chk_atm_field): Increase epsilon by factor of 2 to account errors propagating from weigths in interpolation. Might still be too low for some cases. 2013-02-14 Oliver Lemke * arts-2-1-505 * src/parser.{cc,h}: Reindent before upcoming changes. 2013-02-13 Stefan Buehler * arts-2-1-504 * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Improved runtime error message. Now give tag name if there is an interpolation error. 2013-02-13 Oliver Lemke * arts-2-1-503 * src/m_abs.cc (WriteMolTau): Use a Tensor4 instead of a plain C array for tau. Static arrays are limited by the stack size and we can easily break that barrier leading to a segfault. Fixes bug reported by Xingjuan Wang. Also fix the loop variables over stokes_dim. 2013-02-12 Patrick Eriksson * arts-2-1-502 * doc/uguide/rte_basics.tex: Completed a first version of the chapter (with tentative WSV names). 2013-02-12 Patrick Eriksson * arts-2-1-501 * doc/uguide/rte.tex: Section on Stokes vector moved to rte_basics.tex. * doc/uguide/CMakeLists.txt: Added file below. * doc/uguide/rte_basics.tex: New chapter. Just started. * doc/uguide/arts_user.tex: Intrododuced parts. The sections rearranged to obtain an OK part structure. And included the new chapter above. 2013-02-12 Patrick Eriksson * arts-2-1-500 * controlfiles/artscomponents/wfuns/TestWfuns.arts: Added a comment. * src/methods.cc: Corrected and improved text for jacobianAddWind. For jacobianAddTemperature, changed default for hse to "on" as this option now works also for "analytical". And changed default for "dt" to 0.1. * src/workspace.cc: Removed rte_do_t and rte_do_vmr_jacs. Obselete since looong ago. 2013-02-11 Oliver Lemke * arts-2-1-499 * src/disort.cc (dtauc_ssalbCalc): Remove dodgy if statement. 2013-02-11 Oliver Lemke * arts-2-1-498 * Add support for testcases that depend on arts-xml-data. cmake will look for a-x-d in the same path as the arts source or at a custom location specified by the user with: cmake -DARTS_XML_DATA_PATH=/home/myname/arts-xml-data .. If a-x-d is not found, tests depending on it will not be run. Look at the bottom of controlfiles/CMakeLists.txt for an example on how to define testcases that need a-x-d. * CMakeLists.txt: Add support for ARTS_XML_DATA_PATH. * cmake/modules/ArtsTestcases.cmake: Add -D option to arts call if arts-xml-data path is defined. * controlfiles/CMakeLists.txt: Add example for a-x-d dependency. * README: Updated with info about ARTS_XML_DATA_PATH. 2013-02-11 Oliver Lemke * arts-2-1-497 * src/file.cc (file_exists): Was falsely returning true if the given file was a directory. Led to a segfault if controlfile contained e.g. INCLUDE "general" 2013-02-09 Oliver Lemke * arts-2-1-496 * src/continua.cc (CKD_mt_100_self_h2o, CKD_mt_100_foreign_h2o, CKD_mt_co2, CKD_mt_co2, CKD_mt_CIAfun_o2): Use Vector instead of Numeric C-style arrays. O2-CIAfunCKDMT100 was suffering from the same indexing bug as N2-CIAfunCKDMT100, leading to a negative peak right at the upper end of the valid range of the continua. 2013-02-07 Patrick Eriksson * arts-2-1-495 * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: Changed as cfile below. * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Last commit gave error for this test, on Hudson. I also tried three different platform/compiler combinations and got three different results! (though one looked to match Hudson). My only conclusion is that compiler differences give slightly different link paths, which cause significant errors for the estimation of defocusing. The bending angle sensitivity to the compiler differences seems to be below 1e-4 deg, but this is not sufficient! Now changed to a shorter ray tracing length. And using second defocus method (that appears to be more stable). Relative difference for defocus between compilers seems to be about 0.5% with these settings. High to be just a compiler issue, but OK. * src/methods.cc (iyRadioLink): Changed default for defocus_shift to 1e-3. Old value too low considering the problems discussed above. 2013-02-07 Patrick Eriksson * arts-2-1-494 * controlfiles/artscomponents/faraday/test_faraday.m: A small file for further testing of the obtained rotation. The result was found to deviate with less than 0.002 deg to the calculation done in this file. * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Sharpened the compare accuracy for the rotation part. * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: Revised, comparsion added, and included as a slow check. * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Changed settings somewhat and activated comparison to references. 2013-02-07 Oliver Lemke * arts-2-1-493 * src/methods.cc, src/m_doit.cc (doit_i_fieldUpdateSeq1D), src/doit.{h,cc} (doit_scat_fieldNormalize): Temporarily add a debug flag that can be set to 1 to always output the max. DOIT normalization factor for the current iteration to out0 instead of out2. 2013-02-07 Oliver Lemke * arts-2-1-492 * src/m_general.{cc,h} (Print): Implement Print for ArrayOfCIARecord. Same output format as CIAInfo. * src/m_cia.cc (CIAInfo): Use new Print() for output. 2013-02-07 Oliver Lemke * arts-2-1-491 * src/m_cia.cc (abs_cia_dataReadFromCIA): Check both combinations for the two CIA species when looking for input files (e.g. Ar-CH4.cia and CH4-Ar.cia). 2013-02-07 Stefan Buehler * arts-2-1-490 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag(String def)): Fixed runtime error message when second species is unknown. * src/species_data.cc: Added species Ar, which is needed for HITRAN CIA continua. * src/partition_function_data.cc: Added species Ar, which is needed for HITRAN CIA continua. 2013-02-06 Oliver Lemke * arts-2-1-489 * Bug fixed in N2-CIAfunCKDMT100 continuum reported by Josef Gasteiger. This indexing bug caused wrong values of different magnitude depending on frequency range, operating system and compiler version. * src/continua.cc: (XINT_FUN): Add second implementation that takes a ConstVectorView as input. (CKD_mt_CIArot_n2): Replace C-type Numeric arrays with Vectors to enable boundary checks. (CKD_mt_CIAfun_n2): Replace C-type Numeric arrays with Vectors to enable boundary checks. Fix array-index-out-of-bounds access by extending the size of the coefficient array k by one 0-value. * Bounds-checking for the other continua will be added next to see if any of them are affected by similar bugs. 2013-02-06 Patrick Eriksson * arts-2-1-488 * doc/uguide/transmission.tex: Chapter revised and updated. Now synced with the source code. * doc/uguide/CMakeLists.txt: transmission.tex was not included. * controlfiles/artscomponents/faraday/farrot_totalREFERENCE.xml: Converted data from rad to deg. * doc/uguide/faraday.tex (section{Practical usage}): Units updated, follwoing the changes below. * src/m_transmitter.cc (iyTransmissionStandard, iyRadioLink): Changed output unit for Faraday rotation variables fro rad to deg. This to be consistent with the fact that degrees is used elsewhere for input and output angles. That is, we are not using the SI unit for angles (but better being consistent, than partly doing this) !!! * src/rte.cc (get_ppath_trans): Fixed bad spelling in header text. * src/methods.cc: Wrote on-line doc for iyRadioLink. Updated text for ppathFromRtePos2. 2013-02-05 Patrick Eriksson * arts-2-1-487 * src/rte.cc (defocusing_general_sub): Now also returning radiative background. (defocusing_general): Now also handling the case if the lower of the calculations hits the ground. * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: Adopted to change below. * src/m_transmitter.cc (iyRadioLink): Now "method 1" is the more general defocus algorithm. Realised that size of some aux vars could be made even more compact. Also started to write documentation in methods.cc. 2013-02-04 Patrick Eriksson * arts-2-1-486 * src/rte.cc (defocusing_general): Now taking dza from calling function (before hard-coded). (defocusing_sat2sat): As above + fixed error in calculation (impact paramater was mixed up with geometrical ztan) + now not crashes if any of the two extra calculations hits the surface. * src/m_transmitter.cc (iyRadioLink): Made angular shift to use for defoc-calculations a method input. 2013-02-04 Oliver Lemke * arts-2-1-485 * src/xml_io_array_types.cc, src/xml_io_compound_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Implement XML reading/writing of CIARecord and ArrayOfCIARecord. * src/methods.cc, src/m_cia.cc: Add abs_cia_dataReadFromXML. Reads CIA data from XML file and checks that all CIA species from abs_species are defined in that file. * src/cia.h (CIARecord): Change runtime errors to assertions in getters. Add getter for const reference to mdata. Be friend with xml_read_from_stream. 2013-02-01 Patrick Eriksson * arts-2-1-484 * src/m_ppath.cc (ppathFromRtePos2): Fixed and tuned the criterion for determining that a ground-intersection is found (there was a sign error in the logical expression). 2013-02-01 Stefan Buehler * arts-2-1-483 * src/species_data.cc (H): Added missing species H, needed for CIA continua. * src/partition_function_data.cc (H): Ditto. 2013-02-01 Jana Mendrok * arts-2-1-482 * controlfiles/artscomponents/arts-xml-data/TestSurf_Mars.arts: Added. Data testing controlfile for Mars surface data. * controlfiles/artscomponents/arts-xml-data/TestSurf_[Earth,Venus].arts: Cosmetics. 2013-01-30 Jana Mendrok * arts-2-1-481 * controlfiles/artscomponents/arts-xml-data/TestSurf_Venus.arts: Added. Data testing controlfile for Venus surface data. * controlfiles/artscomponents/arts-xml-data/TestSurf_Earth.arts: Polished that one (testing of Earth surface characterization data) a little. 2013-01-30 Oliver Lemke * arts-2-1-480 * src/m_atmosphere.cc (GriddedFieldLatLonRegrid): Fix copy/paste error in loop for GriddedField4. 2013-01-30 Patrick Eriksson * arts-2-1-479 * src/ppath.cc (ppath_start_stepping): Made a small change that should allow the sensor longitude and lon_grid to have different lon-ranges. For example, a lon_grid between -100 and 0 and a sensor longitude of 310 should now work. Before it was a bit random if such cases were OK or not, as pointed out by Jana. (Not heavily tested, I leave this to Jana!) 2013-01-30 Patrick Eriksson * arts-2-1-478 * controlfiles/general/planet_earth.arts: * controlfiles/general/planet_venus.arts: * controlfiles/general/planet_mars.arts: * controlfiles/general/planet_jupiter.arts: g0_agenda now defined locally. * controlfiles/general/agendas.arts: Removed all definitions of g0_agenda-s. This to make the planet files totally independent of this file. 2013-01-30 Patrick Eriksson * arts-2-1-477 * src/ppath.cc (do_gridcell_3d_byltest): My fix yesterday was not OK. The call of resolve_lon now made at an earler stage. 2013-01-30 Oliver Lemke * arts-2-1-476 * src/logic.{cc,h} (is_lon_cylic): New function to check for a cyclic longitude grid. * src/interpolation_poly.cc: Use new is_lon_cyclic. * src/m_atmosphere.cc (GriddedFieldLatLonRegrid): Check that data values at 0 and 360 degrees agree in cyclic lon grids. 2013-01-29 Stefan Buehler * arts-2-1-475 * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Throw runtime error if VMR of second species in CIA collision pair does not exist. (Instead of simply crashing.) 2013-01-29 Patrick Eriksson * arts-2-1-474 * src/ppath.cc (do_gridcell_3d_byltest): The last point of the steps was not passed through resolve_lon. (Jana, the case you sent now runs OK.) 2013-01-29 Jana Mendrok * arts-2-1-473 * src/m_atmosphere.cc (z_fieldFromHSE): Downgraded missing-H2O-error to a warning (when no H2O tag setting h2o_vmr=0. of course.). Deviations between including and excluding H2O in tropical atmo are <30m for z<100km and <50m for z<1500km (so, H2O not that relevant at all :-O ). * src/[m_basic_types,methods].cc (Compare): Added Tensor3 capability. 2013-01-29 Oliver Lemke * arts-2-1-472 * src/interpolation_poly.cc (gridpos_poly_longitudinal): Add missing call to chk_interpolation_grids for the case when the lons don't have to be shifted. Fixes bug reported by Jana. 2013-01-29 Jana Mendrok * arts-2-1-471 * controlfiles/artscomponents/arts-xml-data/*.arts: Added. Controlfiles for testing the data (format, functionality on rather crude level, ...). Currently restricted to data added for the planetary toolbox. For the moment includes tests of basic and suppl. atm fields data for all 4 planets, surface fields for earth; more to come). Currently not part of a check target (but shall become, once a target for cases applying arts-xml-data package is created - Oliver!?!) * controlfiles/general/agendas_surface.arts: Another predefined surface agenda added (lambertian refl. with surface_skin_t from t_field). * src/[methods,workspace].cc: some spellfixes. 2013-01-28 Patrick Eriksson * arts-2-1-470 * src/m_transmitter.cc (iyRadioLink): The setting of iy_aux for "fatal" cases did not work. * src/rte.cc (iyb_calc): More stringent check of iy_aux_array. 2013-01-28 Patrick Eriksson * arts-2-1-469 * controlfiles/general/agendas.arts: Adopted definition of ppath_agenda__TransmitterReceiverPath. * src/m_ppath.cc (ppathFromRtePos2): Now switched to use new version of the method. (Old version deleted) * src/m_transmitter.cc (iyRadioLink): Now also accepting "unvalid" ppaths. This gives iy=NaN. * src/ppath.cc (ppath_set_background,ppath_what_background): Defined string for case 0 to be "unvalid" (before just ""). * src/lin_alg.cc: Added type casting where dividing with an integer number. 2013-01-27 Patrick Eriksson * arts-2-1-468 * src/m_ppath.cc (ppathFromRtePos2V2): Work in progress ... * controlfiles/artscomponents/doit/TestDOIT.arts: Adopted call of doit_i_fieldUpdateSeq1D. * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: Adopted call of iyRadioLink. * controlfiles/general/general.arts: ppath_lraytarce now set (to 1 km). * src/rte.cc (defocusing_general_sub, defocusing_general) (defocusing_sat2sat): * src/m_montecarlo.cc (MCGeneral): * src/montecarlo.cc (mcPathTraceGeneral): * src/m_transmitter.cc (iyRadioLink, iyTransmissionStandard): * src/m_rte.cc (iyEmissionStandard, iyMC): * src/m_doit.cc (doit_i_fieldUpdate1D, doit_i_fieldUpdateSeq1D) (doit_i_fieldUpdateSeq3D): * src/m_cloudradar.cc (iyCloudRadar): * src/doit.cc (cloud_ppath_update1D, cloud_ppath_update1D_noseq) (cloud_ppath_update3D): * src/m_ppath.cc: * src/ppath.cc (ppath_calc): Adopted calls of ppath_agenda and ppath_step agenda. Had to add ppath_lraytrace as input to most of the functions. * src/agendas.cc: Added ppath_lraytrace as input to ppath_agenda and ppath_step agenda, to allow algorithms to adjust this variable. * src/lin_alg.cc (linreg): Made a bit more robust regarding numerical problems, by instead making fit for x' = (x-mean(x)). * src/m_transmitter.cc (iyRadioLink): Impact parameter now set through ppath.constant. Now also handling the case of surface intersections (iy retiunred as 0 and iy_aux empty). * doc/uguide/ppath.tex: Improved description of ppath.constant, and fixed dead section reference. 2013-01-25 Patrick Eriksson * arts-2-1-468 * src/lin_alg.cc (linreg): Created. 2013-01-25 Patrick Eriksson * arts-2-1-467 * src/m_ppath.cc (ppathFromRtePos2V2): Trying to make a better version of the method. Not yet reached the critical part. 2013-01-24 Patrick Eriksson * arts-2-1-466 * src/m_transmitter.cc (iyRadioLink): Added impact parameter as aux variable. 2013-01-24 Oliver Lemke * arts-2-1-465 * src/m_atmosphere.cc (AtmRawRead): Bug fix. Resize vmr_field_raw to 0 before starting to append to it. * src/cia.cc (CIARecord::AppendDataset): Fix temperature grid index. 2013-01-22 Jana Mendrok * arts-2-1-464 * src/check_input.cc (chk_atm_field, chk_atm_surface): Replaced all checks for fabs(a-b)>0 (in checking constancy at poles and cyclicity at longitudes) by is_same_within_epsilon(a,b,2*DBL_EPSILON) to avoid number accuracy issues. * src/logic.cc (is_same_within_epsilon): Minor bug fix (correct handling of negative numbers) * src/methods.cc,workspace.cc: Cosmetics. * src/m_atmosphere.cc (basics_checkedCalc): Cosmetics. 2013-01-21 Stefan Buehler * arts-2-1-463 * src/cia.{h,cc}: Introduced robust option for CIA extraction. If set to 1, then being outside the temperature range of the data will not give a runtime error, only return NAN. The default is 0, which means that there will be a runtime error. * src/m_cia.cc: Ditto. * src/test_cia.cc: Adapted to robust option. * src/methods.cc (abs_xsec_per_speciesAddCIA): Added the robust option. * src/m_basic_types.h (nelemGet): Implemented for group ArrayOfArrayOfSpeciesTag. 2013-01-21 Stefan Buehler * arts-2-1-462 * src/cia.cc (cia_interpolation): Fixed (last?) bug. Validation ongoing. * src/matpackI.cc (VectorView::operator MatrixView): Cosmetic changes to my fix from last Friday. (ConstVectorView::operator ConstMatrixView): Ditto. * src/test_matpack.cc (test42): Expanded the test. 2013-01-21 Oliver Lemke * arts-2-1-461 * src/test_cia.cc: Fix compile error. 2013-01-20 Patrick Eriksson * arts-2-1-460 * controlfiles/artscomponents/clearsky/TestClearSky2.arts: Corrected header text. Last ChangeLog message for this file is wrong. This file tests particularly ySimpleSpectrometer. 2013-01-18 Stefan Buehler * arts-2-1-459 * src/cia.{h,cc}: Debugging. But the CIA data as read from the HITRAN files right now seem strange: Mostly negative values! Perhaps still a bug in the reading routine? * src/m_cia.cc: Cosmetics. * src/matpackI.cc (VectorView::operator MatrixView): This function contained a bug that was triggered in the case that the original VectorView had a non-zero start. Fixed now. (ConstVectorView::operator ConstMatrixView): Ditto. * src/test_matpack.cc (test42): Test the matpack bugfixes. * controlfiles/artscomponents/cia/TestCIA.arts: Work in progress. 2013-01-18 Oliver Lemke * arts-2-1-458 * src/cia.cc (CIARecord::ReadFromCIA): Reuse istringstream. Better input error checking. * src/methods.cc: Update docs for CIAInfo. 2013-01-18 Oliver Lemke * arts-2-1-457 * src/cia.{h,cc}: (CIARecord::ReadFromCIA): Fix bug in parsing. (DatasetCount, TemperatureGrid, FrequencyGrid, Dataset): New members for CIARecord to access the datasets. * src/m_cia, src/methods.cc: Add CIAInfo. Remove abs_cia_dataInit. 2013-01-18 Stefan Buehler * arts-2-1-456 * src/gas_abs_lookup.cc (Extract): Implemented feature requested by Jana: Throw a runtime error if one of the reference VMR profiles is zero, but abs_vmrs is not. (This means that the lookup table was calculated with a reference profile of zero for that gas.) Not yet tested, since I don't have a suitable test case. 2013-01-18 Oliver Lemke * arts-2-1-455 * src/abs_species_tags.{h,cc} (SpeciesTag): mcia -> mcia_second, Cia() -> CIASecond, CiaDataset -> CIADataset * src/cia.{h,cc} (cia_get_index): Helper to find index in CIA data. (Extract): Add parameter dataset index. Use index instead of loop. * src/m_cia (abs_xsec_per_speciesAddCIA, abs_cia_dataReadFromCIA): Adapt for changed type of abs_cia_data. * src/nc_io_types.h, src/xml_io_instantiation.h, src/xml_io_types.h, src/workspace.cc, src/nc_io_array_types.cc, src/xml_io_array_types.cc, src/groups.cc: Change type of abs_cia_data to ArrayOfCIARecord. Remove ArrayOfArrayOfCIARecord as a group and add ArrayOfCIARecord instead. 2013-01-18 Patrick Eriksson * arts-2-1-454 * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: Missed to do svn add on the file. * src/m_ppath.cc (ppathFromRtePos2): Init ip to dummy value of -999, to avoid compiler warning. And changed defualt for dl_ok to 0.5. Seems to cover the worst case for TestRadioOccultation.arts (tried 500 angles). 2013-01-17 Patrick Eriksson * arts-2-1-453 * controlfiles/artscomponents/radiolink/TestRadioOccultation.arts: A control file simulating a complete occultation. * src/m_ppath.cc (ppathFromRtePos2): The method now operates with a target and OK level for the "miss distance". This to allow for aimimg at a high acccuracy but not getting an error directly when that accuracy can not be achived. To achieve this, variables and code added so that the previous ppath can be selected as the solution. * src/methods.cc: Some further polishing of the text for Append. * src/m_ppath.cc (TangentPointPrint): Extended the output somewhat. 2013-01-17 Stefan Buehler * arts-2-1-452 * src/abs_species_tags.{h,cc} (SpeciesTag::CiaDataset): Added this function (and associated private member) to store the index of the dataset to use (inside the CIA file), which is also now appended at the end of the CIA species tag. (SpeciesTag::SpeciesTag): Parse also the new dataset index at the end of the CIA tag. It must be present! (SpeciesTag::Name): Fixed broken CIA tag name output. Not testet! * src/cia.{h,cc} (cia_interpolation): Continued to work on this. * src/m_cia.cc: Cosmetics. * controlfiles/artscomponents/cia/TestCIA.arts: Updated for new CIA tag names with dataset index. 2013-01-17 Richard Larsson * arts-2-1-451 * licenses/*: Added various license agreements to this folder so that it is clear what code is reusable with ARTS. * src/lineshapes.cc: Added Algorithm 916 (see code for details) to calculate the Faddeeva function. The Faddeeva function offers a solution to both the Voigt and Faraday-Voigt lineshapes. The current implementation is very slow, as it calculates the line shapes twice even though one calculation is mathematically sufficient. I suggest a complex_xsec function returning two vectors in a future update instead of returning the real and complex values as separate line shapes. The line shapes were tested within the limit of the Zeeman model paper and deemed OK. * src/Faddeeva.{cc,hh}: Added. The bulk of the new line shape code is in here. These files fall under the MIT/X11 licence. More in the files. * src/CMakeLists.txt: Faddeeva should be in list in list. * src/workspace.cc: Added a phase lineshape variable. * src/methods.cc: Require another lineshape variable for m_zeeman.cc. * src/m_zeeman.cc: Split phase from attenuatiion polararization matrices. Requires another line shape without caring which type, though for physical reason this line shape should be Faraday-Voigt. * controlfiles/artscomponents/zeeman/*: Changed necessary bits to work since a new line shape changes results. Change in reference is on order of 0.02 K. 2013-01-17 Oliver Lemke * arts-2-1-450 * src/m_append.h, src/methods.cc (Append): Clarify built-in docs and add support for appending Vectors row- or column-wise to Matrices. 2013-01-17 Oliver Lemke * arts-2-1-449 * ChangeLog: Part of a sentence got lost. 2013-01-17 Oliver Lemke * arts-2-1-448 * src/doit.{cc,h} (doit_scat_fieldNormalize): New function to scale doit_scat_field with correction factor derived from difference between scattered field and scattered extinction field. * src/methods.cc, src/m_doit.cc (doit_i_fieldUpdateSeq1D): Add parameters scat_aa_grid, normalize and norm_error_threshold. Make doit_scat_field input and output. Call doit_scat_fieldNormalize if turned on. (doit_i_fieldUpdate1D, doit_i_fieldUpdateSeq1DPP): Set doit_i_field also as input. * src/doit.{cc,h} (doit_scat_fieldNormalize): Add new function for calculate the scattered extinction field and apply correction factor to doit_scat_field. * controlfiles/artscomponents/doit/TestDOIT.arts: Turn on new normalization in doit_i_fieldUpdateSeq1D. * controlfiles/general/agendasDOIT.arts: Add comment with example code to turn on new normalization in DOIT. * src/workspace.cc: Fix typo. * README: Add missing =1. 2013-01-16 Stefan Buehler * arts-2-1-447 * src/cia.{h,cc} (CIARecord::Species): Added this function, which returns the contents of mspecies. (CIARecord::Extract): Started on implementation of this, but realized that guessing the right dataset is too difficult, we have to make this a user choice. (CIARecord::ReadFromCIA): Now converts the binary absorption cross-sections to ARTS SI units. * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Implemented this. (abs_cia_dataReadFromCIA): To decide whether this is a CIA species, Use SpeciesTag.Type() function instead of SpeciesTag.Cia() * src/methods.cc (abs_cia_dataReadFromCIA): Added built-in documentation on units. * src/workspace.cc (abs_cia_data): Revised built-in documentation. 2013-01-15 Stefan Buehler * arts-2-1-446 * src/abs_species_tags.{h,cc} (SpeciesTag): Removed member mzeeman, instead added member mtype, which can be TYPE_PLAIN, TYPE_ZEEMAN, TYPE_PREDEF, TYPE_CIA. Added also public member function Type() for this and removed public member function Zeeman(). Adapted member functions to this change. (is_zeeman): Added this function for ArrayOfSpeciesTag, which can be used if a tag group is a Zeeman group. This has to be checked for the whole group, not just for the first tag, since the Zeeman tags could be in the middle. They could be mixed with continuum tags (but not with normal line-by-line tags.) * src/absorption.cc: Cosmetics. * src/m_abs.cc (abs_xsec_per_speciesAddLines): Adapted to new is_zeeman function. (abs_xsec_per_speciesAddConts): Adapted to new SpeciesTag::Type() function. * src/m_abs_lookup.cc (abs_lookupCalc): Adapted to new is_zeeman function. * src/m_zeeman.cc (abs_mat_per_speciesAddZeeman): Adapted to new is_zeeman function. * controlfiles/artscomponents/cia: Added. For CIA testing. * controlfiles/artscomponents/cia/TestCIA.arts: Added. * controlfiles/artscomponents/cia/README.txt: Added. 2013-01-15 Jana Mendrok * arts-2-1-445 * src/partition_function_data.cc: Replaced infunctional data: O and He were constant -1, which triggers a runtime error. CH3OH was constant 0, which would have caused an uncaught bug (division by 0) if ever used. For CH3OH and O TIPS provides constant 0, which is rubbish. Replaced those by JPL data instead. He set to constant 1. * src/absorption.h (CalculatePartitionFctRatio): Make sure qtemp==0 throws a runtime error, too, avoiding div0. * 3rdparty/partFct/partition_functions.py: Added functionality for deriving partition function coefficients from JPL for CH3OH and O. 2013-01-11 Patrick Eriksson * arts-2-1-444 * src/m_transmitter.cc (iyTransmissionStandard): As below. * src/m_rte.cc (iyEmissionStandard): Added else{ assert(0); }, for extra safety and to avoid warning regarding dkdx1/2. 2013-01-11 Oliver Lemke * arts-2-1-443 * src/cia.{cc,h}: (CIARecord::ReadFromCIA): Implemented. (CIARecord::AppendDataset): Added private helper function. (CIARecord::MoleculeName, CIARecord::SetMoleculeName, CIARecord::Extract): Renamed. * src/m_cia.cc (abs_cia_dataReadFromCIA): Renamed. Removed output. * src/methods.cc: Renamed abs_cia_dataReadFromCIA. * src/cia.cc, src/cia.h, src/groups.cc, src/m_cia.cc, src/nc_io_array_types.cc, src/nc_io_types.h, src/workspace.cc, src/xml_io_array_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: CiaRecord -> CIARecord. 2013-01-11 Stefan Buehler * arts-2-1-442 * src/abs_species_tags.{h,cc} (species_name_from_species_index): Added this new helper function. * src/m_cia.cc (abs_xsec_per_speciesAddCIA): Added stubb for this method. * src/make_auto_md_h.cc: Cosmetics. * src/make_auto_workspace_h.cc: Cosmetics. * src/methods.cc (abs_xsec_per_speciesAddCIA): Added. (abs_xsec_per_speciesAddConts): Added missing abs_xsec_per_species in input list. (abs_xsec_per_speciesAddLines): Added missing abs_xsec_per_species in input list. * src/cia.{h,cc}: More members for CiaRecord: get_molecule_name, set_molecule_name. * src/CMakeLists.txt: Added m_cia.cc to target test_cia. * src/workspace.cc (abs_cia_data): More extensive built-in documentation. 2013-01-10 Jana Mendrok * arts-2-1-441 * src/species_data.cc: Updated HC3N data with latest HITRAN info. 2013-01-10 Jana Mendrok * arts-2-1-440 * doc/uguide/absorption.tex: Added a subsection on absorption lookup table format. * src/methods.cc,workspace.cc: Improved documentation around abs_coef and abs_mat_field. * controlfiles/planetary_toolbox/validation/common/spectroscopy/ SpecCat_Consistency_Perrin-vs-HITRAN.arts: Improved spectroscopy-consistency validation case. 2013-01-10 Oliver Lemke * arts-2-1-439 * Intermediate commit of work in progress. * src/cia.{h,cc}, src/test_cia.{cc}: Add dummy output operator for CiaRecord. typedef for ArrayOfArrayOfCiaRecord. cia_record -> CiaRecord. Fix doxygen macros. (CiaRecord::ReadFromCia, SetSpecies): Added. Rename member variables for to mspecies and mdata. * src/file.{cc,h} (list_directory): Add function to get a list of files in directory. * src/methods.cc: Add abs_cia_dataInit and abs_cia_dataReadFromCia. * src/groups.cc: Add ArrayOfArrayOfCiaRecord. * src/make_auto_md_h.cc, src/make_auto_workspace_h.cc: Include cia.h in generated code. * src/workspace.cc: Add WSV abs_cia_data. * src/src/abs_species_tags.{cc,h}: Add mcia member to SpeciesTag. (SpeciesTag::SpeciesTag): Parse CIA tags. * src/m_cia.cc: New file. * src/nc_io_array_types.cc, src/nc_io_types.h, src/xml_io_array_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Add ArrayOfArrayOfCiaRecord. No implemententations, just skeleton. * src/CMakeLists.txt: Add cia.cc and m_cia.cc to artscore. 2013-01-10 Jana Mendrok * arts-2-1-438 * controlfiles/planetary_toolbox/PassiveMW.arts: Removed. * controlfiles/planetary_toolbox/includes/[common,jupiter/]*.arts: Added. Folders for collections of functional include controlfiles for the planetary toolbox. Several controlfiles added, documentation still to be done. * controlfiles/planetary_toolbox/validation/[common,passive]/: Added. Structure for validation cases (controlfiles & output(?)). 2013-01-10 Jana Mendrok * arts-2-1-437 * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Set in effect catch for broad_spec_vmr_sum==0 with additional catch of vmr_self==0 simultaneously (that can happen now that we apply zero-padding in AtmFieldsCalc when p_grid exceeds range of all gas profiles of the atm scenario). !!! In the latter case, xsec will be 0 - needs to be confirmed whether this is consistent with the general use of LUT (in general, abscoefs=xsec*vmr are 0 for vmr=0, but xsec are defined to be independent of vmr. that is, with the current solution we could get problems when trying to use this LUT for non-zero vmr) !!! * src/m_abs_lookup.cc (abs_lookupInit): Proper initialization of (empty) abs_lookup. * src/workspace.cc (abs_lookup): Corrected reference to corresponding section in AUG. 2013-01-07 Jana Mendrok * arts-2-1-436 * src/check_input.[cc,h] (chk_atm_vecfield_lat90): Nicer error message when problems at poles. Increased (temporarily?) deviation threshold to 1 per mille. We might need a better lon-regridding routine here (as vector fields do not vary linearily, but sinusoidal), but current issues anyway seem to already be in the original data (AI JM: check that data!). * src/m_atmosphere.cc (basics_checkedCalc): minor layout fix. 2013-01-03 Stefan Buehler * arts-2-1-435 * src/test_cia.cc (test01): Some basic testing of the interpolation. Seems to work fine. * src/cia.{h,cc}: Debugging. 2013-01-02 Stefan Buehler * arts-2-1-434 * src/cia.{h,cc}: First draft of CIA data interpolation. Not yet tested at all. Should next be tested in test_cia.cc. 2012-12-23 Patrick Eriksson * arts-2-1-433 * doc/uguide/transmission.tex: Fixed a typo. 2012-12-23 Patrick Eriksson * arts-2-1-432 * controlfiles/artscomponents/clearsky/TestClearSky2.arts: New test, mainly to test iyReplaceFromAux. Added as a slow one. * src/m_sensor.cc (ySimpleSpectrometer): New. * doc/uguide/transmission.tex: Added reference to iyReplaceFromAux. * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: iyReplaceFromAux now used. * src/m_rte.cc (iyReplaceFromAux): New. 2012-12-22 Patrick Eriksson * arts-2-1-431 * doc/uguide/surface.tex: Some editing to incorporate a sub-section moved to this chapter. This removed one of the existing FIXME. * doc/uguide/wfuns.tex: A smaller extension of polyfit section. Added section on sinefit. 2012-12-20 Patrick Eriksson * arts-2-1-430 * src/m_jacobian.cc: (jacobianCalcPointingZaInterp): Added check that length of mblock_za_grid allows an interpolation. * src/constants.cc: Removed FREQUENCY_SUBTAG_A and FREQUENCY_CALCMODE_A, not used anymore. 2012-12-19 Patrick Eriksson * arts-2-1-429 * controlfiles/artscomponents/wfuns/TestWfuns.arts: Added a call of jacobianAddWind. * src/m_transmitter.cc (iyTransmissionStandard): Added handling of wind jacobians. * src/m_rte.cc (iyEmissionStandard): Added handling of wind jacobians. No detailed test performed yet.q * src/jacobian.cc (get_pointers_for_analytical_jacobians): Extended to cover winds. * src/m_jacobian.cc (jacobianAddWind) (jacobianCalcWindAnalytical): New WSMs. 2012-12-19 Patrick Eriksson * arts-2-1-428 * doc/uguide/wfuns.tex: Some small fixes. Updated frequency section. * controlfiles/artscomponents/wfuns/TestWfuns.arts: Switched to use new WSMs for frequency. * controlfiles/artscomponents/groundbased/TestGbased.arts: Removed all WF calculations. Now covered by Wfuns case. * src/m_jacobian.cc (jacobianAddFreqShiftAndStretch) (jacobianCalcFreqShiftAndStretchInterp): Replaced by methods listed below. (jacobianCalcFreqShift, jacobianAddFreqStretch) (jacobianCalcFreqStretch, jacobianAddFreqShift): New WSMs. 2012-12-18 Patrick Eriksson * arts-2-1-427 * src/montecarlo.cc (cloudy_rt_vars_at_gp, clear_rt_vars_at_gp): * src/m_abs_lookup.cc (abs_mat_fieldCalc): * src/doit.cc (cloud_RT_no_background) (cloud_ppath_update1D_planeparallel): * src/disort.cc (dtauc_ssalbCalc): rte_mag now set to [0 0 0] * src/m_zeeman.cc (abs_mat_per_speciesAddZeeman): Option rte_mag=[-1] removed. Instead, the case of rte_mag=[0 0 0] catched. Built-in doc changed accordingly. 2012-12-18 Patrick Eriksson * arts-2-1-426 * controlfiles/artscomponents/wfuns/TestWfuns.arts: Now also testing sine fit. * src/m_jacobian.cc (jacobianAddPolyfit): sensor_response_f_grid no longer input argument (only used in a removed check). (jacobianInit): Now setting jacobian_indices to be empty. Before jacobian_indeces did not match the other variables if jacobianInit was called several times. (jacobianCalcSinefit): (jacobianAddSinefit): Added these WSMs, introducing sinusoidal baseline fits. 2012-12-18 Patrick Eriksson * arts-2-1-425 * controlfiles/artscomponents/groundbased/yREFERENCE.xml: Forgot to do svn-add on this file. 2012-12-18 Patrick Eriksson * arts-2-1-424 * Revison and extension of wind RT part. * doc/uguide/winds.tex A clean-up and update of this section. Including comments around planet rotation and dotprod_with_los. * controlfiles/artscomponents/groundbased/TestWinds.arts: Settings changed, and reference data added and used. * src/rte.cc (get_ppath_abs): Wind part updated. Main calculation now done by the general function dotprod_with_los. * src/m_atmosphere.cc (wind_u_fieldIncludePlanetRotation): New WSM. * controlfiles/general/planet_jupiter.arts: * controlfiles/general/planet_venus.arts: * controlfiles/general/planet_mars.arts: * controlfiles/general/planet_earth.arts: planet_rotation_period now defined. * src/workspace.cc: Updated text for wind variables. And introduced planet_rotation_period. 2012-12-17 Patrick Eriksson * arts-2-1-423 * All around Faraday rotation should now hopefully be in place. The result of the test case checked by integrating(Ne*B) in Matlab. So it looks OK. * controlfiles/artscomponents/faraday/TestFaradayRotation.arts: Changed min pressure, and now using HSE to recreate altitudes for IRI and IGRF, by "incverting" what Jana did. Reference data updated. * controlfiles/testdata/tropical.expanded.t.xml: Changed ionopsheric temperature to 200, to be closer to what Jana used when calculating p for IRI and IGRF. * doc/uguide/cloudradar.tex: Changed status in history from Started to Written. * doc/uguide/transmission.tex: Removed the old Faraday section stub, and some small fixes. Status now set to "Written" * doc/uguide/faraday.tex (chapter{Faraday rotation}): Added some references for additional support, and a comment about that a numerical value on the Wikipedia page on "Faraday effect" is slightly wrong. 2012-12-17 Patrick Eriksson * arts-2-1-422 * controlfiles/testdata: Added a number of 1D files to also cover the ionosphere. Ne and magnetic field extracted from IRI and IGRF. For T and Z just a simple extension of Fascod tropical. Should be replaced with better data. * controlfiles/artscomponents/faraday/: New test case. * src/methods.cc: Added description of Farday aux vars, for iyTransmissionStandard. * doc/uguide/faraday.tex (section{Theory}): Some polishing. * doc/uguide/atmosphere.tex (section{Description of the ionosphere}): Slightly extended. 2012-12-16 Patrick Eriksson * arts-2-1-421 * Not sure if all changes captured below. Anyhow, Faraday rotation now implemented in a general way (only lacking from DOIT and MC). Some documentation is lacking, and test case will be created. * doc/uguide/faraday.tex: A new chapter. * doc/uguide/atmosphere.tex: Wrote a small section on ionospheric variables. Reintroduced a figure, as a new odd page was created. * src/m_rte.cc: Stuff moved to other files, see below. * src/m_cloudradar.cc (iyCloudRadar): Added use_mean_scat_data as input argument, for consistency with other methods. Adopted call of get_ppath_trans2. * src/jacobian.cc: Some (previously local) functions moved here from m_rte. * src/m_transmitter.cc: New file. Placed iyRadioLink, iyTransmissionStandard and iy_transmitterCloudRadar here. (iyTransmissionStandard): Adopted call of get_ppath_trans2, and added hamndling of Faraday rotation aux vars. (iyRadioLink): Adopted call of get_ppath_trans2. (iy_transmitterSinglePol): New WSM. (iy_transmitterMultiplePol): iy_transmitterCloudRadar renamed. * src/rte.cc (get_ppath_trans2): Added handling of Faraday rotation, following get_ppath_trans. 2012-12-14 Patrick Eriksson * arts-2-1-420 * src/m_rte.cc (iyRadioLink): Removed core Faraday code, and adopted call of get_ppath_trans throughout the file. * src/m_cloudradar.cc (iyCloudRadar): Adopted call of get_ppath_trans. * src/rte.cc (get_ppath_trans): Faraday rotation now implemented as part of this function. 2012-12-14 Patrick Eriksson * arts-2-1-419 * src/m_rte.cc: For several functions, adopted call of get_ppath_atmvars. (iyRadioLink): Complete treatment of Faraday rotation (at least correct order of magnitude results). But thinges wil be rearranged to be more general, for incorporation in other WSMs as well. * src/m_cloudradar.cc (iyCloudRadar): Adopted to change below. * src/rte.cc (get_ppath_atmvars): Added treatement of free electrons. 2012-12-14 Oliver Lemke * arts-2-1-418 * src/continua.cc (MPM85O2AbsModel, MPM87O2AbsModel, MPM89O2AbsModel, MPM92O2AbsModel, MPM93O2AbsModel, PWR93O2AbsModel, MPM93_O2_continuum): If vmr for current pressure level is exactly zero, set pxsec also to zero instead of failing with a runtime error. 2012-12-14 Patrick Eriksson * arts-2-1-417 * src/m_rte.cc (iyRadioLink): More work on Faraday rotation. Overall code is in place, but Ne not yet included in the calculation. * src/check_input.cc (chk_rte_pos): Check of rte_pos2 demanded 1D latitudes to be inside +-90. Higher values are needed when working with links to GPS datellites. Limit now set at 180 deg. * src/rte.cc (defocusing_sat2sat): Had to change the way correct usage is checked, as with ionopshere a satellite can be inside the model atmosphere. * src/m_basic_types.cc (Tensor4AddScalar): Created, following the corresponding WSM for Tensor3. 2012-12-13 Patrick Eriksson * arts-2-1-416 * src/m_rte.cc (iyRadioLink): Some more work on Faraday rotation. Mainly to figure out the correct combination of basic constants (e, m, c etc.) when using SI units. The factor 2.34e4 given in several places, is now calculated from fundamental constants. 2012-12-12 Patrick Eriksson * arts-2-1-415 * src/m_rte.cc (iyRadioLink): Started on Faraday rotation. * src/rte.cc (get_ppath_abs): Adopted to below. The [-1] option would never happen. * src/workspace.cc: Changed description if rte_mag, mainly removing the option of [-1]. 2012-12-12 Patrick Eriksson * arts-2-1-414 * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: Adopted, selecting defocusing method 2. * src/m_rte.cc (iyRadioLink): The method considers now also particle extinction, including aux vars. Defocusing method can be selected by the user. * doc/uguide/transmission.tex (subsection{Extra path delay}): Removed the idea about returning dn/c. 2012-12-07 Patrick Eriksson * arts-2-1-413 * doc/uguide/transmission.tex: Fixed types found at a quick reading, and removed obselete parts of the additional defocusing section. 2012-12-07 Patrick Eriksson * arts-2-1-412 * doc/uguide/transmission.tex: More writing (including stuff not yet implemented!). 2012-12-07 Jana Mendrok * arts-2-1-411 * src/m_cloudbox.cc (pnd_fieldExpand1D): Bugfix - lon-dim calc of expanded cloudbox had a typo. Remove cloudbox_checked as input - that didn't deliver any additional security (cloudbox_checkedCalc should anyway be done on the expanded fields again), but required some else unnecessary, messy settings before (e.g. cloudbox_checkedCalc requires basics_checked, which requires z_surface to be set, i.e., requires to set 1D z_surface and update/change to 2/3D later on.) * src/methods.cc: Adapted pnd_fieldExpand1D according to above. Additional minor fixes (cross-links, ...) on doc in a number of methods. 2012-12-07 Patrick Eriksson * arts-2-1-410 * doc/uguide/transmission.tex: A first complete version of 14.2.2-4 written. 2012-12-04 Patrick Eriksson * arts-2-1-409 * doc/uguide/transmission.tex: Some more writing ... 2012-12-04 Patrick Eriksson * arts-2-1-408 * Attacked some compiler warnings. (Don't know how to handle the one appearing in m_cloudbox.cc.) * src/m_surface.cc (surfaceFlatReflectivity): Removed input rte_los, as now not used. (surfaceFlatScalarReflectivity): As above. * src/m_sensor.cc (sensor_checkedCalc): sensor_response_za was used where it should be sensor_response_aa. And antenna_dim was not considered properly when checking sensor_response_aa. * src/m_rte.cc (iyRadioLink): Setting defocusing attenuation to a dummy value (to avoid compilation warning). 2012-12-04 Patrick Eriksson * arts-2-1-407 * doc/uguide/transmission.tex: Started to revise and extend this section. 2012-12-03 Stefan Buehler * arts-2-1-406 * src/cia.{h,cc}: Added. Implementation files for HITRAN-based Collision Induced Absorption (CIA) continua. Only starting on this, please ignore compiler warnings. * src/CMakeLists.txt: Added CIA targets. * src/test_cia.cc: Added. For testing of CIA functions. 2012-12-02 Patrick Eriksson * arts-2-1-405 * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: Added more aux variables. Changed to distance bettween transmitter and reciever to get more defocusing. * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Some cleaning. * src/m_rte.cc (iyRadioLink): Added Free space attenuation. * src/m_ppath.cc (ppathFromRtePos2): Background set to 9. * src/ppath.cc (ppath_set_background): (ppath_what_background): Added "transmiter" with 9 as code. 2012-11-26 Stefan Buehler * arts-2-1-404 * src/m_abs_lookup.cc (abs_lookupCalc): Made this work correctly with artscat4 (fixed bug reported by Jana). Now calls xsec_species directly for the line absorption calculation, instead of through abs_xsec_per_speciesAddLines. * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts: Added a test with lookup table. 2012-11-26 Oliver Lemke * arts-2-1-403 * src/agenda_class.cc (Agenda::execute): Catch std::bad_alloc. This is not perfect, because it only gives us the workspace method where the allocation failed, not the exact function in the code. But better than before without any clues. * src/rte.cc (get_ppath_abs): Add try catch around Tensor5.resize(). As this is large it is prone to fail. By catching the std::bad_alloc exception here, we can give as much information as possible about where the problem is to the user. This should be done in other places where potentially large data is allocated too. * src/doit.cc (cloud_RT_no_background): Tweak comments. 2012-11-26 Patrick Eriksson * arts-2-1-402 * src/ppath.cc (ppath_step_geom_3d): Removed some obsolete code related to tangent points. * src/ppath.cc (raytrace_3d_linear_basic): Call do_gridcell_3d_byltest with lraytrace as start value for length search, to make sure that it safes to take a path step of this length. Before -1 was used, and the length lraytrace was not necessarily probed. 2012-11-24 Patrick Eriksson * arts-2-1-401 * src/ppath.cc (do_gridcell_3d_byltest): resolve_lon was applied too late for final points, that could cause an assert when starting the next step. Code restructured to fix this. 2012-11-24 Oliver Lemke * arts-2-1-400 * src/doit.cc (cloud_RT_no_background): Change averaging between the ppath steps to be consistent with the clearsky part. Previously, averaging between ppath points was done for temperature, pressure and vmrs. Now abs_mat_per_species is calculated on each ppath point and then averaged. Here are the differences between the old way and the new way: TestDOIT: y_0-y_old OK (maximum difference = -0.0505823). y_1-y_old OK (maximum difference = 0.00250382). TestDOITBatch: ybatch[0]-ybatch_old[0] OK (maximum difference = 0.00277304). ybatch[1]-ybatch_old[1] OK (maximum difference = 0.00306167). ybatch[2]-ybatch_old[2] FAIL (maximum difference = -0.0143527). ybatch[3]-ybatch_old[3] OK (maximum difference = 0.00944391). ybatch[4]-ybatch_old[4] OK (maximum difference = -0.00804398). ybatch[5]-ybatch_old[5] FAIL (maximum difference = 0.03268). * controlfiles/artscomponents/doitbatch/TestDOITBatch.ybatch.ref.xml: Updated reference values. * src/m_basic_types.cc (Compare): Don't fail immediately when comparing arrays. Instead, collect all errors and throw an exception at the end. 2012-11-24 Jana Mendrok * arts-2-1-399 * src/m_abs.cc (abs_speciesDefineAllInScenario): Don't add a dot between basename and species if basename ends in '/', i.e. is a directory. (abs_h2oSet): Don't throw an error, but set abs_h2o to [-1], if H2O is not in abs_species (we need abs_h2o only for selected continua. so we should at least be able to make lbl calculations without H2O). (abs_coefCalc,abs_coefCalcSaveMemory): First call abs_xsec_per_speciesAddConts, then abs_xsec_per_speciesAddLines. In case continuum calc throws an error due to missing abs_h2o, we want to avoid having done a heavy lbl calc before. * src/m_abs_lookup.cc (abs_lookupCalc): as for abs_coefCalc (see above). * src/absorption.cc (calc_gamma_and_deltaf_artscat4): - Instead of throwing an error when broad_spec_vmr_sum <0.9, only send a warning to out2 (it's anyway rescaled to vmr=1, hence we don't make big errors) - catch case that broad_spec_vmr_sum==0 (applying gamma_self for full vmr=1). Not in effect yet as after fixing the abs_lookup-wit-artscat4 bug might make it obsolete (though, a catch of possible div0 seems preferable anyways.) * src/m_atmosphere.cc (AtmRawRead): Don't add a dot between basename and name of atmfield if basename ends in '/', i.e. is a directory. * controlfiles/artscomponents/catalogue/TestReadCataloguePerrin.arts: Use abs_speciesDefineAllInScenario (instead of manually setting abs_species) to catch ALL species with line files to test. * controlfiles/artscomponents/clearsky/TestClearSky.arts: Fixed typo. 2012-11-23 Patrick Eriksson * arts-2-1-398 * src/methods.cc: Added missing \n. 2012-11-23 Oliver Lemke * arts-2-1-397 * src/parser.cc (ArtsParser::parse_generic_output): Fix bug reported by Patrick. Wrong logic in if-statement lead to non-existent output variables being automatically created for WSMs with names shorter than 7 chars. * src/m_atmosphere.cc (AtmFieldsCalc): Turn off zeropadding for t_field in 3D case (was already off for 1D). 2012-11-23 Oliver Lemke * arts-2-1-396 * controlfiles/artscomponents/catalogue/TestReadCataloguePerrin.arts: Add simple testcase to read the whole Perrin catalogue. 2012-11-23 Oliver Lemke * arts-2-1-395 * src/absorption.cc (LineRecord::ReadFromArtscat4Stream): Fix for crash when reading catalog files where n and j are missing. 2012-11-22 Patrick Eriksson * arts-2-1-394 * src/ppath.cc (do_gridcell_3d_byltest): Added test also with respect to upper pressure level, for r_v[j]. This after getting an assert also in this direction. The z_field was quite crazy, but still formerly correct. 2012-11-22 Jana Mendrok * arts-2-1-393 * src/m_planets.cc,methods.cc (g0Jupiter, g0Mars, g0Venus): Added. Methods for getting z=0 gravity for other planets. They don't consider ellipsoid shape of the z=0 body (for now they only set a Numeric), but could be added. * src/agendas.cc (iy_cloudbox_agenda, surface_rtprop_agenda): A bit of polishing of the online documentation. * controlfiles/general/planet_[jupiter,mars,venus].arts: Added. Helper-includes corresponding to planet_earth.arts for other planets. Sets a couple of planet-specific constants/parameters. * controlfiles/general/agendas.arts: Added iy_cloudbox_agenda predefinitions, and g0_agenda predefinitions for other planets. Renamed ppath_agenda__PassiveSensorPath to ppath_agenda__FollowSensorLosPath according to Patrick's suggestion. * controlfiles/general/agendasDOIT.arts: replace iy_cloudbox_agenda setting by copied predefined agenda. * controlfiles/[artscomponents,instruments]/*/*.arts: Replaced ppath_agenda__PassiveSensorPath -> ppath_agenda__FollowSensorLosPath. * controlfiles/artscomponents/doit/TestDOIT.arts: Adapted compare-to-reference message to actual reference value used. * controlfiles/general/general.arts: Minor cleaning/re-sorting. 2012-11-22 Patrick Eriksson * arts-2-1-392 * src/ppath.cc (do_gridcell_3d_byltest): Check of r_v[j] when surface inside grid cell was not complete. 2012-11-22 Richard Larsson * arts-2-1-391 * src/m_zeeman.cc: Added different Landé constants, gs, for various molecules to make the frequency shifts closer to measurements (previously only free electron case was resolved, though gs tend toward 2 the 'less free' the electron is from the nuclear angular momentum). * controlfiles/testdata/isoquantum.xml: Should be read together with all AddZeeman since it contains the values above. Changed test-file to make it compatible with this new scheme. * src/absorption.cc: Now reads HITRAN quantum numbers differently for various Zeeman species. NO should be possible to Zeeman split in ARTS as is, whereas OH and ClO still need some work. * src/methods.cc,src/workspace.cc,src/absorption.h: Small changes. 2012-11-22 Oliver Lemke * arts-2-1-390 * doc/uguide/references.bib: Add thayer74_improved_rs. 2012-11-21 Jana Mendrok * arts-2-1-389 * Continued setting up predefined agendas. Removed all AgendaSet and INCLUDE from general.arts - the user is forced now to explicitly set all agendas needed. Adapted Test*.arts accordingly. * controlfiles/general/agendas.arts: Revised completely. Containing agenda predefinitions, no agenda settings(!). * controlfiles/general/agendas_surface.arts: Added. INCLUDE to agendas.arts containing predefinitions for surface_rtprop_agenda. * controlfiles/general/agendas_new.arts: Removed. Now all of this in agenda.arts. * controlfiles/general/general.arts: Removed any INCLUDEs. Removed setting of refr_index_agenda. * controlfiles/general/planet_earth.arts: Some refurbishing. * controlfiles/[artscomponents,instruments]/*/Test*.arts: Adapted to general.arts changes - explicit setting of agendas that previously were set by agenda.arts is now WITHIN the arts controlfiles. * src/m_surface.cc,methods.cc(surfaceLambertianSimple),workspace.cc: Made number of streams in lambertain calculation (formerly: np, now: lambertian_nza) a WSV. 2012-11-21 Jana Mendrok * arts-2-1-388 * doc/uguide/refr_index.tex,rte.tex,ppath.tex: Expanded documentation on refraction and (gas) refractive index. 2012-11-21 Patrick Eriksson * arts-2-1-387 * src/montecarlo.cc (mcPathTraceGeneral): termination_flag was before set even if the other stop criterion (evol_op<=r) had been reached during the path step. This gave an undersampling of points just above the surface. A test case had before an bias of about 0.7 K. This bias is now removed (tested to a precision of 1 sigma= 0.05 K). After this no obvious bias in any of my test calculations :-) 2012-11-20 Patrick Eriksson * arts-2-1-386 * New version mcPathTraceGeneral now activated. That is, MCGeneral now considers ppath_step_agenda, and gives warnings if tau of any path step is higher than 4. In addition, other MC methods moved to mc_NotUSed.cc. These methods could be activated on demand (then to be revised and tested). * src/workspace.cc: mc_z_field_is_1D removed. * src/montecarlo.cc (cum_l_stepCalc,): * src/montecarlo.cc (iwp_cloud_opt_pathCalc): * src/montecarlo.cc (mcPathTraceIPA): * src/m_montecarlo.cc (mc_IWP_cloud_opt_pathCalc): * src/m_montecarlo.cc (MCIPA): * src/m_montecarlo.cc (pha_matExtractManually): All moved to mc_NotUsed. * src/montecarlo.cc (mcPathTraceGeneral): "Test version" has now replaced old version. * controlfiles/artscomponents/montecarlo/ TestMonteCarloGeneralGaussian.arts: * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: ppath_lmax set to 3km (needed to avoid warnings about tau > 4). Setting of mc_z_field_is_1D removed. New reference values: * controlfiles/artscomponents/montecarlo/ TestMonteCarloGeneralGaussian.arts: I: 198.8 -> 198.6 Q: 8.0 -> 7.6 * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: I: 199.1 -> 198.3 Q: 7.6 -> 7.8 * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: I: I: 199.5 -> 199.4 2012-11-20 Patrick Eriksson * arts-2-1-385 * Version number here in ChangeLog was not updated. * controlfiles/artscomponents/montecarlo/ TestMonteCarloGeneralGaussian.arts: A stupid last minute typo! 2012-11-20 Patrick Eriksson * arts-2-1-384 * For documentation purposes, before changing MC, the reference values for the MC tests were checked. For two of the tests, the reference I values were found to be too high, with about 2.5K (precision of test calculations about 0.35K). This change in reference value could have been caused in arts-2-1-347, when the cloudbox was enlarged to cover all non-zero pnd_field. The sign of the change in I is consistent with more particles along the path. But third test had already OK value. Changed without comment here? No time to investigate this further. The changes: * controlfiles/artscomponents/montecarlo/ TestMonteCarloGeneralGaussian.arts: I: 201.0 -> 198.8 Q: 7.6 -> 8.0 * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: I: 201.8 -> 199.1 Q: 7.6 (no change) * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: I: 199.5 K (Not changed, as the significant difference to new calculations. And this quite close to the new values above.) 2012-11-20 Patrick Eriksson * arts-2-1-383 * src/montecarlo.cc (mcPathTraceGeneralTEST): A warning is now given if the optical thickness of the path step exceeeds 4. * src/m_montecarlo.cc (MCGeneral): New rejects the "path trace" if g=0, with a warning to out0. That is, this trace does not contribute to I_sum. 2012-11-18 Patrick Eriksson * arts-2-1-382 * src/m_doit2.cc (CloudboxGetIncoming2): Completed? (code, not documentation) (iyInterpCloudboxField2): Work in progress. 2012-11-17 Patrick Eriksson * arts-2-1-381 * controlfiles/instruments/odinsmr/odin_bchannel.m: * controlfiles/instruments/odinsmr/odin_antenna.m: Two functions to set up Odin-SMR simulations. In contrast to old setup_input.m, these functions are stand-alone (ie. Qsmr not needed). 2012-11-17 Patrick Eriksson * arts-2-1-380 * src/montecarlo.cc (mcPathTraceGeneralTEST): Code cleaned up. Now completely adapted to ppath calculated with lmax. Seems to work, but more tests needed. * src/m_montecarlo.cc (MCGeneral): A bit of cleaning of error messages, as well as code indentation. 2012-11-16 Patrick Eriksson * arts-2-1-379 * doc/uguide/ppath_theory.tex: Revised 3D part. Resurrected text and figure for lengt-search algorithm. * src/ppath.cc: Functions now not used moved to ppath_NotUsed.cc. * doc/uguide/rte.tex (section{Calculation accuracy}): Moved one paragraph to ppath.tex. * doc/uguide/ppath.tex: Updated. Two new sub-sections, describing spacing between additional points and discussing tangent points. 2012-11-16 Jana Mendrok * arts-2-1-378 * started setting up predefined agendas, the user can chose than from by just copying them to the respective required agenda. WORK IN PRROGRESS. commit mainly in order to have synced code on my notebook. * controlfiles/general/agendas_new.arts: Added. Current place for predefined agendas. For now, used as an include to agendas.arts. * controlfiles/general/agendas.arts: include agendas_new.arts. 2012-11-16 Jana Mendrok * arts-2-1-377 * doc/uguide/rte.tex, ppath.tex: Removed/adapted references to explicit tangent point inclusion in ppath. 2012-11-16 Patrick Eriksson * arts-2-1-376 * Tangent points are now never included in a special manner. This has gradually disappeared, and now also removed from geom. 1D and 2D. This to be more consistent, makes the code cleaner, and (marginally) faster. Note that with a non-spherical ellipsiod there are two possible tangent altitudes, min radius and min vertical distance to geoid. It is the later that is most interesting, but it was the first one that was included. Anyhow, if you run with lmax <= 10 km the difference is really small between present and old results. At least for passive observations (e.g. no reference values not changed for passive). * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Deactivated "compare" as results have changed somehwat: 0.00011 deg (out of 0.6921) for bending angle and 0.3 ns (out of 637 ns) for extra path delay. Will re-activate when the radio link part is revised. * src/ppath.cc (geompath_r_at_l): Removed assert for negative l, as l anyhow squared. (geompath_from_r1_to_r2): Now handles that r1 and r2 can be on different side of a (r-based) tangent point. An extra input argument added for this. (do_gridrange_1d): Adopted to change in geompath_from_r1_to_r2, and hence always return complete step through grid cell. (ppath_step_geom_1d): Removed special handling of tangent points. (raytrace_1d_linear_basic): Adopted to changes above. (ppath_step_geom_2d): Removed special handling of tangent points. (do_gridcell_2d): Adopted to change in geompath_from_r1_to_r2. (raytrace_2d_linear_basic): Adopted to changes above. * src/ppath.cc (do_gridcell_3d_byltest): Removed old version and renamed the test version (ie. now the active function). 2012-11-16 Oliver Lemke * arts-2-1-375 * ChangeLog: Remove leftover conflict marker from r7969. 2012-11-16 Oliver Lemke * arts-2-1-374 * src/m_basic_types.cc (Compare): Output the names of the variables being compared. Keep the sign around for final difference output. Make input parameter names consistent over all Compare functions. * src/methods.cc: Enable passing of WSV names for Compare WSM. 2012-11-15 Patrick Eriksson * arts-2-1-373 * src/ppath.cc (do_gridcell_3d_byltest2): Completed. Now the active version. 2012-11-15 Patrick Eriksson * arts-2-1-372 * src/ppath.cc (do_gridcell_3d_byltest2): Start on alternative version of the function. 2012-11-15 Patrick Eriksson * arts-2-1-371 * Input angle to interpolation in surfaceFlatReflectivity and similar methods was zenith angle. This shall now be incidence angle. That is, the angle to the surface normal, not zenith. This to decouple specification of surface RT properties from topography. The incidence angle should be <= 90 even with topography. (Not an issue for 1D, testing ongoing for 3D.) * src/m_rte.cc (yCalc): Removed a leftover cout-s. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/instruments/mhs/mhs_fast.arts: * controlfiles/instruments/mhs/mhs.arts: * controlfiles/instruments/amsu/amsub_fast.arts: * controlfiles/instruments/amsu/amsub.arts: * controlfiles/artscomponents/clearsky/TestClearSky.arts: * controlfiles/artscomponents/surface/TestSurface.arts: Adopted to changes below. * src/surface.cc (surface_specular_los): Removed. Replaced by specular_losCalc. * src/m_surface.cc (complex_nFromGriddedField4): Removed rte_los as input. Not used. (surfaceFlatScalarReflectivity): (surfaceFlatReflectivity): (surfaceFlatRefractiveIndex): Now using specular_los and calc_incang. (specular_losCalc): Created. * src/surface.cc (calc_incang): Created. * src/workspace.cc: Added surface_normal and specular_los. 2012-11-14 Patrick Eriksson * arts-2-1-370 * src/montecarlo.cc (mcPathTraceGeneralTEST): Some more work on this new version of the function. Still inactive * controlfiles/general/agendasDOIT.arts: Removed Ignore for rte_pos and rte_los in iy_cloudbox_agenda, as not needed. 2012-11-13 Jana Mendrok * arts-2-1-369 * src/m_sensor.cc,methods.cc,workspace.cc,m_rte.cc: Introduced WSM sensor_checkedCalc and WSV sensor_checked in analogy to [basics,cloudbox]_checked and moved all sensor-related checks previously done at the beginning of yCalc to this WSM. Like [basics,cloudbox]_checkedCalc, sensor_checkedCalc now needs to be called before executing yCalc. * src/m_doit.cc(CloudboxGetIncoming): Now requires sensor_checked as input. * controlfiles/*/*/Test*.arts: Adapted controlfiles to the above changes. 2012-11-13 Patrick Eriksson * arts-2-1-368 * A bug fix for m_surface! (Bug created in 2-1-363) * A bug fixed for opt_propExtract (very old one). * (Work on introducing ppath_step_agenda into MCGeneral. Nothing new active, beside bug fix in opt_propExtract. ) * src/m_cloudradar.cc (iyCloudRadar): tr_rev should not be updated for ip=np-1. Fixed. * src/m_surface.cc (surface_reflectivityFromGriddedField6): Mixed up old and new grid when doing "lon-shift". (surface_scalar_reflectivityFromGriddedField4): As above. * src/montecarlo.cc (opt_propExtract): PARTICLE_TYPE_HORIZ_AL did not work for za=90! Copied solution already added in ext_matTransform. BIG NOTE: Very similar code is found in opt_propExtract and ext_matTransform. If you find any problem in any of these functions, check also carefully if the same problem is found the other one!!! * src/ppath.cc (ppath_copy): Some typos in comments * src/m_montecarlo.cc (MCGeneral): Added ppath_step_agenda and edensity_field as input and passed on to mcPathTraceGeneral. * src/m_rte.cc (iyMC): Added ppath_step_agenda and edensity_field as input and passed on to MCGeneral. 2012-11-13 Oliver Lemke * arts-2-1-367 * src/m_rte.cc (iyMC): Parallelize frequency loop. 2012-11-13 Jana Mendrok * arts-2-1-366 * src/m_doit.cc(DoitCloudboxFieldPut): Bugfix. Sensor-in-cloudbox check needs to run over measurements block = the rows of sensor_pos matrix. 2012-11-11 Patrick Eriksson * arts-2-1-365 * Forgot to make add on the new file. 2012-11-11 Patrick Eriksson * arts-2-1-364 * src/m_doit2.cc (CloudboxGetIncoming2): Started work on allowing sensor and surface inside cloudbox. So far making parallel methods and variables, named by adding a 2 at the end. And keep it in a separate, temporary, file. * src/m_doit.cc (CloudboxGetIncoming): For 3D, the if-statement for "end points of scat_za_index" was wrong for lat and lon parts. It had been fixed for pressure! Copied this to the lat and lon parts. A bug but (if I get it right) only one za-aa combination got wrong value (and just for 3D). 2012-11-11 Patrick Eriksson * arts-2-1-363 * src/m_surface.cc (surface_reflectivityFromGriddedField6) (surface_scalar_reflectivityFromGriddedField4) (complex_nFromGriddedField4): Checks of before interpolation were not complete. Also added shifting of longitudes to handle mapping from e.g. [-180,180] to [0 360]. * doc/uguide/scattering.tex: * doc/uguide/rte.tex: * doc/uguide/cloudradar.tex: Fixed the \wsmindex errors reported when running make check-all * src/m_cloudbox.cc (cloudbox_checkedCalc): Added check that the upper vertical limit is above the surface. 2012-11-09 Patrick Eriksson * arts-2-1-362 * controlfiles/artscomponents/surface/create_gfields.m (create_gfields): Not all grid names were correct. Created data (used as test input) updated. * src/m_surface.cc (surface_scalar_reflectivityFromGriddedField4): Added checks of name of grids. * src/check_input.cc (chk_griddedfield_gridname): Slight modification of error message. * src/m_surface.cc (surface_reflectivityFromGriddedField6): Added checks of name of grids. * src/methods.cc: Fixed some typos for surface_reflectivityFromGriddedField6. Stating expected name of grids for complex_nFromGriddedField4 and surface_*FromGriddedField4/6. 2012-11-09 Richard Larsson * arts-2-1-361 * src/m_zeeman.cc: Added another scheme for calculating relative strength of the split components. Made it compatible with the rational class in order to make half-quantum number operations easier to implement in the future. (RelativeStrengthSMMBerdyugina) Easy to use scheme that now is the standard scheme for determining relative strength. See the reference in the text for more information. (Lande_RusselSaunders) Another way to get g. I am currently trying to find a way for g of Hund a) transitions that works in (FrequencyChangeDirect) and this g might be helpful. * src/rational.h/.cc: Made a rational class. There are still some operators missing in this class so it cannot be considered complete. It works with src/m_zeeman.cc as far as I can tell. 2012-11-08 Patrick Eriksson * arts-2-1-360 * doc/uguide/cloudradar.tex: A basic documentation of the addition, quickly written, needs revision. * doc/uguide/symbol_defs.tex: Added defintion of "transmission matrix". 2012-11-08 Jana Mendrok * arts-2-1-359 * src/cloudbox.h, m_atmosphere.cc, m_cloudbox.cc, cloudbox.cc, workspace.cc: replaced 'prof_type' -> 'partfield_name' and 'profile type' -> 'particle field name' 2012-11-08 Jana Mendrok * arts-2-1-358 * src/m_cloudbox.cc(particle_massesSet): Added. Method to derive particle_masses from scat_data_meta, in order to be able to consistently use particle_masses with ARTS internal pnd_field calculation methods. * src/methods.cc: Added particle_massesSet, some layout and formulation fixes to other methods. * src/workspace.cc: some cross-link fixes. 2012-11-08 Patrick Eriksson * arts-2-1-357 * doc/uguide/cloudradar.tex: So far just an empty chapter. * doc/uguide/transmission.tex (section{Pure transmission calculations}): Jsut fixed one bad sentence. * doc/uguide/rte.tex (section{Auxiliary data}): Updated with respect to iy_auxFillParticleVariables. * src/methods.cc: Finished updates of built-in doc for cloud radar methods and other recent changes. 2012-11-08 Patrick Eriksson * arts-2-1-356 * src/methods.cc: Started to document the cloud radar methods and other recent changes. Not ready. 2012-11-07 Oliver Lemke * arts-2-1-355 * src/m_doit.cc (doit_i_fieldUpdateSeq1D): Remove unnecessary loop over za in limb conversion test. Change type of doit_i_field_limb from Tensor6 to Matrix. 2012-11-07 Oliver Lemke * arts-2-1-354 * src/m_doit.cc: (doit_i_fieldUpdateSeq1D): Adaptively perform additional iterations for the limb case (90 < za < theta_lim) to improve overall convergence. Clean up redundant if statements. (doit_conv_flagAbsBT): Output diff_bt with sign. * src/optproperties.{cc,h}, src/doit.cc, src/montecarlo.cc: Rename opt_prop_add_abs_mat_per_species to opt_prop_sum_abs_mat_per_species * src/cloudbox.cc (chk_scattering_data): Add _U_ to suppress warning. 2012-11-07 Oliver Lemke * arts-2-1-353 * src/matpackVI.h: Add missing CHECK(v) to Tensor6View::operator(). 2012-11-07 Patrick Eriksson * arts-2-1-352 * src/m_cloudradar.cc (iyCloudRadar): Updated names and error messages, to be consistent with changes below. * src/m_rte.cc (iy_auxFillParticleVariables): New. Intended to be a help function to iyEmissionStandard, to fill "PND, type X" and "Mass content, X". (iyEmissionStandard): Now accepts "PND, type X" and "Mass content, X", but just sets the iy_aux element to be empty. (iyTransmissionStandard): "PND, type X" and "Mass content, X" added as aux variables. 2012-11-05 Patrick Eriksson * arts-2-1-351 * src/m_cloudradar.cc (yCloudRadar): range_bins can now also be given in time. 2012-11-05 Patrick Eriksson * arts-2-1-350 * src/m_cloudradar.cc (iyCloudRadar): Now considering that the vector transmission is direction dependent. That is, there is now a transmission matrix for the propagation from the transmitter to the scattering point, and another matrix for the reversed propagation. (Needed as T1*T2 != T2*T1, where T1 and T2 are transmission matrices). Added round-trip time as aux var. * src/m_cloudradar.cc (yCloudRadar): Better handling of aux vars. 2012-11-05 Jana Mendrok * arts-2-1-349 * src/cloudbox.cc: Several documentation fixes (particularly units of LWC&IWC). 2012-11-05 Patrick Eriksson * arts-2-1-348 * src/m_cloudradar.cc (iyCloudRadar): Added Bacscattering and particle field as aux variables. 2012-11-04 Patrick Eriksson * arts-2-1-347 * src/m_cloudradar.cc: Further work. * doc/uguide/ppath_theory.tex: Removed references to ppath_array, changed to \funcindex for ppath_calc. * doc/uguide/rte.tex: Changed reference to ppath_cal to ppath_agenda. * doc/uguide/ppath.tex: \builtindoc was used for ppath_calc. Changed to \funcindex. * doc/uguide/winds.tex: doppler_shift -> rte_doppler. * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts: * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: cloudbox_checkedCalc called with explicit arguments, as for these MC-WSMs scat_data_mono replaced scat_data_raw. * particle_masses is now a mandatory "cloudbox variable", to complement pnd_field and scat_data_raw. However, can be left empty if particle mass is not used. * controlfiles/artscomponents/montecarlo/TestMonteCarloDataPrepare.arts: pnd_field was non-zero at lat and lon limits of the cloudbox (catched by extension of cloudbox_checkedCalc). Changed lat and lon extension of cloudbox from +-1.8 to +-1.9 deg (following the grid of used raw pnd_field). * controlfiles/general/general.arts: Added particle_masses, set to be empty. * src/m_atmosphere.cc (basics_checkedCalc): Added check for negative values in edensity_field. * src/cloudbox.cc (chk_pnd_field_raw_only_in_cloudbox): Moved from check_input.cc, to be placed beside some very similar functions. * src/m_cloudbox.cc (cloudboxOff): Now also returning an empty particle_masses. (cloudbox_checkedCalc): Now also performing checks on pnd_field and particle_masses. Note that pnd_field is allowed to be >0 for lower altitude limit of the cloudbox, if this point is at or below the suface altitude. * src/montecarlo.cc (iwp_cloud_opt_pathCalc): particle_masses passed on to this function. Also adopted. * src/m_montecarlo.cc (mc_IWP_cloud_opt_pathCalc): Only WSM that used particle_masses. Adopted. Demands that particle_masses has a single column. * src/workspace.cc: Redefined the WSV particle_masses. The scope is now larger and the type is changed from Vector to Matrix. 2012-11-04 Jana Mendrok * arts-2-1-346 * src/methods.cc: Fix. 2012-11-04 Jana Mendrok * arts-2-1-345 * src/m_refraction.cc (refr_indexMWgeneral): Fixed. Newell&Baird method considers refractivity, not refractive index (exactly as, e.g. Thayer) - fix this in TN1 (or at least the upcoming reports). Gives now pretty similar results to Thayer. (refr_indexThayer): Replaced requiring of H2O by assuming H2O-vmr=0 in case of no H2O in abs_species, i.e., reducing it to dry air contribution in these cases. * src/methods.cc: Added description for refr_indexMWgeneral. * controlfiles/artscomponents/[doit/TestDOIT,wfuns/TestWfuns, montecarlo/TestMonteCarloGeneralGaussian, montecarlo/TestMonteCarloGeneral].arts: Spell fixes. 2012-11-02 Jana Mendrok * arts-2-1-344 * src/m_refraction.cc(refr_indexMWgeneral): Added. General, planetary applicable method for refr. index calculation following Newell&Baird, 1965. Reference refr. indices valid for microwave (also from Newell&Baird, 1965) currently hardcoded therein. * src/methods.cc(refr_indexMWgeneral): Added. Proper Doc TBD. * src/absorption.cc(xsec_species): Typo fixed. 2012-11-01 Patrick Eriksson * arts-2-1-343 * src/m_cloudradar.cc (iy_transmitterCloudRadar): Created. (yCloudRadar): Now also handling y_aux. 2012-11-01 Patrick Eriksson * arts-2-1-342 * src/m_sensor.cc: Some code moved to function below. And now instead that function is called. * src/sensor.cc (stokes2pol): Created. * src/workspace.cc: Added sensor_pol_array and range_bins. * src/CMakeLists.txt: Added m_cloudradar.cc. * src/m_cloudradar.cc: Started this file, and moved the new functions from m_rte.cc. Still work in progress. 2012-10-31 Patrick Eriksson * arts-2-1-341 * src/m_rte.cc (iyCloudRadar): Changed order of data inside iy. Work in progress. Do not use! (iyBackCoeff2Ze): Just started. Got stuck due to bug fix below. * controlfiles/artscomponents/doit/TestDOIT.arts: I did not get a good fit with the target/reference values, neither before or after bug fix below. The values seems to be old. Updated the target values, and decreased tolerance from 1.0 to 0.2 K. * src/m_physics.cc (complex_nWaterLiebe93): A bug! sqrt was not applied and the method returned the dielectric constant (eps) instead of refractive index (n), with n = sqrt(eps). 2012-10-29 Patrick Eriksson * arts-2-1-340 * src/m_rte.cc (iyCloudRadar): Started. So far just experimental. * src/m_rte.cc (iyTransmissionStandard): Adopted call of get_ppath_ext. * src/rte.cc (get_ppath_ext): Added ppath_pnd as output argument. 2012-10-29 Oliver Lemke * arts-2-1-339 * README: Was still containing a URL to the SAT server from Bremen times. 2012-10-25 Jana Mendrok * arts-2-1-338 * src/m_cloudbox.cc (ParticleSpeciesSet,ScatteringParticlesSelect,pnd_fieldSetup): Introduced part_species delimiter as generic (defaulted) input parameter (in future maybe make it a preset WSV, cause currently there's quite a bit of room for messing up by using different delimiter strings in the different WSM calls), pass delimiter on into parse_XXX and pnd_fieldXXX functions. Added check of part_species validity in ParticleSpeciesSet. * src/methods.cc (ParticleSpeciesSet,ScatteringParticlesSelect,pnd_fieldSetup): Introduced part_species delimiter as generic input parameter. * src/cloudbox.cc,cloudbox.h (chk_part_species): Introduced. Check function for part_species strings. (chk_scattering_meta_data): Removed obsolete particle type check (this is free from now (except for containing the part_species delimiter string)!). (pnd_FieldXXX,parse_XXX): Added part_species delimiter as input parameter. * src/m_atmosphere.cc(AtmFieldsFromCompact): Adapted to parse_XXX now requiring delimiter as input. * controlfiles/testdata/chevallierl91_all_extract.xml: Moved to global testdata location from controlfiles/artscomponents/doitbatch/. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, doit/TestDOIT.arts: Increased number of azimuth angles from 10 to 37 (no significant impact for these cases, but as they also act as demo...). Atmfield location adapted according to above change. 2012-10-24 Oliver Lemke * arts-2-1-337 * doc/uguide/check_refs.py: Agenda check was broken. * doc/uguide/absorption.tex, doc/uguide/ppath.tex, doc/uguide/scattering.tex, doc/uguide/surface.tex: Naming fixes. 2012-10-24 Jana Mendrok * arts-2-1-336 * src/m_optproperties.cc (scat_data_rawCheck): Revised. Now throws an error, when deviation of C_sca from Z11 and from K-a gets to large (user defined threshold). Explicit warning that method only works for p20. More informative output on out2. * src/methods.cc,workspace.cc: Updated and improved(?) online-doc for ScatteringParticlesSelect, scat_data_rawCheck; part_species, scat_data_nelem. * controlfiles/artscomponents/doit/TestDOIT.arts, doitbatch/TestDOITBatch.arts, montecarlo/TestRteCalcMC.arts: Apply scat_data_rawCheck. 2012-10-24 Oliver Lemke * arts-2-1-335 * src/methods.cc: Add doit_i_field as output to doit_conv_flag* WSMs. Change name of throw_nonconv_error flag to nonconv_return_nan. * src/m_doit.cc (doit_conv_flag*): Return NaNs in non-convergence case instead of throwing a runtime error. 2012-10-24 Oliver Lemke * arts-2-1-334 * src/m_doit.cc (doit_conv_flag*): Fix compilation with clang. (os << out -> os << out.str() ) 2012-10-24 Jana Mendrok * arts-2-1-333 * src/m_doit.cc (doit_conv_flagAbs, doit_conv_flagAbsBT, doit_conv_flagLsq): Bugfixed iteration counter incrementation. 2012-10-24 Jana Mendrok * arts-2-1-332 * src/m_doit.cc (doit_conv_flagAbs, doit_conv_flagAbsBT, doit_conv_flagLsq): Fix hard-coded number of max. iterations in DOIT - made it a user- controllable parameter (with the previously hard-coded value of 100 as the default value). Also make it a user choice, whether to throw an error in case of non-convergence (this seems to be the logical consequence) or to accept the latest (but non-converged) scattering field as result (keeping this option and making it the default in order to avoid opening a can of worms NOW: a number of earlier calcs might suffer from that and failing at a single freq grid point would cause the whole calc to fail. we need a better fix for that!) * src/methods.cc: adapted accordingly * controlfiles/instruments/avhrr/avhrr_sensor_common.arts, avhrr_sensor_fast.arts, avhrr_sensor_reference.arts: Properly set names for a couple of datafiles to read - failed when used those arts files as includes outside the arts controlfiles folder. 2012-10-23 Oliver Lemke * arts-2-1-331 * doc/uguide/check_refs.py: Update doc. * doc/uguide/CMakeLists.txt: Make check-uguide depend on pdfs directly instead of custom arts_docs target for compatibility with older cmake. 2012-10-23 Oliver Lemke * arts-2-1-330 * doc/uguide/check_refs.py: Add check for wsa_index macro. * doc/uguide/CMakeLists.txt: Make check-uguide depend on arts_docs. * doc/uguide/absorption.tex, doc/uguide/atmosphere.tex, doc/uguide/rte.tex, doc/uguide/batch.tex: Fix some low hanging fruit. 2012-10-23 Oliver Lemke * arts-2-1-329 * doc/uguide/check_refs.py, doc/uguide/CMakeLists.txt: Add script to check if non-existent WSMs or WSVs are referred in latex macros wsmindex, wsvindex and builtindoc. Can be run with 'make check-uguide'. * src/absorption.h (BroadSpecName): Add empty string return value in addition to the assert to avoid warning in release mode compilation. 2012-10-22 Patrick Eriksson * arts-2-1-328 * The minimum number of photons applied in MC can now be controlled. It was before hard-coded to 100. * controlfiles/general/general.arts: mc_min_iter set to 100 (that is, consisient with older hardcoded value). * src/m_montecarlo.cc (MCGeneral,MCIPA): Now using mc_min_iter (demanding that the value is >= 100). * src/m_rte.cc (iyMC): Added mc_min_iter. * src/workspace.cc: Added mc_min_iter. 2012-10-21 Patrick Eriksson * arts-2-1-327 * src/ppath.cc (raytrace_3d_linear_basic, ppath_step_geom_3d): Going back (hopefully temporarily) to old 3D ray tracing scheme. Still safer than new one! 2012-10-19 Patrick Eriksson * arts-2-1-326 * src/ppath.cc: A warning! Found a case where new 3D ray tracing code failed and not yet fixed. * src/m_ppath.cc (ppathWriteXMLPartial): Using Oliver's new code, it was easy to test that it is only the grid positions that make the Matlab importing so slow for ppath. For this reason, reintroduced nreal and ngroup. (In my present test, importing the partial ppath takes about just 1% of the time for imprting the complete one!) 2012-10-19 Oliver Lemke * arts-2-1-325 * src/m_ppath.cc, src/methods.cc: Add ppathWriteXMLPartial. Writes only essential ppath data fields for better performance when needed. 2012-10-16 Richard Larsson * arts-2-1-324 * src/m_zeeman.cc: Added another scheme for calculating relative strength of the split components. Also added another scheme to get the extinction matrices that take into account dispersion. (RelativeStrengthLindauAndLifshitz) seem to agree perfectly with the tables used previously at applicable lines. It should also work for the more general cases and regardless of particle, though this has yet to be tested. For more information on this, see Lindau and Lifshitz QED (volume 4). (KMatrixRees) seems reasonable, though it needs to be tested more before I say anyone should trust it. Changed names of some functions and added some new (#Define) for ease of using the various schemes. The current setup does not fail the TestZeeman.arts controlfile. Need to make some better way to switch between the different Zeeman splitting schemes in the future. 2012-10-15 Oliver Lemke * arts-2-1-323 * src/absorption.{h,cc} (LineRecord::ARTSCAT4FromARTSCAT3): Don't fail for lines already in ARTSCAT4 format, just skip those. Move implementation to cc file. 2012-10-15 Oliver Lemke * arts-2-1-322 * src/m_batch.cc (ybatchCalc): Correct error message. Since ybatch is now an ArrayOfVector, y for failed batch cases is simply empty, not -1. Add informational output to out1 that we're aborting if a batch case fails and robust==0. Gives feedback to the user that something went wrong and that we will bail out of the batch loop when all the currently running cases have finished (which may take a bit of time). * src/m_basic_types.cc (Compare): Add newline in error message. 2012-10-12 Oliver Lemke * arts-2-1-321 * src/src/methods.cc: ybatchCalc now also returns ybatch_aux. * src/m_batch.cc (ybatchCalc): Add ybatch_aux as output. Move definition of y and jacobian inside the batch loop. * src/agendas.cc: Add y_aux as output to ybatch_calc_agenda. * src/groups.cc: Add group ArrayOfArrayOfVector. * src/workspace.cc: Add new WSV ybatch_aux. * src/xml_io_types.h, src/xml_io_instantiation.h, src/xml_io_array_types.cc, src/nc_io_array_types.cc: Add ArrayOfArrayOfVector support. 2012-10-11 Patrick Eriksson * arts-2-1-320 * src/m_atmosphere.cc (basics_checkedCalc): Made an error message a bit clearer. * src/methods.cc: Fixed some typos for surface methods. 2012-10-12 Oliver Lemke * arts-2-1-319 * Two changes in this commit that break backwards-compatibility: ybatch WSV group changed from Matrix to ArrayOfVector. WSMs {Matrix,Numeric,Vector,Tensor7}Compare merged into one supergeneric Compare function. * src/src/m_batch.cc (ybatchCalc): Change type of ybatch to ArrayOfVector. Remove code for separate calculation of first batch job. Batch calculations are now run in parallel immediately, not only after the first job is done. (ybatchMetProfiles, ybatchMetProfilesClear): Change type of ybatch to ArrayOfVector. * src/methods.cc: Merge all TYPECompare WSMs into one supergeneric Compare function. {Matrix,Numeric,Vector,Tensor7}Compare -> Compare * src/workspace.cc: Change type of ybatch from Matrix to ArrayOfVector. * src/m_basic_types.cc: Change name of Compare functions and gather them in one place. Add Compare implementation for ArrayOfVector. * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts, controlfiles/artscomponents/absorption/TestIsoRatios.arts, controlfiles/artscomponents/clearsky/TestClearSky.arts, controlfiles/artscomponents/doit/TestDOIT.arts, controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts, controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts, controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts, controlfiles/artscomponents/radiolink/TestRadioLink.arts, controlfiles/artscomponents/surface/TestSurface.arts, controlfiles/artscomponents/transmission/TestTransmission.arts, controlfiles/artscomponents/wfuns/TestWfuns.arts, controlfiles/artscomponents/zeeman/TestZeeman.arts, controlfiles/instruments/amsu/TestAMSUB.arts, controlfiles/instruments/amsu/TestAMSUB_fast.arts, controlfiles/instruments/mhs/TestMHS.arts, controlfiles/instruments/mhs/TestMHS_fast.arts: Adapt for type change of ybatch from Matrix to ArrayOfVector. Adapt for merge of Compare WSMs. * controlfiles/artscomponents/doitbatch/TestDOITBatch.ybatch.ref.xml, controlfiles/instruments/amsu/TestAMSUB.ybatch.ref.xml, controlfiles/instruments/mhs/TestMHS.ybatch.ref.xml: Convert ybatch references from Matrix to ArrayOfVector. 2012-10-04 Stefan Buehler * arts-2-1-318 * doc/uguide/absorption_theory.tex (Pressure broadening and shift calculation): Fixed wrong parentheses in broadening and shift formulas. 2012-10-02 Jana Mendrok * arts-2-1-317 * controlfiles/artscomponents/absorption/TestIsoRatios.arts, src/physics_funcs.cc, README: minor fixes. * src/methods.cc (GriddedFieldLatLonRegrid, GriddedFieldPRegrid): updated/clarified documentation. 2012-10-02 Patrick Eriksson * arts-2-1-316 * The core DOIT part is hard-coded to return radiance (frequency based, blackbody_radiation_agenda is not used). This puts a demand on that CloudboxGetIncoming returns radiances. You could imagine to use CloudboxGetIncoming for other things than DOIT, where other units could be of interest. But as recent changes made it more difficult to use DOIT for batch calculations, I have added some checks in CloudboxGetIncoming to help the users. So, CloudboxGetIncoming can now only return radiance data. * src/m_doit.cc (CloudboxGetIncoming): Now also checks iy_unit and blackbody_radiation, to ensure that frequency based radiance data are obtained. (CloudboxGetIncoming1DAtm): As above. In addition, now also considering basics_checked and cloudbox_checked (as done in the method above). * src/m_rte.cc (iyEmissionStandard): Now uses the function below (that is based on code from this method). * src/check_input.cc (chk_if_std_blackbody_agenda): New function. The function tests if blackbody_radiation_agenda returns frequency based radiance, as assumed in some places. 2012-09-26 Richard Larsson * arts-2-1-315 * src/m_zeeman.cc: Fixed (FrequencyChangeDirect). My hope is this function better describe the general problem and will thus work for more species. Also, the Lenoir tables used did not describe cases with DN != 0 when DJ == 0. Will have to construct quantum transition rules first, then this should allow more general Zeeman effect calculations. The quantum electron spin number is currently defined constant but it should be a species property. * src/constants.cc: Added Bohr magneton and lande_gs. 2012-09-24 Patrick Eriksson * arts-2-1-314 * src/m_rte.cc (iyEmissionStandard): Referred incorrectly to MatrixPlanck in an error message. * doc/uguide/rte.tex: Algorithms updated with respect to where iy_unit is picked up. Output unit section extended to also treat n2-law. * doc/uguide/rte.tex: Flow chart updated (diy_dx now not output of iyCalc). * doc/uguide/rte_theory.tex: Changed the Planck function to use v (instead of c). This is commented, with a reference to Thomas and Stamnes. Made a section on the n2-law (based on Bengt's text from the ESA study TN1 report). * doc/uguide/references.bib: Added mobley:light:94, matlzer:radia:06 and thomas2002radiative. 2012-09-24 Gerrit Holl * arts-2-1-313 * src/m_atmosphere.cc(basics_checkedCalc): - Bugfix: throw runtimeerror if min(f_grid)<=0. 2012-09-24 Oliver Lemke * arts-2-1-312 * src/m_batch.cc (ybatchCalc): Throw a runtime error instead calling arts_exit directly if there is a mismatch in the Jacobian dimension. Will bypass robust and terminate the run. 2012-09-24 Oliver Lemke * arts-2-1-311 * Completed most of the OpenMP cleanup. The program is never exited directly from inside parallel loops anymore. All exceptions are passed up until they're caught in the main function. This should always give a clear error stack. * If you still encounter errors that look like the messy example below, please file a bug report with me!!!!! You should always see the 'Stopping ARTS' and 'Goodbye' line. If not, that's a bug too. Note that is does not apply to assertions. Before, error messages could look like this example when runtime errors occured in parallelised parts of the code: Executing Arts { .... - ybatchCalc Method abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_speciesMethod abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_speciesMethod abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_species Method abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_speciesMethod abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_species terminate called after throwing an instance of 'std::ios_base::failure' what(): basic_ios::clear Abort trap: 6 Now they (should) look like they this: ====================================== Executing Arts { .... - ybatchCalc } This run took 0.35s (0.32s CPU time) Run-time error in controlfile: doitbatch/TestDOITBatch_test.arts Run-time error in method: ybatchCalc Run-time error at ybatch_index 0: Run-time error in agenda: ybatch_calc_agenda Run-time error in method: CloudboxGetIncoming Run-time error in agenda: iy_main_agenda Run-time error in method: iyEmissionStandard Run-time error in agenda: abs_mat_per_species_agenda Run-time error in method: abs_mat_per_speciesAddOnTheFly Method abs_mat_per_speciesAddOnTheFly needs input variable: abs_lines_per_species Stopping ARTS execution. Goodbye. * src/absorption.cc (xsec_species), src/m_abs_lookup.cc (abs_lookupCalc, abs_mat_fieldCalc), src/m_abs.cc (abs_linesArtscat4FromArtscat3), src/m_rte.cc (yCalc), src/rte.cc (iyb_calc), m_atmosphere.cc (batch_atm_fields_compactFromArrayOfMatrix, batch_atm_fields_compactAddSpecies): Don't exit from inside parallelized loops. Instead set a failed flag, save the error and rethrow the exception after the loops. * src/agenda_class.cc (give_up): Remove function. We never give up!!! * src/arts.{cc.h} (exit_or_rethrow): Remove function. We always throw up (the exceptions that is....) * src/rte.cc (get_ppath_abs), src/m_batch.cc (ybatchCalc): Rename vars for consistency. (LineRecord::ReadFromHitranStream, LineRecord::ReadFromMytran2Stream): Don't exit if unknown molecule is found. Now consistent with LineRecord::ReadFromHitranStream2004. * src/m_general.cc (Error): Throw runtime_error instead of calling arts_exit. 2012-09-21 Oliver Lemke * arts-2-1-310 * OpenMP cleanup, work in progress. * src/m_batch.cc (ybatchCalc), src/rte.cc (get_ppath_abs): Never exit from inside the parallel loop. Instead set an abort flag that skips remaining iterations, collect runtime error messages (from all threads if necessary) and rethrow them after the loop. Work in progress. This should be done for all parallel loops. I'll continue with that in the next commits. * src/agenda_class.cc (Agenda::execute): Tweak log output to play nicer with multiple threads. Don't call arts_exit inside here because we might be run inside multiple threads. Throw a runtime_error instead. Calling the C library exit function from multiple thread gives random errors (assertions, terminate called twice message, or even core dumps) at program exit. To be done in the next commits: Make sure we only have a single exit point out of the program. All exceptions should be passed upwards until they're dealed with in the main function. * src/continua.cc (PWR98H2OAbsModel): Parallelize pressure loop. (PWR93O2AbsModel): Parallelize pressure loop. Handle exception inside loop and rethrow it after the loop. * src/m_abs_lookup.cc (abs_lookupCalc): Remove omp nested. Handled properly by the loop condition. (abs_mat_fieldCalc): Tweak pressure loop parallel condition. * src/m_abs_lookup.cc, src/m_batch.cc, src/messages.h, src/rng.cc, src/m_abs_lookup.cc, src/rte.cc: Replace all unnamed critical regions with named regions. All unnamed critical directives map to the same unspecified name. That means only one thread at a time will be allowed to enter one of those regions throughout the whole program at any time. * src/absorption.cc (xsec_species): Tweak parallel condition. * src/m_general.cc (Print): Move output of newline to the right place. (SWITCH_OUTPUT): Use ostringstream for nicer multithreaded output. (Print): Remove overload for ArrayOfIndex to use the output operator directly. * src/main.cc: Don't turn on omp nested. Usually not necessary and might have bad side effects (thread explosion). Should only be turned on in places that really need it. * src/m_atmosphere.cc, src/m_doit.cc, src/m_rte.cc: Remove commented out omp code. 2012-09-23 Patrick Eriksson * arts-2-1-309 * src/m_rte.cc (iyApplyUnit, yApplyUnit): n set to 1 in call of apply_iy_unit functions. (iyEmissionStandard): apply_iy_unit functions called with n. * src/rte.cc (apply_iy_unit): Added refractive index as input, and n2-law included in used expressions. (apply_iy_unit2): As above. 2012-09-23 Patrick Eriksson * arts-2-1-308 * Main change is that unit conversion is moved from iyb_calc down to methods for iy_main_agenda. This solves several issues: - Not all unit conversions make sense everywhere. For example, radiance conversions should not be applied on active signals. The selection of units can now be implemented on method level. - Now more clear when iy_unit makes sense (if not, not an input argument!"). - Back-conversion in iyMC now not needed. - The n2-law can be implemented without a lot of overhead (but not yet done). * controlfiles/*: About 20 controlfiles adopted renaming of iy_unit and ApplyUnit methods. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: A special case among the cfiles. For DOIT the unit must now be "1" when calling CloudboxGetIncoming. Final unit can first be set afterwards. So definition of iy_unit had to be moved into the batch agenda. * src/m_rte.cc (iyEmissionStandard): Adopted removed parts from iyb_calc, thus iy_unit is new input. Built-in doc corrected and extended. (iyApplyUnit): iyApplyYunit renamed. jacobian_do removed as input. Documentation adopted and extended. (iyCalc): Removed diy_dx as output. Jacobians are only partly supported on iy-level (perturbations made at yCalc level), and safest to remove diy_dx here. (iyMC): Removed back-conversion to radiance. Updated doc. * src/m_jacobian.cc: Removed y_unit from all methods (where it was passed on to iyb_calc). * src/rte.cc (apply_iy_unit): Renamed from apply_y_unit. (apply_iy_unit2): Renamed from apply_y_unit2. (iyb_calc): Removed everything associated with unit conversion. * src/workspace.cc: y_unit renamed to iy_unit, to reflect where the conversion now will be applied. Most of documentation moved to iyEmissionSteandard (as not generarly valid). * doc/uguide/ppath.tex: end_lstep was called start_lstep in structure table. 2012-09-21 Stefan Buehler * arts-2-1-307 * doc/uguide/absorption_theory.tex (Pressure broadening and shift calculation): Added caveats on VMR selection after discussion with Jana. 2012-09-21 Richard Larsson * arts-2-1-306 * src/m_zeeman.cc: Added another way to calculate frequency change. Will try to make it more useful soon. Fixed abs_species treatment error. * Updated Zeeman test file: to catch abs_species treatment error if it ever reoccurs. * src/messages.h: Will now flush output independent of user interface (I think). * src/m_abs_lookup.cc: Removed a FIXME, since I think the original implementation works. 2012-09-21 Stefan Buehler * arts-2-1-305 * doc/uguide/absorption_theory.tex (Pressure broadening and shift calculation): Added this section. 2012-09-21 Patrick Eriksson * arts-2-1-304 * doc/uguide/transmission.tex: Completed a version of the transmission section. * doc/uguide/rte.tex: Adeded missing labels for some equations. 2012-09-21 Patrick Eriksson * arts-2-1-303 * doc/uguide/transmission.tex: More work transmission section. 2012-09-21 Patrick Eriksson * arts-2-1-302 * doc/uguide/transmission.tex: Wrote an introduction, and got a bit into pure transmission section. 2012-09-19 Oliver Lemke * arts-2-1-301 * ChangeLog: Grr... fix typo 'is not called' -> 'is now called'. 2012-09-19 Oliver Lemke * arts-2-1-300 * I apologize beforehand for breaking controlfiles. * abs_lookupCreate is now called abs_lookupCalc. The original name wasn't that great because it is not actually creating the variable. Calc is more in line with all the other ...Calc functions we already have. * controlfiles/artscomponents/absorption/TestAbs.arts, controlfiles/artscomponents/absorption/TestAbsDoppler.arts, controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, controlfiles/artscomponents/groundbased/TestGbased.arts, controlfiles/artscomponents/montecarlo/TestMonteCarloDataPrepare.arts, controlfiles/artscomponents/wfuns/TestWfuns.arts, controlfiles/instruments/amsu/TestAMSU_generic.arts, controlfiles/instruments/avhrr/TestAVHRR.arts, controlfiles/instruments/hirs/TestHIRS.arts, controlfiles/instruments/mhs/TestMHS_generic.arts, controlfiles/instruments/odinsmr/TestOdinSMR.arts, controlfiles/instruments/odinsmr/TestOdinSMR_1D.arts, doc/uguide/absorption.tex, src/gas_abs_lookup.h, src/m_abs.cc, src/m_abs_lookup.cc, src/methods.cc, src/workspace.cc: abs_lookupCreate -> abs_lookupCalc. 2012-09-19 Oliver Lemke * arts-2-1-299 * This commit fixes the behaviour of the TYPECreate methods. After creating a new variable, instead of being initialized with 0 or empty, its state is now uninitialized. This is the same as for the builtin workspace variables. * src/agenda_class.h (MRecord): Add minternal flag. Is set to false if the method is from the controlfile and true if it was added by the engine. For example, Create and Delete calls for automatically generated variables (for literals) are flagged as internal. * src/agenda_class.cc (Agenda::execute): Use the new isInternal flag to determine output level instead of some funky string comparisons on the method and variables names. * src/methods.cc (define_md_data_raw): Update docs for the Create methods. * src/parser.cc (ArtsParser::parse_agenda): Insert a Delete after TYPECreate methods to make the new variable appear uninitialized. (ArtsParser::tasklist_insert_set_delete): Set the internal flag for MRecord to true for the automatically inserted Set and Delete methods. 2012-09-18 Patrick Eriksson * arts-2-1-298 * src/methods.cc: Updated and corrected the doc for ppathFromRtePos2. * doc/uguide/transmission.tex: Added some sections, to be filled ... * doc/uguide/ppath.tex: ppath_agenda is now mentioned. Added a comment about radio links, referrring to a special section. * doc/uguide/references.bib: Added rybicki:radia:79 and ippolito:satco:08. * doc/uguide/arts_user.tex: Changed order of the chapters. Hard to find a clear logically order, but a try. * doc/uguide/common.tex: FIXMEs now written in gray, to visually end up a bit in the background. * doc/uguide/refr_index.tex: started this chapter. (If anyone plans to add a chapter, do it now so section references from ESA study DDD do not change.) 2012-09-18 Oliver Lemke * arts-2-1-297 * README: Update prerequisites to be in line with the webpage. 2012-09-17 Oliver Lemke * arts-2-1-296 * src/mystring.h (split): Fix crash if the string contains several occurrences of the delimiter right next to each other. Bug found by Mathias. 2012-09-17 Oliver Lemke * arts-2-1-295 * src/absorption.cc: Remove debug code. 2012-09-17 Oliver Lemke * arts-2-1-294 * src/absorption.{cc,h} (checkIsotopologueRatios): Add function to validate isotopologue ratios. * src/m_abs.cc (abs_mat_per_speciesAddOnTheFly), src/m_abs_lookup.cc (abs_lookupCreate), src/m_zeeman.cc (abs_mat_per_speciesAddZeeman): Call checkIsotopologueRatios. Probably not the best places to call it, because it is called more often than needed. Other option is to make a workspace method that has to be called by the user. At least this way, the check is automatic. Something to be discussed. 2012-09-15 Oliver Lemke * arts-2-1-293 * src/methods.cc (define_md_data_raw): Clarify docs for Create and Delete. * src/continua.cc: (PWR93O2AbsModel): Cleanup code. (threej2_): Remove unused function. Would only lead to a null pointer dereference anyway... (MPM93_N2_continuum, n2n2tks_, bound32_, bound54_, spline_0_, artsckd_, fwv_mpmf87s93__, fwv24_, swv24_, swv_mpmf87s93__, conti_n2__): Remove unused variables and redundant assignments. (bound54_): Remove unused static array. * src/lineshapes.cc: (lineshape_voigt_kuntz6, lineshape_voigt_kuntz3, lineshape_voigt_kuntz4): Remove redundant assignments. (lineshape_voigt_drayson): Remove code with no effect and variable TRU. * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Slightly rearrange code. Initialize gamma with gamma_self. Remove temp variable. 2012-09-14 Jana Mendrok * arts-2-1-292 * controlfiles/artscomponents/absorption/TestIsoRatios.arts, IsoRatios_H2Oorig.xml, IsoRatios_H2Omani.xml, tropical.H2O_50%.xml, controlfiles/CMakeLists.txt: Added isotopologue ratio consistency test case. * src/species_data.cc: Fixed some isotopologue ratio bugs. Docu updated on built-in vs. read-from-file isotopologue ratios. * src/absorption.[cc,h]: extended output operator for SpeciesRecord. 2012-09-14 Oliver Lemke * arts-2-1-291 * src/absorption.cc (SpeciesAuxData::ReadFromStream): Remove leftover debug output. 2012-09-14 Oliver Lemke * arts-2-1-290 * src/xml_io_compound_types.cc: Use xml_set_stream_precision instead of setting it manually. 2012-09-14 Oliver Lemke * arts-2-1-289 * src/ppath.cc (ppath_step_refr_{1,2,3}d): Fire up an assertion if called with an unknown raytrace method. Because rtrace_method is a string, this can easily happen by a typo. Without this sanity check, the calculation will just continue with uninitialized variables. * src/libmicrohttpd/connection.c (try_ready_chunked_body): Catch possible NULL function pointer dereference. * src/m_abs.cc (WriteMolTau): Store sizes in variables. * src/absorption.cc (xsec_species): Make some variables const. 2012-09-14 Oliver Lemke * arts-2-1-288 * src/montecarlo.cc (mcPathTraceIPA): Add an assertion on istep to make sure we ran at least once through the while loop. If not, several variables are used uninitialized. * src/cloudbox.cc (scale_H11): Move definition of ratio into the block where it's actually used and remove unnecessary assignment. (pnd_fieldMP48): Init lambda with nan and add an assertion to make sure it was properly initialized inside the while loop. Otherwise it's possible that it is used uninitialized. * src/ppath.cc (ppath_start_2d, do_gridcell_2d): Remove unnecessary assignments to variables whose value is never read again. * src/m_atmosphere.cc (z_fieldFromHSE): Remove unnecessary assignment of g1=g0 by moving it inside the for-loop where it is actually used (and initialized with g2). 2012-09-14 Oliver Lemke * arts-2-1-287 * src/xml_io_compound_types.cc: Increase precision when writing SpeciesAuxData. 2012-09-14 Oliver Lemke * arts-2-1-286 * src/file.{cc,h}: Add an input manipulator class to support parsing of inf and nan values from input streams. The standard is not clear about support for this (some newer compilers like clang do it by default, others like gcc don't). With this class, we can handle it consistently across different compilers. * src/absorption.cc (SpeciesAuxData::ReadFromStream): Use double_imanip(). 2012-09-12 Richard Larsson * arts-2-1-285 * src/m_zeeman.cc: Fixed sign error in frequency shift routine. Also gives more information in the error message if a LineRecord that contains unexpected quantum numbers is encountered. * Updated Zeeman reference file: to fix for the sign error. 2012-09-12 Oliver Lemke * arts-2-1-284 * doc/uguide/absorption.tex: Fix typo. 2012-09-12 Oliver Lemke * arts-2-1-283 * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts, controlfiles/artscomponents/groundbased/TestWinds.arts, controlfiles/artscomponents/zeeman/TestZeeman.arts, controlfiles/general/agendas.arts, doc/uguide/absorption.tex, doc/uguide/concept.tex, src/m_abs.cc, src/m_abs_lookup.cc, src/m_zeeman.cc, src/methods.cc: Rename abs_mat_per_speciesAddLBL -> abs_mat_per_speciesAddOnTheFly and abs_mat_per_speciesAddZeemanLBL -> abs_mat_per_speciesAddZeeman. 2012-09-11 Stefan Buehler * arts-2-1-282 * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Modified the broadening calculation: Normalize only the foreign broadening, so that it scales with the total foreign pressure (1-p_self). In other words, we do no scaling for the self part. In this way, results are even closer to what we got with artscat-3. * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts: Make test fail if Artscat-3 and Artscat-4 absorption differ by more than 1e-18 1/m (was 1e-7). 2012-09-10 Richard Larsson * arts-2-1-281 * src/m_zeeman.cc: Changed program flow to not call higher level functions. (Absorption is now handled locally instead of calling m_abs.cc functions). Also have a lower tollerance for database errors. * Updated Zeeman testfiles. 2012-09-10 Oliver Lemke * arts-2-1-280 * Add support for reading and writing of isotopologue_ratios to an XML file. The file format is similar to the ARTSCAT format. Default values for isotopologue ratios can be extracted from the built-in species_data (this is done by default in general.arts) and then be written to a file: isotopologue_ratiosInitFromBuiltin WriteXML("ascii", isotopologue_ratios, "isos.xml") Instead of intializing isotopologue_ratios from species_data, they can then simply be read: ReadXML(isotopologue_ratios, "isos.xml") Note that all ratios are initialized with NAN. If species are missing from the input file, those values will stay NAN. * src/absorption.{cc,h}: New class SpeciesAuxData. Used to hold runtime values for IsotopologueRatios at the moment, but can be used for other parameters in the future. Reading routine is also in here. (write_lines_to_stream): Remove declaration of non-existent function. * src/species_data.cc: Replace all -1. ratio and mass values for continua with NAN. * src/groups.cc: New group SpeciesAuxData. * src/workspace.cc, src/gas_abs_lookup.h, src/m_abs.cc, src/m_abs_lookup.cc, src/m_zeeman.cc: Change type of isotopologue_ratios from ArrayOfVector to SpeciesAuxData. * src/xml_io_compound_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Add reading/writing for SpeciesAuxData. * src/nc_io_compound_types.cc, src/nc_io_instantiation.h, src/nc_io_types.h: Add dummy for SpeciesAuxData type. 2012-09-08 Oliver Lemke * arts-2-1-279 * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts, controlfiles/artscomponents/wfuns/TestWfuns.arts, controlfiles/instruments/hirs/TestHIRS.arts, controlfiles/instruments/odinsmr/TestOdinSMR_1D.arts: Add more Ignore(ppath_los) to non-Zeeman absorption agenda definitions in remaining check-all tests. 2012-09-07 Richard Larsson * arts-2-1-278 * General: Fixed a major miss in treatment of Zeeman regarding what los vector to use. Used to take sensor los instead of point path los. * Controlfiles/*: Added Ignore( ppath_los ) to non-Zeeman absorption agenda definitions. * src/rte.cc: Sends ppath.los at ip into abs_mat_per_species_agenda in relevant functions. * src/doit.cc, src/montecarlo.cc, src/disort.cc, src/m_abs_lookup.cc: Sends in dummy ppath_los to absorption agenda. Did not check if these had ppath defined and could us the real los instead since they already send in dummy magnetic field. * src/methods.cc: abs_mat_per_speciesAddZeemanLBL now takes ppath_los instead of rte_los. Also takes atmosphere_dim for use of mirror_los. * src/workspace.cc: Added ppath_los. * src/agendas.cc: Updated abs_mat_per_species_agenda to take ppath_los. * src/m_zeeman.cc: In effect mirror_los(*) of ppath_los replaces rte_los. 2012-09-07 Jana Mendrok * arts-2-1-277 * controlfiles/instruments/hirs/hirs_fast.arts: Bugfix. 2012-09-07 Jana Mendrok * arts-2-1-276 * controlfiles/CMakeLists.txt: Fixed atmosphere_data/ renaming. 2012-09-07 Jana Mendrok * arts-2-1-275 * controlfiles/atmosphere_data/: Renamed to testdata/ * controlfiles/testdata/abs_lines_IR.xml.gz: Added. ARTS catalogue data for HIRS/AVHRR test cases. * controlfiles/[artscomponents,instruments]/*/*.arts: Adapted to atmosphere_data/ renaming. * controlfiles/instruments/avhrr/avhrr_reference.arts, hirs/hirs_fast.arts,hirs/hirs_hitran.arts: Replace use of HITRAN by ARTSCAT-version of HITRAN. * controlfiles/CMakeLists.txt: switch on TestHIRS again (TestAVHRR also running, but computational expensive and need not that different from TestHIRS). * src/absorption.cc(calc_gamma_and_deltaf_artscat4): VMR-"Warning" throws an error, hence -> "Error". 2012-09-07 Oliver Lemke * arts-2-1-274 * controlfiles/CMakeLists.txt: Fix case. 2012-09-07 Oliver Lemke * arts-2-1-273 * controlfiles/CMakeLists.txt: Add TestCompareArtscat3and4. * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts: Set atmosphere to 1D and stokes_dim to 1. * src/absorption.cc (calc_gamma_and_deltaf_artscat4): Remove variable name from unused parameter to avoid warning. 2012-09-07 Stefan Buehler * arts-2-1-272 * controlfiles/artscomponents/absorption/TestCompareArtscat3And4.arts: Added. Makes sure that absorption calculated from ARTSCAT-4 and ARTSCAT-3 is the same. * src/m_basic_types.cc (Tensor7Compare): Added. Similar to the other ...Compare methods. * src/methods.cc (Tensor7Compare): Added. * src/absorption.cc (find_broad_spec_locations): Fixed bug in function parameters. (calc_gamma_and_deltaf_artscat4): Ditto. * src/absorption.h (ARTSCAT4FromARTSCAT3): Bugfixes. 2012-09-07 Patrick Eriksson * arts-2-1-271 * doc/uguide/rte.tex: Added flowchart. Some language fixes. Made the "Compulsory sensor ..." section a bit shorter, by removing less important discission. This hopyfully completes the revision of the chapter. * doc/uguide/sensor.tex: Extended with two paragrapghs from rte.cc. 2012-09-07 Jana Mendrok * arts-2-1-270 * controlfiles/CMakeLists.txt: outcomment tests that currently use HITRAN (to be fixed before switching on again). 2012-09-07 Jana Mendrok * arts-2-1-269 * controlfiles/general/general.arts: fix INCLUDE file name. * controlfiles/CMakeLists.txt: Oops, bugfix - NOW all tests switched ON. 2012-09-07 Jana Mendrok * arts-2-1-268 * src/partition_function_data.cc: Added links to partition function comparison data&tools archive. * doc/uguide/concept.tex: couple of fixes of spelling and formulations. 2012-09-07 Jana Mendrok * arts-2-1-267 * starting cleaning & reorganizing of general.arts: * controlfiles/general/agendas.arts,planet_earth.arts: Added. INCLUDE files supposed to hold agenda predefinitions & default settings and planet specific default settings. For the moment just everything falling into those categories moved from general.arts to those. Need further development/structuring/cleaning. * controlfiles/general/general.arts: Clean up. Keeping only "real" defaults, i.e., settings that are basic and usually not reset. * controlfiles/[artscomponents,instruments]/*/Test*.arts: Adapted all test cases to above general.arts changes (particularly moved setting of atm_dim, stokes_dim, cloudboxOff, jacobianOff into the Test ctrl-files. user shall be forced to explicitly set those parameters). * controlfiles/instrument/amsu/TestAMSUA.arts: Removed. Except for the amsua.arts include, which does not exist, and the MatrixCompare of the output this is identical to TestAMSUB.arts. So no need to keep it. * controlfiles/CMakeLists.txt: switch on ALL existing test cases (except TestDisort, which needs to be fixed. or removed.) * controlfiles/instruments/hirs/garand_profiles.xml.gz: Moved to controlfiles/atmosphere_data/. 2012-09-06 Stefan Buehler * arts-2-1-266 * src/m_abs.cc (abs_linesArtscat4FromArtscat3): Added, converts lines from version 3 to version 4 format. * src/methods.cc: (abs_linesArtscat4FromArtscat3): Added. * src/absorption.cc: Minor changes in broadening calculations. * src/absorption.h (BroadSpecSpecIndex): Added. (ARTSCAT4FromARTSCAT3): Added, internal function that does the work for WSM abs_linesArtscat4FromArtscat3. (ARTSCAT4UnusedToNaN): Added. 2012-09-06 Patrick Eriksson * arts-2-1-265 * src/m_sensor.cc (sensorOff): Removed atmosphere_dim as input. Was just passed to sensor_responseInit, that needs for some checks of no relevance in this case. So dim now set internally to 1. This unlogical dependency of atmosphere_dim was pointed out by Jana. Thanks. 2012-09-06 Oliver Lemke * arts-2-1-264 * src/workspace.cc: New WSV isotopologue_ratios. * src/methods.cc: New WSM isotopologue_ratiosInitFromBuiltin. (abs_lookupCreate, abs_lookupTestAccuracy, abs_lookupTestAccMC, abs_mat_per_speciesAddZeemanLBL): Add isotopologue_ratios as input. * controlfiles/general/general.arts: Initialize isotopologue_ratios. * src/absorption.{h,cc} (xsec_species): Add param isotopologue_ratios. Use those for calculation instead the ones from species_data. * m_abs.cc (abs_coefCalc, abs_coefCalcSaveMemory, abs_xsec_per_speciesAddLines, abs_mat_per_speciesAddLBL): Add param isotopologue_ratios. (isotopologue_ratiosInitFromBuiltin): New function. * src/m_abs_lookup.cc (abs_lookupCreate, calc_lookup_error, abs_lookupTestAccuracy, abs_lookupTestAccMC), src/m_zeeman.cc (abs_mat_per_speciesAddZeemanLBL): Add param isotopologue_ratios. * gas_abs_lookup.h (GasAbsLookup): Update friend declarations. 2012-09-06 Oliver Lemke * arts-2-1-263 * src/m_atmosphere.cc (GriddedFieldLatLonRegridHelper): Give clear error message if latitude or longitude grid is empty. * src/check_input.cc (chk_interpolation_grids, chk_interpolation_grids_loose_no_data_check, chk_interpolation_grids_loose_check_data): Throw runtime error if new grid is empty. 2012-09-06 Jana Mendrok * arts-2-1-262 * 3rdparty/partFct/*.*: Added. Tools and data for derivation of partition function polynomial coefficients. For details see README. * 3rdparty/partFct/TIPS/: Added. Latest version of the TIPS program (slightly modified for all-species tabulated Q(T) output). 2012-09-05 Jana Mendrok * arts-2-1-261 * doc/uguide/absorption.tex: Updated. Separate subsec for absorption-with-no-RT. Refer to ATG for details on isotop. ratios and partition function data. * doc/uguide/absorption_theory.tex: Updated. Added info on ARTSCAT-4 and its format. Redone and completed part on partition function implementation & derivation. * src/workspace.cc (abs_coef,abs_coef_per_species: Concretized documentation. * src/methods.cc: (abs_mat_per_speciesAddFromLookup) linkname fix, (GriddedFieldLatLonExpand) documentation corrected. * src/absorption.h: Fixed layout of line format tables. 2012-09-05 Stefan Buehler * arts-2-1-260 * General: First implementation of explicit broadening calculation for all broadening species from Agnes catalogue. Not yet tested! * src/absorption.cc (LineRecord): Changed the way the foreign broadening and shift parameters are stored. Leads to changes in output operator and catalogue reading routines. (operator<<): Updated. (ReadFromArtscat4Stream): Updated. (find_broad_spec_locations): Updated. (calc_gamma_and_deltaf_artscat4): Added. This is the internal function that does the actual broadening calculation. (xsec_species): Updated. * src/absorption.h (LineRecord): Changed the way the foreign broadening and shift parameters are stored. Modified associated member functions and added new member functions to handle these parameters. (Gamma_foreign): Added. (N_foreign): Added. (Delta_foreign): Added. (BroadSpecName): Added. (NBroadSpec): Added. * src/abs_species_tags.h: Removed old #defines for SPECIES_INDEX_XX, since they were not used. 2012-09-05 Oliver Lemke * arts-2-1-259 * src/m_atmosphere.cc (GriddedFieldLatLonExpand): Properly handle the case if only one dimension (lat or lon) has only 1 element. 2012-09-05 Richard Larsson * arts-2-1-258 * doc/uguide/absorption_theory.tex: Moved the Zeeman text farther down place and updated parts of the text * src/m_zeeman.cc: Updated sligthly. 2012-09-04 Patrick Eriksson * arts-2-1-257 * doc/uguide/rte.tex: A bit more on dispersion and wrote a section on auxiliary data. 2012-09-04 Stefan Buehler * arts-2-1-256 * src/absorption.cc (find_broad_spec_locations): Added. It finds the positions of the broadening species (N2, O2, etc.) in abs_species. (xsec_species): Modified call parameters. Added: all_vmrs (instead of vmr), abs_species, this_species. Removed: abs_h2o_orig. We now have all species descriptions and VMRs available, so that we can calculate the broadening by the different gases explicitly. (The broadening calculation itself is not yet implemented.) * src/m_abs.cc (abs_coefCalc): Adapted to change in xsec_species. (abs_coefCalcSaveMemory): Ditto. (abs_xsec_per_speciesAddLines): Ditto. * src/m_abs_lookup.cc (abs_lookupCreate): Ditto. * src/m_zeeman.cc (abs_mat_per_speciesAddZeemanLBL): Adapted to changes in xsec_species. Commented out call to calculation of continua, since I believe it should not be here. This makes also several input arguments unnecessary, removed them. * src/methods.cc (abs_mat_per_speciesAddZeemanLBL): Updated. (abs_xsec_per_speciesAddLines): Updated. * src/absorption.h: Added enum for position indices of broadening species in abs_species (SPEC_POS_N2, SPEC_POS_O2, SPEC_POS_H2O, SPEC_POS_CO2, SPEC_POS_H2, SPEC_POS_He). * src/lineshapes.cc (Rosenkranz_Voigt_Kuntz6): Removed. (Rosenkranz_Voigt_Drayson): Ditto. 2012-09-04 Richard Larsson * arts-2-1-255 * src/m_abs.cc: Minute change. * src/m_zeeman.cc: For now the temporary abs_species only carry the "O2" tag. All other tag information is lost. 2012-09-03 Jana Mendrok * arts-2-1-254 * controlfiles/planetary_toolbox/: Added folder for collection of controlfiles for ESA planetary toolbox. * src/partition_function_data.cc: correction of C3H8 part.fct. and documentation. 2012-09-03 Patrick Eriksson * arts-2-1-253 * doc/uguide/rte.tex: Completed comments and section dealing with dispersion. * doc/uguide/winds.tex: Added reference to dispersion section, to apply a frequency specific shift. 2012-09-03 Patrick Eriksson * arts-2-1-252 * doc/uguide/rte.tex: To be continued ... * src/m_rte.cc (iyEmissionStandard): Code for RT step with polarised absorption changed. Usage of mult avoided for emission part, to make use of the fact that the b-vector contains zeros. * doc/uguide/wfuns.tex: Added fixme to explain diy_dx. 2012-09-03 Jana Mendrok * arts-2-1-251 * src/species_data.cc: Added new HITRAN species&isotopologues and other species required for ESA planetary study. Updated/revised documentation. Corrected isotopologue abundancies from JPL (such that have IR(main isoptope) given as 1). * src/partition_function_data.cc: Added partition function coefficients for new species/isotopologues. Updated documentation (FIXME: re-add code to derive polynomial coefficients from TIPS and JPL partition function data! It's a hassle trying to reproduce existing and consistently derive new coefficients, when this is gone!). Re-enacted use of ceoff tags for documenting data source. * src/absorption.[cc,h]: added output operator for SpeciesRecord (currently only outputs the species name tag. extend as needed.) * src/agendas.cc(iy_surface_agenda), src/workspace.cc(transmitter_pos): spellfixes in doc. 2012-09-03 Oliver Lemke * arts-2-1-250 * src/agendas.cc, src/methods.cc, src/workspace.cc: Restore alphabetical order of WSMs, WSVs and Agendas. 2012-09-03 Patrick Eriksson * arts-2-1-249 * doc/uguide/rte.tex: Extended, but not yet finished. * doc/uguide/*.tex: Some general cleaning. Removed some double-defined labels. Updated to new names of some WSV and WSM (blackbody_radiation_agenda, iyTransmissionStandard ...). Some agendas ended up in Index under WSV. * doc/uguide/reduction.tex: * doc/uguide/wfuns_sensor.tex: * doc/uguide/measerr.tex: * doc/uguide/wfuns_atm.tex: All removed, obselete (the content can be picked up from AUG-1). * doc/uguide/symbol_defs.tex: Removed the command SAbVec (not used, and probably just confusing). Changed the symbol for identity matrix to 1. This to avoid confusion where the identity matrix and the stokes vector appear in the same equation (I used for Stokes). 2012-08-31 Patrick Eriksson * arts-2-1-248 * doc/uguide/rte.tex: More updating: To reflect e.g.: upward observations outside the atmosphere is now accepted, iy_surface_agenda and ppath_agenda introduced. Work in progress. Surface sub-section moved to the surface chapter. 2012-08-31 Patrick Eriksson * arts-2-1-247 * doc/uguide/rte.tex: Started to revise this chapter. * doc/uguide/transmission.tex: New chapter, just started. 2012-08-31 Oliver Lemke * arts-2-1-246 * doc/uguide/absorption_theory.tex, src/abs_species_tags.cc, src/abs_species_tags.h, src/absorption.cc, src/absorption.h, src/continua.cc, src/m_abs.cc, src/m_abs_lookup.cc, src/methods.cc, src/nc_io_array_types.cc, src/nc_io_compound_types.cc, src/nc_io_instantiation.h, src/nc_io_types.h, src/partition_function_data.cc, src/species_data.cc, src/workspace.cc, src/xml_io_array_types.cc, src/xml_io_compound_types.cc, src/xml_io_instantiation.h, src/xml_io_types.h: Change terminology as proposed by Stefan. Isotope -> Isotopologue 2012-08-31 Stefan Buehler * arts-2-1-245 * GENERAL: Removed WSV abs_scalar_gas and the last remaining WSMs that had to do with it. * src/workspace.cc (abs_scalar_gas): Removed. * src/methods.cc (abs_scalar_gasCalcLBL): Removed. (abs_mat_per_speciesAddFromAbsCoefPerSpecies): Added. This method is similar to the old method abs_scalar_gasFromAbsCoef that has been removed. Used internally by abs_mat_per_speciesAddLBL. * src/m_abs.cc (abs_xsec_per_speciesAddLines): Do not calculate for Zeeman species. (They are ignored in the same way as species with empty line list are ignored.) (abs_mat_per_speciesAddFromAbsCoefPerSpecies): Added. (abs_scalar_gasFromAbsCoef): Removed. (Replaced by the above method.) (abs_scalar_gasCalcLBL): Removed. (Content is now part of abs_mat_per_speciesAddLBL.) (abs_mat_per_speciesAddLBL): Removed special handling (ignoring) of Zeeman species (now done in abs_xsec_per_speciesAddLines). * src/m_abs_lookup.cc (calc_lookup_error): Use abs_mat_per_speciesAddLBL instead of abs_scalar_gasCalcLBL. * src/m_optproperties.cc: Fixed errors in comments. * src/disort.h (dtauc_ssalbCalc): Fixed wrong absorption agenda name. * src/disort.cc: Fixed errors in comments. * src/montecarlo.h (mcPathTraceGeneral): Fixed wrong absorption agenda name. 2012-08-31 Patrick Eriksson * arts-2-1-244 * doc/uguide/atmosphere.tex: Updated. Added a short section on geo-location by lat_true and lon_true. Nothing about polarised absorption now mentioned in cloudbox section. Commented out second 3D figure (no additional information and chapter then fits into 6 pages). * doc/uguide/in_and_out.tex: New chapter. So far just treating data formats. * doc/uguide/concept.tex: Changed name of chapter to "Introduction". A few language fixes. Some short updates, such that radio links can be treated. Moved section on data formats to new chapter. Added three FIXME: \FIXME{Control file structure changed, update this section!} \FIXME{Revise this section after general.arts has been changed.} \FIXME{The tests are now structured differently. Update the text.} * controlfiles/general/general.arts: Changed abs_mat_per_speciesExtractFromLookup to abs_mat_per_speciesAddFromLookup (in a comment). 2012-08-31 Oliver Lemke * arts-2-1-243 * src/absorption.h (isContinuum): Use isdigit instead of isnumber to fix build on Linux. 2012-08-31 Oliver Lemke * arts-2-1-242 * src/absorption.h (IsotopeRecord): Add isContinuum(). Instead of demanding the abundance being -1 for continua, this test relies on the name of the continua tags not starting with a number like normal isotopes. * src/m_abs.cc (abs_xsec_per_speciesAddConts), src/continua.cc (check_continuum_model), src/absorption.h (abs_linesReadFromSplitArtscat), src/m_abs_lookup.cc (find_nonlinear_continua): Use isContinuum to detect continua. 2012-08-30 Richard Larsson * arts-2-1-241 * Naming and documentation of Zeeman and absorption: Changed some method names to be more consistent with intentions and removed abs_scalar_gas from documentation. * controlfiles/general/general.arts: Reflects new names. * controlfiles/artscomponents/zeeman/TestZeeman.arts: Reflects new names. * controlfiles/artscomponents/groundbased/TestWinds.arts: Reflects new names. * doc/uguide/polarization.tex: Changed sign on equation (4.80) to true sign (I think). * doc/uguide/Figs/abs_theory/Selection_Rule.pdf: Added Zeeman related explanatory figure. * doc/uguide/concept.tex: Changed from scalar to mat as example workspace variable. * doc/uguide/absorption.tex: Preliminary change from abs_scalar_gas to abs_mat_per_species. * doc/uguide/absorption_theory.tex: Preliminary Zeeman theory added. Please let me know if something is explained in a bad manner... * src/methods.cc: Name changes. * src/m_abs.cc: Name changes. * src/m_zeeman.cc: Name changes and slight code cleaning. 2012-08-29 Patrick Eriksson * arts-2-1-240 * controlfiles/artscomponents/transmission/TestTransmission.arts: Case expanded to also test iyLoopFrequencies. * src/m_rte.cc (iyLoopFrequencies): Finished and tested. Seems that we now have a general mechanism to handle dispersion and similar issues. 2012-08-29 Stefan Buehler * arts-2-1-239 * GENERAL: All test controlfiles work again. Warning: One method renamed (see below). * src/methods.cc (abs_mat_per_speciesAddFromLookup): Renamed from abs_mat_per_speciesExtractFromLookup. Updated documentation. Now takes f_grid as input instead of f_index. * src/m_abs_lookup.cc (abs_mat_per_speciesAddFromLookup): Now takes f_grid as input instead of f_index. Uses gridpos to find right index in frequency grid if called with only one frequency. * controlfiles/artscomponents/doit/TestDOIT.arts: Renamed abs_mat_per_speciesAddFromLookup. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: Ditto. * controlfiles/artscomponents/wfuns/TestWfuns.arts: Ditto. * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneralGaussian.arts: Ditto. * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: Ditto. * controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts: Ditto. * controlfiles/artscomponents/groundbased/TestGbased.arts: Ditto. * controlfiles/instruments/amsu/TestAMSU_generic.arts: Ditto. * controlfiles/instruments/mhs/TestMHS_generic.arts: Ditto. * controlfiles/instruments/odinsmr/TestOdinSMR.arts: Ditto. 2012-08-28 Patrick Eriksson * arts-2-1-238 * src/doit.cc (iy_interp_cloudbox_field): Added a check that should catch if DOIT would be used together with iyLoopFrequencies (which would fail). * src/m_rte.cc (iyLoopFrequencies): Created (not tested, below called iyRunMonochromatic). * src/m_doit.cc (CloudboxGetIncoming, CloudboxGetIncoming1DAtm): Adopted call of get_iy. * src/rte.cc (get_iy): As below, but had here to add f_grid as input. * src/m_surface.cc (iySurfaceRtpropAgenda): * src/rte.cc (iyb_calc): * src/m_rte.cc (iyCalc): Adopted call of iy_main_agenda. * src/m_rte.cc (iyTransmissionStandard, iyRadioLink): Adopted call of iy_transmitter_agenda. * src/agendas.cc: Added f_grid to iy_main_agenda and iy_transmitter_agenda. Introduced iy_sub_agenda. 2012-08-28 Oliver Lemke * arts-2-1-237 * WARNING!!!!!! WORK IN PROGRESS, removing f_index: All test cases that use abs_mat_per_speciesExtractFromLookup are currently not working! * src/methods.cc: (abs_scalar_gasCalcLBL, abs_mat_per_speciesCalcLBL, abs_mat_per_speciesInit, abs_mat_fieldCalc, abs_mat_per_speciesAddZeeman): Remove f_index. * src/agendas.cc: Change f_index to f_grid in abs_mat_per_species_agenda. Add f_grid to doit_mono_agenda, should be replaced by an f_mono WSV later. * src/optproperties.{cc,h} (opt_prop_add_abs_mat_per_species): Remove f_index. * src/doit.cc (cloud_RT_no_background, cloud_ppath_update1D_planeparallel): Change f_index to f_grid[Range(f_index, 1)] in abs_mat_per_species_agendaExecute call. Remove f_index from opt_prop_add_abs_mat_per_species. * src/m_abs.cc (abs_scalar_gasCalcLBL, abs_mat_per_speciesCalcLBL): Remove f_index. * src/m_abs_lookup.cc (abs_mat_fieldCalc): Adapt call to abs_mat_per_species_agendaExecute. Remove parameter f_index. (calc_lookup_error): Remove f_index argument (was -1) in call to abs_scalar_gasCalcLBL. * src/disort.{cc,h} (dtauc_ssalbCalc): Change f_index to f_mono. * src/m_disort.cc (ScatteringDisort): Pass f_grid[Range(f_index,1)] instead of f_index to dtauc_ssalbCalc. * src/m_zeeman.cc (abs_mat_per_speciesAddZeeman): Remove f_index. * src/m_montecarlo.cc (mc_IWP_cloud_opt_pathCalc): Pass f_mono to iwp_cloud_opt_pathCalc. (MCGeneral): Pass f_mono instead of f_index to mcPathTraceGeneral. * src/montecarlo.{cc,h} (clear_rt_vars_at_gp, cloudy_rt_vars_at_gp, mcPathTraceGeneral, mcPathTraceIPA): Replace f_index with f_mono. (iwp_cloud_opt_pathCalc): Replace f_grid+f_index by f_mono. * controlfiles/artscomponents/absorption/TestAbsDoppler.arts: Remove f_index. 2012-08-28 Patrick Eriksson * arts-2-1-236 * src/m_rte.cc (iyRunMonochromatic): Just started. * src/doit.cc (cloud_RT_surface): Added a comment. * src/m_montecarlo.cc (MCGeneral): Introduced f_mono (to avoid forming this vector repeatedly). * src/rte.cc (get_iy_of_background): Removed outdated comments. 2012-08-27 Patrick Eriksson * arts-2-1-235 * src/m_surface.cc (iySurfaceRtpropAgenda): * src/m_montecarlo.cc (MCGeneral, MCIPA): Adopted call of surface_rtprop_agendaExecute. * src/doit.cc (cloud_RT_surface, cloud_ppath_update1D) (cloud_ppath_update1D_noseq): f_grid now input to cloud_RT_surface. * src/rte.cc (get_iy_of_background): Adopted call of agendas listed below. * src/agendas.cc: Added f_grid as input to iy_cloudbox_agenda, iy_surface_agenda and surface_rtprop_agenda. 2012-08-27 Patrick Eriksson * arts-2-1-234 * transmitter_pos now input to yCalc and converted to rte_pos2, following sensor_pos/rte_pos. This allowed that mblock_index now is completely invisible for the user. In addition, rte_pos2 is now defined throughout the rt part and more complex set-ups are possible (such as considering surface reflections of transmitted signals). * controlfiles: Many cfiles had to be adopted. * src/m_doit.cc: Adopted to changes below. rte_pos2 consistently set to an empty vector (no transmitter can be involved for DOIT). * src/m_ppath.cc (ppathCalc): * src/m_rte.cc (iyCalc, iyEmissionStandard, iyRadioLink) (iyTransmissionStandard): Basically replaced mblock_index with rte_pos2. * src/m_jacobian.cc (jacobianCalcAbsSpeciesPerturbations) (jacobianCalcPointingZaRecalc) (jacobianCalcTemperaturePerturbations): Added transmitter_pos as input argument and passed on to iyb_calc. * src/rte.cc (iyb_calc): Now using transmitter_pos. * src/m_rte.cc (yCalc): Now using transmitter_pos (and checks that size is empty or match sensor_pos). * src/agendas.cc: Replaced mblock_index with rte_pos2 for iy_main_agenda and ppath_agenda. And added rte_pos2 for iy_surface_agenda. * src/workspace.cc: Updated/extended text for transmitter_pos and rte_pos2. 2012-08-27 Patrick Eriksson * arts-2-1-233 * Removed everything associated with the idea of having senesor_response_array. * src/m_sensor.cc (sensor_responseFromArrayData): Removed. (sensor_response_arraySingle): Removed. * src/workspace.cc (define_wsv_data): Removed all WSV with sensor_response_array. 2012-08-27 Patrick Eriksson * arts-2-1-232 * controlfiles/artscomponents/ppath/TestPpath1/2/3D.arts: Adopted. * src/montecarlo.cc (iwp_cloud_opt_pathCalc): As below + added f_grid as input argument. * src/m_montecarlo.cc (MCIPA): * src/doit.cc (cloud_ppath_update1D, cloud_ppath_update1D_noseq) (cloud_ppath_update3D): Adopted call of ppath_step_agenda. * src/rte.cc (get_ppath_blackrad, get_ppath_abs) (get_ppath_trans, get_ppath_trans2): Now not using f_index. * src/m_rte.cc (iyEmissionStandard, iyRadioLink) (iyTransmissionStandard): f_index totally removed. * src/rte.cc (defocusing_general_sub, defocusing_general) (defocusing_sat2sat): f_index changed to f_grid. * src/m_ppath.cc: * src/ppath.cc: * src/refraction.cc: f_index changed to f_grid everywhere used. * src/m_refraction.cc (refr_indexFreeElectrons): Now not using f_index. On-line doc updated accordingly. * src/agendas.cc: Replaced f_index with f_grid as input to ppath_agenda, ppath_step_agenda and refr_index_agenda. 2012-08-23 Patrick Eriksson * arts-2-1-231 * TODO: Some points fixed and removed. 2012-08-23 Patrick Eriksson * arts-2-1-230 * New version of transmission WSM appears ready. The approach has been changed. Treatment of cloudbox built-in. This should be more efficient calculation-wise, and also makes the iy_aux feature more useful (as data for the complete path through the atmosphere are returned). * src/m_rte.cc (iyTransmissionStandard): The method handles now also paths going through the cloudbox. Added particle extinction as aux var. (iyTransmissionStandardCloudbox): Code has been inactive. Now completely removed. * src/cloudbox.cc (is_gp_inside_cloudbox): atmosphere_dim is now an input argument. Default is 3, as previously assumed by the function. (is_inside_cloudbox): Also this function assumes 3D (without any warning). Added comment in header and assert to warn about this. * src/m_cloudbox.cc (cloudboxOff): The method now also "touches" pnd_field, use_mean_scat_data and scat_data_raw (to handle all cloud variables that can be input to a iy_main_agenda-method). * src/rte.cc (get_ppath_trans2): New. * src/rte.cc (get_ppath_pnd, get_ppath_cloudrtvars): Both functions replaced by other methods. Removed. 2012-08-23 Jana Mendrok * arts-2-1-229 * src/absorption.h (LineRecord): Added info on ARTSCAT-4 format. 2012-08-21 Patrick Eriksson * arts-2-1-228 * src/rte.cc (get_ppath_partext): Started (not finished, not yet used). * src/special_interp.cc (interp_cloudfield_gp2itw): Changed function to operate on GridPos, instead of ArrayOfGridPos. * src/physics_funcs.cc (barometric_heightformula): Moved the function from cloudbox.cc. This function has hard-coded parameters that also are defined in constants.cc. Should be fixed! 2012-08-21 Jana Mendrok * arts-2-1-227 * src/m_atmosphere.cc (AtmFieldsCalc): remove zeropadding for temperature profile (zeropadding still done for VMR and only VMR). * src/methods.cc (AtmFieldsCalc): Documented zeropadding/extrapolation behaviour. * src/absorption.h (CalculatePartitionFctRatio): Improved error message (runtime error when partition function negative). 2012-08-21 Patrick Eriksson * arts-2-1-226 * src/m_atmosphere.cc (basics_checkedCalc): Added check that all temperatures > 0. A zero temperature not catced elsewhere. For example, I got a segementation fault for MC! 2012-08-21 Patrick Eriksson * arts-2-1-225 * controlfiles/artscomponents/radiolink/TestRadioLink2.arts: A version using iyCalc. All aux vars included. So far just used for manual tests. * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Adopted and header slightly expanded. * src/m_rte.cc (iyRadioLink): Dispersion functionality removed. Added handling of pressure, temperature, VMR and absorption aux data. * src/rte.cc (iyb_calc): Corrected error messagge around iy_aux. * src/workspace.cc: Removed dispersion_do (the idea is to later add dispersion in a general way (if possible?)). 2012-08-20 Patrick Eriksson * arts-2-1-224 * controlfiles/artscomponents/radiolink/TestRadioLink_Old.arts: To temporary get a copy of old version of file below. * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Partly rewritten to use yCalc and check some aux vars. * src/m_rte.cc (iyRadioLink): Fixed two bugs associated with dispersion. 2012-08-20 Oliver Lemke * arts-2-1-223 * src/absorption.cc (xsec_species): Initial hack to support calculation with an artscat version 4. Air broading is currently calculated by weighting N2 and O2 by 0.79/0.21. The weighting is applied to width, temperature exponent and pressure shift. Most likely not the correct way to do it, but results are surprisingly close to calculations based on Hitran (ClearSky test case within 0.004 K). 2012-08-20 Oliver Lemke * arts-2-1-222 * src/absorption.cc (LineRecord::ReadFromArtscat4Stream): Read quantum numbers from artscat4 files. Set Tgam to same value as in Hitran for now. 2012-08-20 Patrick Eriksson * arts-2-1-221 * src/rte.cc (get_ppath_rtvars): Obselete and removed. * src/m_rte.cc (iyRadioLink): Now using new get_ppath_XX functions. Some features reactivated. No proper tests performed. * controlfiles/artscomponents/transmission/TestTransmission.arts: Demonstration of iy_aux added. * src/m_rte.cc (iyTransmissionStandard): Code now synced with last changes in iyEmissionStandard. Set of aux vars extended. * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: Check of radiance reactivated, now using error extracted from y_aux. * src/m_rte.cc (iyMC): Error now exported as part of iy_aux. This done by setting iy_aux_vars to: [ "Error (uncorrelated)" ] (yCalc): Uncorrelated error in y_aux detected automatically and sensor response applied correspondingly. 2012-08-17 Patrick Eriksson * arts-2-1-220 * Some unfinished work around aux vars and y_unit. * src/rte.cc (iyb_calc): Extended. * src/m_rte.cc (iyMC): iy_aux introduced. Only one option: Error. (iyApplyYunit): Extended. * src/methods.cc: Added text for MCGeneral around y_unit and mc_error. For yCalc some explanation around y_unit and y_aux. 2012-08-17 Richard Larsson * arts-2-1-219 * src/absorption.{h,cc} and src/m_zeeman.cc: Quantum numbers are now stored as Index(s) in LineRecord. 2012-08-17 Patrick Eriksson * arts-2-1-218 * controlfiles/artscomponents/clearsky/TestClearSky.arts: Added "Radiative background" as aux var. * controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts: Added some new variables to iy_aux_vars. * src/m_rte.cc (iyEmissionStandard): Added special code for vector unpolarised case (only for radiance, no change for jac.). * src/rte.cc (trans_step_std): Removed (was not used). * src/lin_alg.cc (matrix_exp): Extended header text (to make clear that diagonal case is handled efficiently). (rte_step_std): In header text, removed suggestion to use for "clearsky" (following test by Richard). 2012-08-16 Oliver Lemke * arts-2-1-217 * src/rte.cc (get_ppath_abs): Use l_ws and l_abs_mat_per_species_agenda to fix OpenMP crash. 2012-08-16 Patrick Eriksson * arts-2-1-216 * src/m_rte.cc (iyEmissionStandard): Extensive changes, following modifications in rte.cc. Jacobians should now be fully OK again (but only for unpol. absorption, there is a runtime error if absorption is polarised). * src/rte.cc: Cleaning and restructuring of get_ppath_XXX and iy_transmission_XXX: (iy_transmission_mult): Now only function of this type. (iy_transmission_for_scalar_tau, iy_transmission_mult_scalar_tau): Removed. (get_ppath_abs, get_ppath_trans, get_ppath_blackrad): New functions, that will replace get_ppath_rtvars. * src/logic.cc: A few cosmetic changes. 2012-08-16 Oliver Lemke * arts-2-1-215 * Tweaking parallelization. TestClearSky ~1.8x faster. * src/rte.cc (get_ppath_rtvars): Parallelize over pressure levels. * src/m_rte.cc (yCalc): Only parallelize if nmblock >= numthreads. 2012-08-16 Richard Larsson * arts-2-1-214 * src/workspace.cc, src/agendas.cc and src/methods.cc: Updated documentation regarding the abs_mat_per_species implementation. 2012-08-15 Oliver Lemke * arts-2-1-213 * src/lineshapes.cc: Remove redundant parameter nf from lineshape and normalization functions. Add const to input parameters of lineshape and normalization functions. Make local variables const where possible. Might help the compiler to do better optimizations. (lineshape_norm_no_norm): Remove unnecessary loop. * src/absorption.h: Make input parameters of lsf_type and lsnf_type const. Remove redundant argument nf from lsf_type and lsnf_type. * src/absorption.cc (xsec_species): Remove redundant parameter nfls. 2012-08-15 Richard Larsson * arts-2-1-212 * src/lin_alg.cc (matrix_exp): Optimized for diagonal matrices. 2012-08-15 Patrick Eriksson * arts-2-1-211 * src/m_surface.cc (iySurfaceRtpropAgenda): * src/rte.cc: * src/m_rte.cc: In short, changed iy_aux to be a ArrayOfTensor4 (to allow storage of complete extinction matrices). (iyEmissionStandard): Changed iy_aux_vars Radiance and Transmission to iy and Optical depth, respectively. * src/array.h: Defined ArrayOfArrayOfTensor4. 2012-08-14 Richard Larsson * arts-2-1-210 * Changes to remove abs_scalar_gas_agenda, and opt_prop_add_gas_agenda. Replaced these by internal function and abs_mat_per_species_agenda. This in turn means changes in several test cases. * src/doit.cc, src/montecarlo.cc, src/disort.cc: Unresolved issue: How to handle magnetic fields in these methods? Current solution: rte_mag = [-1], i.e. [Ignore flag]. * src/m_rte.cc: Changes how the extinction matrix is handled in the radiative transfer equation. Unresolved issues: (1) Jacobians are in this version treated as per the scalar case. (2) Some aux-variables are ignored due to changes in how iy is calculated --- and because I do not fully understand how to handle iy_aux. * src/rte.cc: get_ppath_atmvars now demands and returns magnetic field variables. In get_ppath_rtvars ppath_abs, ppath_tau, total_tau replaces their scalar counterparts. Dimensions are also changed so that ppath_abs have dimensions: [ppath_vmr.nrows(), f_grid.nelem(), stokes_dim, stokes_dim, ppath.np]. In get_ppath_cloudrtvars the magnetic field is treated as for wind and rte_mag = [Ignore flag]. iy_transmission_for_scalar_tau → iy_transmission_for_tensor3_tau. iy_transmission_mult_scalar_tau → iy_transmission_mult_tensor3_tau. Warning: naming convention is confusing with both iy_transmission_mult and iy_transmission_mult_tensor3_tau taking arguments (Tensor3, ConstTensor3View, ConstTensor3View). * src/workspace.cc: added "abs_mat_field" for lookup and "abs_mat_per_species" because it is important for all other changes made. * src/methods.cc: Added "abs_mat_per_speciesAddZeeman". Changed relevant things from scalar absorption to matrix absorption. * src/agendas.cc: Removed opt_prop_add_gas_agenda. Changed abs_scalar_gas_agenda to abs_mat_per_species_agenda. * src/optproperties.cc: Added opt_prop_add_abs_mat_per_species to replace pot_prop_add_gas_agenda. * src/m_abs.cc: abs_mat_per_speciesInit method to initiate abs_mat_per_species to the correct size with values of 0. abs_mat_per_speciesCalcLBL now gets the extinction matrix for all non-Zeeman species. Warning: using this and only this method for absorption when Zeeman species are present will result in ignorance of all Zeeman species. * src/m_zeeman.cc: abs_mat_per_speciesAddZeeman works just like abs_mat_per_speciesCalcLBL though only for Zeeman species. If rte_mag = [Ignore flag], the Zeeman species will be treated as per the scalar case. * src/m_abs_lookup.cc: Changed abs_lookupCreate to completely ignore Zeeman species for now. Added abs_mat_per_speciesExtractFromLookup to extract scalar absorption and fit it with abs_mat_per_species for now. Changed abs_fieldCalc to use the new agenda. This file completely ignores the Zeeman effect for now with rte_mag = [Ignore flag]. * Small changes in: src/gas_abs_lookup.cc, src/m_doit.cc, src/m_montecarlo.cc and m_optproperties.cc. * doc/uguide/polarization.tex: Changed e_v in theory chapter to reflect Mishchenko. 2012-08-13 Patrick Eriksson * arts-2-1-209 * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Call of VectorCompare commented out temporarily. * src/m_rte.cc (iyRadioLink): Started to update this method with respect to iy_aux. Not ready. 2012-08-13 Patrick Eriksson * arts-2-1-208 * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/transmission/TestTransmission.arts: * src/m_rte.cc (iyTransmissionStandard, iyRadioLink): iy_space_agenda replaced by iy_transmitter_agenda. * src/agendas.cc: Added iy_transmitter_agenda. * controlfiles/instruments/odinsmr/TestOdinSMR_119ghz.arts: Removed. * controlfiles/artscomponents/transmission/TestTransmission.arts: * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: * controlfiles/artscomponents/doit/TestDOIT.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: * controlfiles/artscomponents/surface/TestSurface.arts: * controlfiles/general/general.arts: * src/workspace.cc: * src/rte.cc: * src/m_surface.cc: * src/m_rte.cc: * src/m_fos.cc: * src/m_jacobian.cc: * src/m_doit.cc: Adopted to changes below. * src/m_rte.cc (iyTransmissionStandard): iyBeerLamberStandard renamed and extended to handle new iy_aux. * src/m_rte.cc (iyEmissionStandard): Removed Clearsky from name, following change of iy_clearsky_agenda. * src/agendas.cc: Renamed iy_clearsky_agenda to iy_main_agenda. This as not all WSM for this agenda are striclty clearsky, and to indicate that this is "the entry point" for RT calculations. 2012-08-10 Patrick Eriksson * arts-2-1-207 * Basic changes for extraction of additional data ready, and iyEmissionStandardClearsky modified accordingly. Aux feature presently lacking for other iy_clearsky_agenda methods. * controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts: Updated. Includes new aux variables and shows that ppath is directly avaliable for saving. * src/m_jacobian.cc: Adopted several methods to change of iyb_calc. * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: * controlfiles/artscomponents/surface/TestSurface.arts: * src/m_surface.cc (iySurfaceRtpropAgenda): * src/rte.cc (iyb_calc): Adopted to change of iy_clearsky_agenda. * src/m_rte.cc: Adopted several methods to change of iy_clearsky_agenda. (iyEmissionStandardClearsky): Added VMR, absorption and radiative background as auxilary variables. * src/agendas.cc: For iy_clearsky_agenda, added ppath as output and iy_aux_vars as input. 2012-08-09 Patrick Eriksson * arts-2-1-206 * Core functionality for new iy_aux in place, as well as basic documentation and control file examples. * controlfiles/instruments/avhrr/TestAVHRR.arts: * controlfiles/instruments/hirs/TestHIRS.arts: y_unitApply -> yApplyYunit. * controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts: Updated. Includes demonstration of new iy_aux. * controlfiles/artscomponents/clearsky/TestClearSky.arts: Extended to also test new y_aux functionality. * src/array.h: Defined ArrayOfArrayOfVector. * controlfiles/general/general.arts: iy_aux_vars set to be empty. * src/rte.cc (iyb_calc): Now handles new version of iy_aux. * src/m_rte.cc (yFromIy): Removed. Realised that this method implies strong restrictions for y_aux, which makes the method of little interest. The users need to learn the distinction between y and iy variables ;-) (iyEmissionStandardClearsky): Modified version of the method. Handling some first aux variables. (yCalc): Now handles new version of y_aux. (yApplyYunit): y_unitApply renamed. (iyApplyYunit): New WSM. * src/workspace.cc (define_wsv_data): Changed y_aux_vars to iy_aux_vars. 2012-08-08 Patrick Eriksson * arts-2-1-205 * src/m_fos.cc: FOS WSM deactivated. Will later be revised and re-activated. * src/m_doit.cc (CloudboxGetIncoming, CloudboxGetIncoming1DAtm): Now using get_iy. * src/rte.cc (get_iy): New. A replacement for iy_clearsky_basic_agenda. * src/m_surface.cc (iySurfaceRtpropAgenda): Removed part associated with iy_clearsky_basic_agenda. * src/m_rte.cc (iyEmissionStandardClearskyBasic): Removed. * src/agendas.cc: Removed iy_clearsky_basic_agenda. * src/rte.cc (iyb_calc): Now calling iy_clearsky_agenda directly, instead if using iyCalc (gives better overview of code). 2012-08-08 Patrick Eriksson * arts-2-1-204 * Changes in many files around iy_aux. Largely removed/de-activated, to simplify the introduction of a new approach. Also some cleaning around diy_dx. * src/workspace.cc: Type of iy_aux and y_aux changed, y_aux_vars introduced. * src/agendas.cc: jacobian_y_agenda removed (obselete since some time!). 2012-08-07 Patrick Eriksson * arts-2-1-203 * src/workspace.cc: iy_variable and iy_aux_variable removed. * src/m_rte.cc (iyRadioLink): * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Adopted to change above. 2012-08-07 Patrick Eriksson * arts-2-1-202 * controlfiles/artscomponents/doit/TestDOIT.arts: * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts: * controlfiles/instruments/odinsmr/TestOdinSMR.arts: * controlfiles/artscomponents/surface/TestSurface.arts: * src/rte.cc: * src/m_rte.cc: * src/m_doit.cc: * src/m_fos.cc: * src/m_surface.cc: * src/methods.cc: * src/agendas.cc: Adopted to removal of iy_error, iy_error_type and y_error. * src/workspace.cc: Removed iy_error, iy_error_type and y_error. The error will be part of iy_aux and y_aux. 2012-07-31 Jana Mendrok * arts-2-1-201 * src/m_atmosphere.cc (p_gridFromZRaw): Downgraded do-not-include-negative-altitudes to only be an option (for backward consistency, default: DO exclude). (FieldFromGriddedFieldCheckLatLonHelper): bugfix in chk_if_equal calls. * src/methids.cc (p_gridFromZRaw): Documentation adapted. 2012-07-27 Oliver Lemke * arts-2-1-200 * src/m_atmosphere.cc (AtmFieldsCalc): Use new regridding functions for 3D case. 2012-07-27 Oliver Lemke * arts-2-1-199 * controlfiles/atmosphere_data/tropical.*.xml: Add grid names. * src/m_atmosphere.cc (AtmFieldsCalc): Use new regridding functions for 1D case. 2012-07-27 Oliver Lemke * arts-2-1-198 * controlfiles/artscomponents/clearsky/TestClearSky.arts: Compare to reference calculation. * controlfiles/artscomponents/clearsky/yREFERENCE_{1,2,3}D.xml: Add reference values for y. 2012-07-27 Oliver Lemke * arts-2-1-197 * src/abs_species_tags.cc (SpeciesTag::SpeciesTag): Fix parsing bug. 2012-07-26 Oliver Lemke * arts-2-1-196 * src/methods.cc: Change lat_true/lon_true to lat_grid/lon_grid for WSM FieldFromGriddedField. * src/m_atmosphere.cc: (FieldFromGriddedField): Take cases into account where lon_grid.nelem()==0 || (lon_grid.nelem()==0 && lat_grid.nelem()==0). The gridded field should then have exactly size 1 in those dimensions. (FieldFromGriddedFieldCheckLatLonHelper): Added. * src/check_input.cc (chk_size): Use singular in error message for VectorView. 2012-07-26 Oliver Lemke * arts-2-1-195 * src/m_atmosphere.cc (GriddedFieldPRegrid): Turn off 0 boundary condition for zeropadding. Fix bug in condition for selection of interpolation loop. 2012-07-25 Oliver Lemke * arts-2-1-194 * check_input.{h,cc}: (chk_interpolation_grids_loose), (chk_interpolation_grids_loose_no_data_check): No extrapolation for zeropadded case. * src/m_atmosphere.cc (GriddedFieldPRegridHelper,GriddedFieldPRegrid): Fix grid length off-by-one bug. 2012-07-25 Oliver Lemke * arts-2-1-193 * src/abs_species_tags.{cc,h} (SpeciesTag): Add Zeeman flag. To turn on Zeeman calculation for a species, "-Z" can be appended to it's name: "O2-Z" or "O2-Z-66". (SpeciesTag::Name): Add Z to name if Zeeman is true. * src/methods.cc: Update doc for SpeciesSet. 2012-07-24 Patrick Eriksson * arts-2-1-192 * src/special_interp.cc (rte_pos2gridpos): Added checks removed below. * src/m_atmosphere.cc (InterpAtmFieldToRtePos): Removed checks of interpolation grids. * This fixes a bug identified by Jana. 2012-07-24 Jana Mendrok * arts-2-1-191 * src/m_abs.cc: - Renamed abs_linesReadFromHitran -> abs_linesReadFromHitranPre2004, abs_linesReadFromHitran2004 -> abs_linesReadFromHitran - (abs_speciesDefineAllInScenario): Allow file extensions [.xml,.xml.gz,.gz]. Search also in include paths. * src/m_atmosphere.cc: - Renamed p_gridFromAtmRaw -> p_gridFromZRaw (as z_field_raw is the actual data p_grid is expected to be taken from). Bugfixed (extract correct extend) and made robust (also allow z_field_raw with decreasing z values). open issue: why are levels with z<0 removed, is that necessary for any module of ARTS? * src/methods.cc: Updated/corrected according to above. * src/workspace.cc: spell fixes reciever->receiver. * doc/uguide/gridded_field_gridnames.txt: some additions. 2012-07-24 Oliver Lemke * arts-2-1-190 * src/lin_alg.{cc,h} (matrix_exp): Add default value 10 for q. Add special case for n == 1. 2012-07-24 Oliver Lemke * arts-2-1-189 * src/check_input.{cc,h} (chk_interpolation_grids): Add bool flag to indicate that this interpolation is in log space. In case of error, also output the original non-log values for user-friendliness. (chk_interpolation_pgrids): Pass true for log flag to chk_i_g. 2012-07-24 Oliver Lemke * arts-2-1-188 * src/m_atmosphere.cc (GriddedFieldLatLonExpand,GriddedFieldPRegrid, GriddedFieldLatLonRegrid), src/methods.cc: Handle situation correctly if gfraw_in and gfraw_out are the same variable. 2012-07-20 Patrick Eriksson * arts-2-1-187 * src/m_surface.cc (surfaceLambertianSimple): Can now only be used for 1D. Anyhow quite strange for 2D and 3D. And not obvious how to consider surface topography for 3D. (This finishes this revision of the surface part.) 2012-07-18 Patrick Eriksson * arts-2-1-186 * src/m_surface.cc (surfaceFlatRefractiveIndex) (surfaceFlatReflectivity, surfaceFlatScalarReflectivity): Added some input variables, needed to call extended version of surface_specular_los. * src/surface.cc (surface_specular_los): Now consider surface topography in calculation of specular direction. * src/m_surface.cc (iySurfaceRtpropAgenda): Removed everything connected to calculation of surface normal. 2012-07-18 Oliver Lemke * arts-2-1-185 * src/math_funcs.{cc,h}, src/matpackI.{cc,h} (cross3): Promote cross3 to matpackI as it is quite general. Adapt argument types to fit with the other functions. 2012-07-18 Oliver Lemke * arts-2-1-184 * src/methods_aux.cc, src/methods.h (MdRecord): msuppress_header -> muses_templates SupressHeader() -> UsesTemplates() (MdRecord::MdRecord): Throw runtime_error if supergeneric methods use type "Any" but muses_templates is set to false. * src/make_auto_md_h.cc (write_method_header): mdd.SuppressHeader() -> mdd.UsesTemplates() * src/methods.cc: SUPPRESSHEADER > USES_TEMPLATES (define_md_data_raw): Remove unnecessary arguments from methods that use the defaults anyway such as SETMETHOD(false), AGENDAMETHOD(false), USES_TEMPLATES(false) 2012-07-17 Richard Larsson * arts-2-1-183 * src/matpackIII.{h,cc} (mult): Elementwise vector multiplied with Matrix to create Tensor 3. Useful, e.g., for frequency gridded absorption vector multiplied by normalized Stokes extinction matrix to get extinction matrix as a function of frequency. 2012-07-16 Patrick Eriksson * arts-2-1-182 * src/m_surface.cc (iySurfaceRtpropAgenda): Some further work on including surface tilt in calculation of specular direction. The code has still no practical impact. * src/math_funcs.cc (cross3): Renamed the function also in header text. * src/ppath.cc (do_gridcell_3d): Now using LACC for comparison between l and ltan. This solved a case that failed. The problem was linked to the fact that the tangent point was exactly on top of a lat/lon crossing. This change fixed it. 2012-07-12 Oliver Lemke * arts-2-1-181 * absorption.cc: Add quantas to output operator of LineRecord. Make the output operator of LineshapeSpec a bit more useful. * src/math_funcs.{cc,h}: Rename cross to cross3 because it's limited to Vectors with 3 elements. 2012-07-12 Oliver Lemke * arts-2-1-180 * src/methods.cc: Add WSM documentation to GriddedFieldLatLonExpand, GriddedFieldPRegrid and GriddedFieldLatLonRegrid. * src/m_atmosphere.cc (GriddedFieldPRegridHelper): Add missing parameters to doxygen docs. 2012-07-12 Oliver Lemke * arts-2-1-179 * src/m_atmosphere.cc (GriddedFieldLatLonExpand): Implement for GriddedField2, GriddedField3, GriddedField4 and ArrayOfGriddedField3. 2012-07-12 Oliver Lemke * arts-2-1-178 * src/m_atmosphere.cc (FieldFromGriddedField): Implement for GriddedField2->Matrix, GriddedField3->Tensor3, GriddedField4->Tensor4 and ArrayOfGriddedField3->Tensor4. 2012-07-12 Oliver Lemke * arts-2-1-177 * src/methods.cc, src/m_atmosphere.cc: No GriddedFieldPRegrid for GriddedField2, of course... * src/m_atmosphere.cc: Implement GriddedFieldPGrid for GriddedField4 and ArrayOfGriddedField3. (GriddedFieldLatLonRegrid): Fix typo bug in implementation for GriddedField4. Simplify the implementation for ArrayOfGriddedField3. 2012-07-11 Oliver Lemke * arts-2-1-176 * src/check_input.{cc,h}: Add chk_interpolation_pgrids* functions for pressure grids. When p2gridpos_poly is used for log conversion, the prior checks have to be done in log scale, too. (chk_interpolation_grids_loose): Split into two functions: chk_interpolation_grids_loose_no_data_check and chk_interpolation_grids_loose_check_data. * interpolation_poly.cc (gridpos_poly_longitudinal): Change boundary checks to include outer points of new_grid. * src/m_atmosphere.cc: (GriddedFieldPRegridHelper, GriddedFieldPRegrid): Add support for zeropadding. (AtmFieldsCalc): Use chk_interpolation_pgrids for pressure grids. 2012-07-10 Patrick Eriksson * arts-2-1-175 * src/rte.cc (los3d): New. (vectorfield2los): New. (None tested practically) 2012-07-10 Oliver Lemke * arts-2-1-174 * src/m_atmosphere.cc: Add GriddedFieldPRegridHelper for pressure grid interpolations. Implement GriddedFieldPRegrid for GriddedField3. Implement GriddedFieldLatLonRegrid for ArrayOfGriddedField3. * CMakeLists.txt: Add GCC_WARN_SHADOW and CLANG_WARN_SUSPICIOUS_IMPLICIT_CONVERSION flags for Xcode. 2012-07-09 Oliver Lemke * arts-2-1-173 * src/m_atmosphere.cc: (GriddedFieldLatLonRegridHelper): Add common function for calculation of gp_lat, gp_lon and interpolation weights shared among all GriddedFieldLatLonRegrid functions. (GriddedFieldLatLonRegrid): Add overloaded versions for GriddedField2 and GriddedField4. Use new helper for GriddedField3 version. 2012-07-09 Oliver Lemke * arts-2-1-172 * CMakeLists.txt: Always set Wno-unknown-pragmas. 2012-07-09 Oliver Lemke * arts-2-1-171 * src/interpolation_poly.{cc,h}: Add gridpos_poly_longitudinal and gridpos_poly_cyclic_longitudinal for longitude interpolation with support for shifting the original grid by +360 / -360 if necessary and cyclic interpolation for global grids. * src/m_atmosphere.cc (GriddedFieldLatLonRegrid): Use gridpos_poly_longitudinal. * CMakeLists.txt: Set Xcode compiler flags via attribute. Remove unnecessary mark_as_advanced. 2012-07-05 Oliver Lemke * arts-2-1-170 * src/absorption.{cc,h}: Fix comments. 2012-07-05 Oliver Lemke * arts-2-1-169 * src/absorption.{cc,h}: Store lower/upper state global/local quanta in LineRecord. (LineRecord::ReadFromHitran2004Stream): Store the quantas. 2012-07-05 Oliver Lemke * arts-2-1-168 * CMakeLists.txt, README: Add option WITH_XCODE_LIBCPP to enable C++11 and libc++ in Xcode. Use dwarf-with-dsym debug format in Xcode to get the static libraries properly symbolized for debugging. 2012-07-03 Oliver Lemke * arts-2-1-167 * doc/doxygen/CMakeLists.txt: Rebuild of the documentation was not triggered after source changes. Add dependencies to all source files. Remove target apidoc_forced. Remove latex related code because we don't build it anyway. * doc/doxygen/Doxyfile.in: Update config file to doxygen 1.7. Add MARKDOWN_SUPPORT=NO. On doxygen 1.8, the tags on the mainpage are not substituted properly. Currently commented out because it generates a warning on earlier doxygen versions. 2012-07-02 Oliver Lemke * arts-2-1-166 * ChangeLog: Cleanup. Remove arts-2-1-162 attributed to me (but not done by me) which was a duplicate entry of arts-2-1-164. Restore version number arts-2-1-162 of Patrick's last commit which was falsely changed to arts-2-1-163. Restore the commit date for arts-2-1-161 to 2012-06-24. Add a dummy entry for the now non-existent arts-2-1-163 to get the version numbering back in line. 2012-07-01 Jana Mendrok * arts-2-1-165 * src/check_input.h (chk_atm_field): Corrected default value of chk_lat90 flag (of course, as default we DO want to check consistency at poles!). 2012-06-30 Jana Mendrok * arts-2-1-164 * src/check_input.[cc,h] (chk_atm_field): Added flag to switch off no-variation-with-longitude- at-poles check (cause this requirement does not apply for fields that are part of a vector fields with N&E components). (chk_atm_vecfield_lat90): Added. Does no-variation-with-longitude- at-poles check for total vector length of fields with N&E components. Allows some deviation (1e-2%) to avoid numerics causing a failed check. * src/m_atmosphere.cc (basics_checkedCalc): Adapted atm_field checks for wind and magnetic field fields to above changes. 2012-07-02 Oliver Lemke * arts-2-1-163 * Bump. 2012-06-29 Patrick Eriksson * arts-2-1-162 * controlfiles/artscomponents/clearsky/TestClearSky.arts: A complete test designed. The "compare" calls not activated as radiances will change when surface tilt will be considered in surface part. * src/ppath.cc (do_gridcell_2d,do_gridcell_3d): For surface crossing part, changed to lt * arts-2-1-161 * src/agenda_class.cc (Agenda::check): Delay check for custom-defined agendas. (Agenda::execute): Adapt runtime error message if the user tries to execute an agenda that was created by AgendaCreate. * methods.cc (define_md_data_raw): Set PASSWSVNAMES to true for Copy. * src/m_copy.cc (Copy): When copying an agenda set the name of the output agenda to its variable name. * ChangeLog: Reconstruct missing entry for arts-2-1-160 from svn log. 2012-06-28 Jana Mendrok * arts-2-1-160 * src/m_surface.cc (complex_nFromGriddedField4): More checks (GF grid names, requested lat/lon covered), use grid position indices, shift field.lon by +/-360deg if requested lon is off. * src/geodetic.[cc,h] (lon_shiftgrid): Added function for shifting longitude grid to cover the 'space' of a given longitude (providing a fix to the issue that lon and lon+360 refer to same meridian, but both can occur as valid values in ARTS) * controlfiles/artscomponents/surface/complex_n_field.xml: Adapted to changed requirements on grid names. 2012-06-28 Patrick Eriksson * arts-2-1-159 * controlfiles/artscomponents/clearsky/TestClearSky.arts: Started to reformulate this test. Before it did a bit of everything, including some jacobians and absorption lookup table. The aim now is to make a basic general test of yCalc for for 1D, 2D and 3D. Work in progress. * controlfiles/artscomponents/pencilbeam/TestPencilBeam.arts: Extended the header text somewhat, to better express the aim of the cfile. * controlfiles/artscomponents/surface/TestSurface.arts: Adopted to cnew input of iySurfaceRtpropAgenda. * src/m_surface.cc (iySurfaceRtpropAgenda): Started to implement calculation of surface normal. Had re-introduce some input arguments. * src/ppath.cc (plevel_slope_2d): Calculation of upward argument for gridpos2gridrange was incorrect. Always generated true! However, this could in fact have been an OK definition. So nothing was terribly wrong. 2012-06-27 Jana Mendrok * arts-2-1-158 * src/m_surface.cc (complex_nFromGriddedField4): misspelling corrected. 2012-06-27 Jana Mendrok * arts-2-1-157 * doc/uguide/gridded_field_gridnames.txt: Added Complex. 2012-06-27 Patrick Eriksson * arts-2-1-156 * src/m_montecarlo.cc (MCGeneral): A bug originating from when I added f_grid as input to iy_space_agenda. Did happen only if f_grid.nelem() > 1. Catched by an assert, so no risk that you have done incorrect calculations. 2012-06-27 Oliver Lemke * arts-2-1-155 * src/m_atmosphere.cc: (GriddedFieldLatLonRegrid): First try for GriddedField3. (AtmFieldsCalc): Fix bug in 2D and 3D interpolation. ^ is not power. 2012-06-27 Oliver Lemke * arts-2-1-154 * src/methods.cc, src/m_atmosphere.cc: GriddedFieldLatLonPRegrid -> GriddedFieldPRegrid 2012-06-27 Oliver Lemke * arts-2-1-153 * src/methods.cc, src/m_atmosphere.cc: Add skeleton FieldFromGriddedField, GriddedFieldLatLonExpand, GriddedFieldLatLonPRegrid, GriddedFieldLatLonRegrid. 2012-06-26 Oliver Lemke * arts-2-1-152 * cmake/modules/ArtsTestcases.cmake, src/CMakeLists.txt: Remove the _CACHE from version check. Otherwise fix from arts-2-1-135 requires a second cmake run to work. Add arts_test_cmdline macro for commandline option tests. * CMakeLists.txt: Some Xcode fixes: Set CMAKE_OSX_SYSROOT to empty so we don't have to manually reset the current SDK every time the project is regenerated. Set LIBRARY_OUTPUT_PATH and EXECUTABLE_OUTPUT_PATH to have all executables end up in the same build directory. 2012-06-26 Jana Mendrok * arts-2-1-151 * controlfiles/general/general.arts: initialize mag_[u,v,w]_field. 2012-06-26 Jana Mendrok * arts-2-1-150 * src/workspace.cc: Introduced magnetic field components (mag_[u,v,w]_field). * src/m_atmosphere.cc, src/methods.cc (basics_checkedCalc): Added mag_[u,v,w]_field to checks. 2012-06-26 Oliver Lemke * arts-2-1-149 * doc/uguide/gridded_field_gridnames.txt: Add file with grid naming conventions. * doc/uguide/concept.tex: Add section Data formats with subsections XML files, NetCDF files and Gridded fields. Include the grid naming conventions here. * doc/uguide/CMakeLists.txt: Add dependency on g_f_gn.txt. 2012-06-26 Oliver Lemke * arts-2-1-148 * ChangeLog: Too many typos in previous log message to let it slide. 2012-06-26 Oliver Lemke * arts-2-1-147 * src/make_auto_md_h.cc: Temporary fix for automatic header generation for supergeneric methods with explicit type. Proper fix is to get rid of the SUPPRESSHEADER macro in methods.cc completely and automatically determine which headers to generate. Will implement this as soon as time permits. 2012-06-26 Oliver Lemke * arts-2-1-146 * src/check_input.cc (chk_griddedfield_gridname): Add check to verify the name of a grid in a GriddedField. 2012-06-25 Patrick Eriksson * arts-2-1-145 * This commit finishes what I plan regarding inputting and restructuring around surface RT-properties. (To fix handling of surface topography remains. That is, surface roughness can be incorporated, but overall angular tilt of the surface is not considered.) * controlfiles/artscomponents/surface/create_gfields.m: Data for test below had incorrect dimensions. * controlfiles/artscomponents/surface/TestSurface.arts: Now includes test of WSM below. * src/m_surface.cc (surface_reflectivityFromGriddedField6): New WSM. * src/xml_io_instantiation.h: * src/xml_io_types.h: * src/groups.cc (define_wsv_group_names): Added definition for GriddedField5/6 and ArrayOfGriddedField2. 2012-06-25 Patrick Eriksson * arts-2-1-144 * controlfiles/artscomponents/surface/create_gfields.m: Created. Generates test data for TestSurface.arts. * controlfiles/artscomponents/surface/TestSurface.arts: Extended to cover more cases, including the new WSM below. * src/m_surface.cc (complex_nFromGriddedField4): Created. 2012-06-25 Oliver Lemke * arts-2-1-143 * src/CMakeLists.txt: Better fix for arts-2-1-142. Help some linkers to properly resolve dependencies between the static libs by adding agenda_record.cc to the methods library. * src/agenda_class.cc: Revert workaround from arts-2-1-142. * src/file.cc (find_file): If search paths are empty, at least check if the file exists before failing... Fixes test_binaryio testcase. 2012-06-25 Oliver Lemke * arts-2-1-142 * src/agenda_class.cc: Add temporary workaround to (hopefully) fix crazy linker errors in test_binaryio and friends on Ubuntu. 2012-06-25 Oliver Lemke * arts-2-1-141 * src/agenda_class.cc, src/m_general.cc: Fix Print for agendas. Was outputting the whole documentation for each used WSM instead of just their names. Also fix indentation of output. 2012-06-24 Oliver Lemke * arts-2-1-140 * src/gridded_fields.{cc,h} Add GriddedField5+6 and ArrayOfArrayOfGriddedField2. * src/xml_io_compound_types.cc: Add GriddedField5+6. * src/xml_io_array_types.cc: Add ArrayOfArrayOfGriddedField2. 2012-06-24 Patrick Eriksson * arts-2-1-139 * Further work on the surface. emission_agenda renamed to blackbody_radiation_agenda. Sufrace methods now use this agenda. This means that clearsky calculations now really work with the emission source term set to T (instead of B), or alternative version of Planck. (Standard Planck still hard-coded inside DOIT and MC). * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/instruments/mhs/mhs.arts: * controlfiles/instruments/mhs/mhs_fast.arts: * controlfiles/instruments/amsu/amsub.arts: * controlfiles/instruments/amsu/amsub_fast.arts: Call of surfaceFlatScalarReflectivity adopted (by removing all arguments, not needed as standard WSVs are used). * controlfiles/CMakeLists.txt: Added surface test. Moved absorption to top as most basic test (among Components). * controlfiles/artscomponents/surface/TestSurface.arts: New. (Testing without any real atmospheric RT calculations!) * src/workspace.cc: Fixed typo for complex_n. * src/m_surface.cc (iySurfaceRtpropAgenda): Added check that iy for down-welling radiation has correct size. * src/m_surface.cc (surfaceBlackbody, surfaceFlatRefractiveIndex, surfaceFlatReflectivity, surfaceFlatScalarReflectivity, surfaceLambertianSimple): * src/surface.cc (surface_specular_R_and_b): Now using blackbody_radiation_agenda. * controlfiles/instruments/odinsmr/TestOdinSMR_119ghz.arts: * src/m_physics.cc (blackbody_radiationPlanck): * src/m_fos.cc: * src/m_rte.cc: * src/rte.cc: * src/methods.cc: Adopted to changes below. * src/agendas.cc: emission_agenda renamed to blackbody_radiation_agenda. * src/workspace.cc: emission renamed to blackbody_radiation. 2012-06-24 Patrick Eriksson * arts-2-1-138 * src/m_rte.cc: Adopted call of get_iy_of_background inside several methods. * src/rte.cc (get_iy_of_background): Now using iy_surface_agenda, instead of surface_rtprop_agenda. 2012-06-24 Patrick Eriksson * arts-2-1-137 * controlfiles/general/general.arts: Now includes a definition of iy_surface_agenda. * src/agendas.cc: Several input WSVs were missing, to handle perturbation jacobians. * src/m_surface.cc (iySurfaceRtpropAgenda): Completed. 2012-06-23 Patrick Eriksson * arts-2-1-136 * Backup commit for work in progress (but checks run OK). * src/m_surface.cc (iyFromSurfaceRtpropAgenda): Created (but not tested or active). * src/agendas.cc: Added iy_surface_agenda. * src/interpolation.cc (is_gridpos_at_index_i): Added the strict argument. * src/ppath.cc: Adopted call of chk_rte_pos * src/ppath.cc (ppath_start_stepping): Code replaced by rte_pos2gridpos. * src/m_ppath.cc: Adopted call of chk_rte_pos * src/m_ppath.cc (ppathFromRtePos2): Code replaced by rte_pos2gridpos. * src/check_input.cc (chk_rte_pos): Converted is_rte_pos2 to bool and set false to default. * src/special_interp.cc (interp_gfield3): Removed. Not used. And used special definitions. In addition, should have been implemented as a class function. (rte_pos2gridpos): Created. * src/interpolation.cc (gridpos_1to1): Created. * src/m_doit.cc (iyInterpCloudboxField): (iyInterpCloudboxPolyField): Adopted to removal of rte_gp_p/lat/lon. * controlfiles/instruments/odinsmr/TestOdinSMR_119ghz.arts: * controlfiles/instruments/mhs/mhs.arts: * controlfiles/instruments/hirs/TestHIRS.arts: * controlfiles/instruments/amsu/amsub.arts: * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/artscomponents/doit/TestDOIT.arts: * controlfiles/general/general.arts: Adopted to changes below. * src/m_surface.cc (InterpSurfaceFieldToRteGps): Removed. (InterpSurfaceFieldToRtePos): New method. * src/m_atmosphere.cc (InterpAtmFieldToRteGps): Removed. (InterpAtmFieldToRtePos): New method. * src/doit.cc: * src/m_jacobian.cc: * src/m_doit.cc: * src/m_montecarlo.cc: * src/m_rte.cc: * src/rte.cc: * src/methods.cc: * src/workspace.cc: * src/agendas.cc: surface_prop_agenda renamed to surface_rtprop_agenda. And rte_gp_p, rte_gp_lat and rte_gp_lon removed as input. The later also done for iy_cloudbox_agenda. * src/workspace.cc: Removed rte_gp_p, rte_gp_lat and rte_gp_lon. 2012-06-22 Oliver Lemke * arts-2-1-135 * cmake/modules/ArtsTestcases.cmake: Add fix for compatibility with cmake 2.6.4. Test dependency declaration failed. 2012-06-21 Patrick Eriksson * arts-2-1-134 * src/workspace.cc: Added that lon_grid can max span 360 deg. 2012-06-21 Patrick Eriksson * arts-2-1-133 * src/m_atmosphere.cc (z_fieldFromHSE): Improved a comment. 2012-06-21 Patrick Eriksson * arts-2-1-132 * src/m_surface.cc (surface_scalar_reflectivityFromGriddedField4): Almost complet version (not tested practically). * src/m_atmosphere.cc (z_fieldFromHSE): Modified, adopted to pos2true_latlon. * src/rte.cc (pos2true_latlon): Created. * src/workspace.cc: Tried to improve description of refellipsoid, lat_true and lon_true. * src/check_input.cc (chk_latlon_true): Check for lon_true and 2D was incorrect. Now just perform checking (output arguments removed). 2012-06-18 Oliver Lemke * arts-2-1-131 * src/methods.cc Add generic input 'dimension' to append functions. Passing in 'leading' means to append to the leftmost dimension (e.g. rows for Matrix), 'trailing' to the rightmost (==cols). Add support to append single elements to arrays. Add support for Matrix. * src/groups.cc, src/wsv_aux.h (get_array_groups_as_string): Extend to return only Arrays whose basetype is a group and to return names of the basetypes of arrays only. * src/m_append.h: Implement append for Matrix. 2012-06-20 Oliver Lemke * arts-2-1-130 * src/gridded_fields.h: Add checksize_strict member function that throws a runtime error with additional information on the grid and data sizes. Make checksize pure virtual in abstract base class. Remove redundant function documentation from subclasses. Doxygen automatically uses the docs from the base class. * src/gridded_fields.{cc,h}: Fix copyright header. Formatting. * src/xml_io_compound_types.cc (xml_read_from_stream): Use checksize_strict for GriddedFields. 2012-06-19 Patrick Eriksson * arts-2-1-129 * src/m_surface.cc (InterpSurfaceEmissivityFieldIncLatLon): Removed. (surface_scalar_reflectivityFromGriddedField4): Just a start ... * src/m_surface.cc: Removed .h-files and "extern const" not used. 2012-06-18 Patrick Eriksson * arts-2-1-128 * A first step in revising the surface RT properties part. Main change here is that methods taking emissivity as input are removed. * src/m_surface.cc (surfaceFlatReflectivity): Old method renamed, see below. This version ghanldes a general reflectivity matrix. Not yet tested practically. * controlfiles/artscomponents/doitbatch/TestDOITBatch.arts: * controlfiles/instruments/amsu/amsub.arts: * controlfiles/instruments/amsu/amsub_fast.arts: * controlfiles/instruments/mhs/mhs.arts: * controlfiles/instruments/mhs/mhs_fast.arts: Replaced surfaceFlatReflectivity with surfaceFlatScalarReflectivity. * src/m_surface.cc (surfaceFlatScalarReflectivity): Renamed surfaceFlatReflectivity. Now only stokes_dim = 1 accepted. (surfaceFlatSingleEmissivity): (surfaceFlatVaryingEmissivity): Both removed. Use instead surfaceFlatScalarReflectivity. * src/workspace.cc (define_wsv_data): Added surface_reflectivity. Changed text for complex_n, to always demand two columns. Some polishing of text for core surface RT variables. 2012-06-14 Oliver Lemke * arts-2-1-127 * src/parameters.cc: Fix baseurl parameter. 2012-06-14 Oliver Lemke * arts-2-1-126 * src/xml_io_compound_types.cc: Reading of GriddedField2 was broken. 2012-06-13 Oliver Lemke * arts-2-1-125 * src/messages.h: Remove ; from the end of the CREATE_OUT* macros. This forces a ; to be added when the macro is used to make it look like a statement (which it is). Also fixes automatic indentation in some editors that get confused if a statement doesn't end with a semicolon. * src/*.{cc,h}: Add semicolons to CREATE_OUT* calls. * src/agenda_{class,record}.{cc,h}: Reindent. * src/arts.cc (arts_exit_with_error_message): Remove extra block. 2012-06-01 Patrick Eriksson * arts-2-1-124 * src/ppath.cc (rslope_crossing3d): The function now allows that both c1 and c2 to be zero. 2012-06-01 Oliver Lemke * arts-2-1-123 * src/parameters.{cc,h}: Add outdir parameter and commandline option -o/--outdir. Change commandline argument -B to -U. * src/file.{cc,h}: Add add_basedir function. (open_output_file): Catch file exceptions and rethrow as runtime_error with additional info about the filename. * src/main.cc: No need to catch ios_base exception anymore. Handled in open_output_file now. * src/xml_io.cc, src/nc_io.cc: Use add_basedir in writing functions. * src/arts.cc (arts_exit): Use add_basedir for report file path. 2012-05-30 Patrick Eriksson * arts-2-1-122 * doc/uguide/ppath_theory.tex: Updated. Now treating the new 3D scheme (old scheme commented out). 2012-05-29 Patrick Eriksson * arts-2-1-121 * src/ppath.cc: New 3D code now made active. Now yet fully tested for non-spherical conditions (but no known loophole as for old scheme). Tell me if you run into some problems. * src/ppath.cc (ppath_step_refr_3d): Finally managed to track down another bug. Again a stupid typo. r16a and and r16b were written as r15a and r15b. 2012-05-29 Patrick Eriksson * arts-2-1-120 * src/ppath.cc (do_gridcell_3d): Fixed a typo. Had written lat in one function call where it should have been lon. 2012-05-28 Patrick Eriksson * arts-2-1-119 * doc/uguide/ppath_theory.tex: Fixed some typos, and updated to recent changes for refraction. * src/ppath.cc (plevel_crossing_2d): Zenith and nadir cases handled completly seperately (more effecient and more clear code). (plevel_crossing_3d): Changed to mimic 2D version as far as possible. * controlfiles/artscomponents/ppath/TestPpath3D.arts: Last part of test reactivated. Changes below fixed the bug. * src/ppath.cc (raytrace_3d_linear_basic): Handling of out-of-bounds za and aa angles was not correct. Now using adjust_los for this task. * src/rte.h: Added adjust_los. * src/rte.cc (adjust_los): Typo in header text. 2012-05-24 Oliver Lemke * arts-2-1-118 * src/*, doc/uguide/arts*.tex: Update copyright year. 2012-05-24 Oliver Lemke * arts-2-1-117 * src/docserver.* src/nc_io*, src/xml_io*: Reindent. Align & and * with type instead of variable. 2012-05-23 Oliver Lemke * arts-2-1-116 * CMakeLists.txt: Handle compiler options more gracefully. Instead of hardcoding them for different compilers, check if the current compiler supports the flag. If not, just ignore it. Set and check flags separately for C and C++ compiler. For Xcode project, pass active configuration name to ctest so it can select the correct executable. * cmake/modules/ArtsAddCompilerFlag.cmake: Added. * src/libmicrohttpd/CMakeLists.txt, src/CMakeLists.txt: Little tweak for clang. 2012-05-18 Oliver Lemke * arts-2-1-115 * src/gas_abs_lookup.h, src/nc_io_compound_types.cc, src/m_abs.cc, src/nc_io_types.h, src/nc_io.h, src/nc_io_basic_types.cc, src/m_nc.h, src/nc_io_instantiation.h, src/nc_io_array_types.cc, src/nc_io.cc: Change prefix of arts netcdf related functions from nc_ to nca_ to avoid confusion with functions from the netcdf library. * src/nc_io.{cc,h}: Add more helper functions. Add docs. * src/nc_io_compound_types.cc (nca_write_to_file): Clean up GasAbsLookup function. * doc/doxygen/Doxyfile.in: Add ENABLE_NETCDF to PREDEFINED macros. 2012-05-16 Patrick Eriksson * arts-2-1-114 * src/poly_roots.cc (gsl_poly_complex_solve): Removed screen message when bad convergence. This should be handled by calling function. Message left for the other (basic) errors. * src/ppath.cc (rslope_crossing2d): Increased standard n value to 6. The function now adopts to poor poly_root-convergence. If this happens, n is decreased until convergence is achieved. * src/ppath.cc (do_gridcell_2d): Before did not check upper pressure level if a hit with the surface had been found, to save time. Found not OK with high surface radial slope. Fixed. (plevel_crossing_2d): Removed assert at end, that checked consistency with geompath. Why compare to a poorer calculation? 2012-05-16 Oliver Lemke * arts-2-1-113 * src/nc_io.cc (nc_read_from_file, nc_write_to_file): Add a try-catch-block to the template functions around the actual type-specific read/write function call. Catch exceptions, add current filename and re-throw. * src/nc_io_compound_types.cc (nc_read_from_file): Throw runtime_error if no species are found in the GasAbsLookup input file. (nc_write_to_file): Throw runtime_error no species are in the current GasAbsLookup table. * src/gas_abs_lookup.h, src/nc_io_compound_types.cc, src/nc_io_types.h, src/nc_io_basic_types.cc, src/nc_io_array_types.cc, src/nc_io.cc: Add Verbosity argument to nc_read_from_file and nc_write_to_file. 2012-05-16 Oliver Lemke * arts-2-1-112 * src/nc_io_compound_types.cc: Add NetCDF reading/writing for GasAbsLookup. * src/methods.cc: Add GasAbsLookup to Read/WriteNetCDF. * src/gas_abs_lookup.h: Some love for abs_lookup by adding friends. * src/nc_io.{cc,h}: Add helper functions. 2012-05-14 Patrick Eriksson * arts-2-1-111 * src/check_input.cc (chk_atm_surface): Checks for 3D cases covering North and South pole were missing. Added. * src/ppath.cc (plevel_crossing_2d): Output l was not calculated correctly if the level crossing is on other side of a tangent point. This seems not to happen inside the atmosphere, but can happen with a highly tilted surface. So this bug appeared only if the tangent point is just above a surface with high radial slope. Accordingly, showed up first after +300k of test cases! 2012-05-11 Patrick Eriksson * arts-2-1-110 * src/ppath.cc (rslope_crossing2d): Changed dza from 10 to 15 deg as limit for when going down from n=5 to n=4. Found one case of bad convergence for dza=10.7 (after running about 80000 cases). 2012-05-08 Oliver Lemke * arts-2-1-109 * controlfiles/CMakeLists.txt: Install controlfiles/ into CMAKE_INSTALL_PREFIX/share/arts/ * CMakeLists.txt: Remove tests/ from subdirectories. 2012-05-08 Patrick Eriksson * arts-2-1-108 * src/ppath.cc (do_gridcell_3d): Had commited with new test 3D code active. 2012-05-06 Patrick Eriksson * arts-2-1-107 * src/ppath.cc (rslope_crossing2d): Now n=5 default (with both terms included), and no special treatment of za=90 needed. Now going down to n=1 for za [89.9,90]. 2012-05-01 Patrick Eriksson * arts-2-1-106 * src/ppath.cc (rslope_crossing2d): Setting of dmin adjusted. Added comments to document the selection of some settings. (plevel_crossing_2d): Changed back to set r as rpl+cpl*dlat. Bad decision to change. Further tests showed that the numerical problems were on the other side, in geompath. 2012-04-28 Patrick Eriksson * arts-2-1-105 * controlfiles/artscomponents/ppath/TestPpath3D.arts: * controlfiles/artscomponents/ppath/TestPpath2D.arts: Added several pos/los combinations, particularly for testing ray tracing along lat and lon grid positions. Also, now run with both spherical and non-spherical ellipsoid. 3D non-spherical ellipsoid + refraction not active as it fails! * controlfiles/artscomponents/ppath/TestPpath1D.arts: Added a nadir from space case. * src/ppath.cc (ppath_init_structure): Start pos and los set to -999, to more clearly indicate non-valid data. (rslope_crossing2d): Now the polynomial degree is selected according to the zenith angle, to avoid (different) numerical problems around 0, 90 and 180. 2012-04-27 Patrick Eriksson * arts-2-1-104 * doc/uguide/ppath_theory.tex: Updated with respect to change in rslope_crossing2d (now three terms in Taylor expansion of cos and sin). 2012-04-26 Patrick Eriksson * arts-2-1-103 * doc/uguide/atmosphere.tex: Some typos fixed. * doc/uguide/surface.tex: Part on geodetic latitude shortened. Spell-checking. * doc/uguide/ppath.tex (section{The propagation path data structure}): Updated with ngroup, start_lstep and end_lstep. * src/ppath.cc (rslope_crossing3d): Now using 2D version if c2=0. Required by poly_root_solve. * src/ppath.cc (rslope_crossing2d): Taylor expansion of cos and sin now includes also the third term. Was found to improve the accuracy significantly with non-spherical ellipsoid. (plevel_crossing_2d): New r now calculated by geompath function, instead as r+c*dlat. This looks the path to ppc, which improves the accuracy. 2012-04-24 Patrick Eriksson * arts-2-1-102 * src/ppath.cc (rslope_crossing3d): New function. (plevel_crossing_3d): Now using rslope_crossing3d. * src/rte.cc (get_iy_of_background): Adopted to changes below. * src/ppath.cc: Changes in several functions to adopt to the changes below. (plevel_slope_2d): Converted c1 from return to out parameter. (plevel_slope_3d): Now fitting local radius as a second order polynomial. Results now returned by reference. 2012-04-24 Patrick Eriksson * arts-2-1-101 * src/ppath.cc: Introduced the terms r0s etc. to avoid repeating calculations. 2012-04-23 Patrick Eriksson * arts-2-1-100 * src/ppath.cc: Restarted the postponed work to finish the new 3D code. The relevant parts copied back from ppath_NotUsed.arts. Added code to handle zanith&/nadir cases seperately. Some tests. Seems like that accuracy of plevel_crossing_3d must be improved. * src/geodetic.cc (latlon_at_aa): New function. * src/m_cloudbox.cc (cloudbox_checkedCalc): Added missing space in error message. 2012-04-20 Patrick Eriksson * arts-2-1-99 * controlfiles/general/general.src: refr_index_group initiated to 1. * arts/m_rte.cc (iyRadioLink): Extra path delay now calculated with ppath.ngroup (all below to fix this). * src/refraction.cc: * src/m_refraction.cc: * src/ppath.cc: Changes throughout the files to handle refr_index_group. * src/m_ppath.cc (ppathFromRtePos2): * src/m_ppath.cc (ppath_stepRefractionBasic) (VectorZtanToZaRefr1D): Changes associated with refr_index_group. * src/m_general.cc (Print): * src/xml_io_compound_types.cc: Adopted to new Ppath field (again!). * src/ppath.h (struct Ppath): Added ngroup. * src/agendas.cc: refr_index_agenda has now also refr_index_group as output. * src/workspace.cc: Added refr_index_group. 2012-04-18 Patrick Eriksson * arts-2-1-98 * src/m_refraction.cc (refr_indexFreeElectrons): Now including a test with respect to the plasma frequency. And now returning the "proper" refractive index (here a value below 1), corresponding to the phase speed which is required for the ray tracing. How to handle path delays is an open question? 2012-04-17 Patrick Eriksson * arts-2-1-97 * src/m_refraction.cc (refr_indexFreeElectrons): It was just sqrt(...). Corrected to 1/sqrt(...) * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Now finer p_grid and cubic interpolation in AtmFieldsCalc. * src/m_ppath.cc:(ppathFromRtePos2): Azimuth angle now also stored in H. Fine-tuning of settings for surface intersections. * src/refraction.cc: Full WSV of t_field and vmr_field now used inside functions for refraction (for consistency + to handle empty vmr_field). * src/rte.cc (defocusing_sat2sat): Removed a cout. * src/check_input.cc (chk_atm_field): Now also handling the case when the Tensor4 is/shall be empty. * src/m_atmosphere.cc (basics_checkedCalc): Call chk_atm_field even if abs_species is empty. 2012-04-16 Oliver Lemke * arts-2-1-96 * ChangeLog, ChangeLog-archived: Move all pre 2-0-0 entries to ChangeLog-archived. * ChangeLog-20071207: Renamed to ChangeLog-archived. 2012-04-16 Oliver Lemke * arts-2-1-95 * controlfiles/instruments/smr: Moved from includes/smr/. * includes/: Removed. 2012-04-13 Patrick Eriksson * arts-2-1-94 * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Now using iy_variable and iy_aux_variable. * src/m_ppath.cc (TangentPointExtract): New WSM. (TangentPointPrint): Renamed PrintTangentPoint. * src/m_rte.cc (iyRadioLink): Now using iy_variable and iy_aux_variable, instead of removed, corresponding, gin-variables. * src/workspace.cc: Introduced iy_variable and iy_aux_variable. 2012-04-13 Oliver Lemke * arts-2-1-93 * This commit concludes the consolidation of controlfiles and includefiles into the controlfiles/ directory. Only open issue is the includes/smr directory. These files do not seem to be used anywhere. I left them in their original location for now. * src/file.{h,cc} (find_file): Don't go through search paths if filename already contains a full path. * src/xml_io.cc (xml_read_from_file,xml_read_arts_catalogue_from_file): Throw runtime error immediately when we know the file doesn't exist instead of later when trying to actually open it. * src/parameters.cc (get_parameters): Add . to include and data paths. * src/parser.cc (ArtsParser::parse_agenda): When including a file with a path, we have to add the file's path temporarily at the beginning of the include path. This is necessary because the included file can include files from the same directory without specifying further path information. This mimics the behaviour how C/C++ compilers deal with include files. Problem is that we have to permanently add this path also to the data search path because include files can contain ReadXML etc. methods which are only executed later on. Not sure what a clean solution for that would be. #49 * Missed to move two remaining controlfiles from tests/ in previous commit: * controlfiles/instruments/hirs: Moved from tests/HIRS. * controlfiles/instruments/avhrr: Moved from tests/AVHRR. * Moving include files into controlfiles/ sub-directories: * includes/amsu/*: Moved to controlfiles/instruments/amsu/. * controlfiles/instruments/amsu/*.arts: Remove amsu/ prefix for include and data files. * includes/mhs/*: Moved to controlfiles/instruments/mhs/. * controlfiles/instruments/mhs/*.arts: Remove mhs/ prefix for include and data files. * includes/odin/*: Moved to controlfiles/instruments/odinsmr/. * controlfiles/instruments/odinsmr/*.arts: Remove odin/ prefix for include and data files. * includes/hirs/*: Moved to controlfiles/instruments/hirs/. * controlfiles/instruments/hirs/*.arts: Remove hirs/ prefix for include and data files. * includes/avhrr/*: Moved to controlfiles/instruments/avhrr/. * controlfiles/instruments/avhrr/*.arts: Remove hirs/ prefix for include and data files. Change prefix to hirs includes to instruments/hirs/. * controlfiles/instruments/avhrr/TestAVHRR.ybatch.xml: Remove output file. * controlfiles/artscomponents/wfuns/TestWfuns.arts: Change prefix for odin include to instruments/odinsmr/. * include/CMakeLists.txt: Remove subdirs. * CMakeLists.txt: ${CMAKE_SOURCE_DIR}/includes from ARTS_DEFAULT_INCLUDE_DIR. Remove subdirectory includes/. 2012-04-13 Patrick Eriksson * arts-2-1-92 * controlfiles/artscomponents/transmission/TestTransmission.arts: * controlfiles/artscomponents/radiolink/TestRadioLink.arts: Euler -> Basic. * controlfiles/artscomponents/ppath/TestPpath1D.arts: * controlfiles/artscomponents/ppath/TestPpath2D.arts: * controlfiles/artscomponents/ppath/TestPpath3D.arts: As above. And now also making a set of calculations with refraction. * src/methods.cc: Improved text for ppath_stepRefractionBasic. * src/m_ppath.cc (ppath_stepRefractionBasic): Changed Euler to Basic in WSM name. This as "Euler" is not a totally correct description of the algorithm. * src/ppath.cc (ppath_start_stepping): For 3D, "ppath.end_lstep=lt;" was ppath.start_lstep = lt; Changed "euler" to "basic in some function names and variables. 2012-04-13 Oliver Lemke * arts-2-1-91 * Completed moving of testcases from tests/ to controlfiles/. Next up is moving the include files into the appropriate directories in controlfiles/. * controlfiles/artscomponents/wfuns: Moved from tests/Wfuns. * controlfiles/artscomponents/radiolink: Moved from tests/RadioLink. * controlfiles/instruments/amsu: Moved from tests/AMSU. * controlfiles/instruments/mhs: Moved from tests/MHS. * controlfiles/instruments/odinsmr: Moved from tests/OdinSMR. * controlfiles/CMakeLists.txt: Add moved testcases. * tests/CMakeLists.txt: Remove moved testcases. 2012-04-12 Oliver Lemke * arts-2-1-90 * Migrating controlfiles from tests to controlfiles/. Starting with controlfiles related to artscomponents. * CMakeLists.txt: Add subdirectory controlfiles. * tests/CMakeLists.txt: Remove testcases that are now in controlfiles/. * controlfiles/CMakeLists.txt: Added. Add testcase definitions. * controlfiles/artscomponents/absorption: Moved from tests/Abs. * controlfiles/artscomponents/doit: Moved from tests/DOIT. * controlfiles/artscomponents/montecarlo: Moved from tests/MonteCarlo. * controlfiles/artscomponents/ppath: Moved from tests/Ppath. * controlfiles/artscomponents/pencilbeam: Moved from tests/PencilBeam. * controlfiles/artscomponents/clearsky: Moved from tests/ClearSky. * controlfiles/artscomponents/groundbased: Moved from tests/GroundBased. * controlfiles/artscomponents/disort: Moved from tests/DISORT. * controlfiles/artscomponents/doitbatch: Moved from tests/DOITBatch. * controlfiles/artscomponents/transmission: Moved from tests/Transmission. 2012-04-12 Oliver Lemke * arts-2-1-89 * controlfiles/atmosphere_data/: Moved here from tests. We might read those from arts-xml-data directly later. * tests/Transmission/TestTransmission.arts, tests/GroundBased/TestFgrid.arts, tests/GroundBased/TestWinds.arts, tests/GroundBased/TestGbased.arts, tests/PencilBeam/TestPencilBeam.arts, tests/DOIT/TestDOIT.arts, tests/Wfuns/TestWfuns.arts, tests/MonteCarlo/TestMonteCarloDataPrepare.arts, tests/Abs/TestAbsDoppler.arts, tests/Abs/TestAbs.arts, tests/OdinSMR/TestOdinSMR.arts, tests/OdinSMR/TestOdinSMR_119ghz.arts, tests/OdinSMR/TestOdinSMR_1D.arts, tests/Ppath/TestPpath1D.arts, tests/Ppath/TestPpath2D.arts, tests/Ppath/TestPpath3D.arts, tests/RadioLink/TestRadioLink.arts, tests/ClearSky/TestClearSky.arts: Remove ../ prefix from atmosphere_data path. 2012-04-12 Oliver Lemke * arts-2-1-88 * Starting to move and rearrange controlfiles from tests/ to controlfiles. I'll do that in several steps to avoid mayhem. * CMakeLists.txt: Temporarily use includes/ and controlfiles/ as default include path. * controlfiles/general/general.arts, controlfiles/general/continua.arts, controlfiles/general/agendasDOIT.arts: Moved to here from includes/. * controlfiles, controlfiles/artscomponents, controlfiles/general, controlfiles/instruments: Added. * src/parameters.cc (get_parameters): Temporarily add support for having more than one path in ARTS_DEFAULT_INCLUDE_DIR. * tests/AVHRR/TestAVHRR.arts, tests/MHS/TestMHS.arts, tests/MHS/TestMHS_fast.arts, tests/Transmission/TestTransmission.arts, tests/GroundBased/TestFgrid.arts, tests/GroundBased/TestWinds.arts, tests/GroundBased/TestGbased.arts, tests/DOIT/TestDOIT.arts, tests/PencilBeam/TestPencilBeam.arts, tests/DOITBatch/TestDOITBatch.arts, tests/MonteCarlo/TestMonteCarloDataPrepare.arts, tests/MonteCarlo/TestMonteCarloGeneralGaussian.arts, tests/MonteCarlo/TestRteCalcMC.arts, tests/MonteCarlo/TestMonteCarloGeneral.arts, tests/DISORT/TestDISORT.arts, tests/HIRS/TestHIRS.arts, tests/Abs/TestAbsDoppler.arts, tests/Abs/TestAbs.arts, tests/AMSU/TestAMSUB.arts, tests/AMSU/TestAMSUB_fast.arts, tests/Ppath/TestPpath1D.arts, tests/Ppath/TestPpath2D.arts, tests/Ppath/TestPpath3D.arts, tests/RadioLink/TestRadioLink.arts, tests/ClearSky/TestClearSky.arts, includes/odin/odinsmr_544.arts, includes/odin/odinsmr_501_1D.arts, includes/odin/odinsmr_501.arts: Prepend general includes with general/. 2012-04-12 Oliver Lemke * arts-2-1-87 * src/parser.cc (ArtsParser::parse_method_args): Bug fix. When the controlfile contained a call to a WSM that has generic output but all arguments were omitted, all hell broke lose. Try this controlfile with an older version ;-): Arts2 { ReadXML } Change exception type from UnexpectedChar to ParseError for missing generic inputs. (ArtsParser::parse_main): Instead of calling arts_exit directly in case of errors, rethrow the exception. * src/main.cc (main): Add a try catch block inside the main controlfile loop and add the current controlfile name to the error output. 2012-04-12 Oliver Lemke * arts-2-1-86 * README: Updated. Add section headings. Add ctest documentation. * CMakeLists.txt: 'make check' only runs quick controlfiles now. 'make check-all' runs all tests. Add cmake option TEST_JOBS to let user specify how many tests to be run in parallel. (cmake -DTEST_JOBS=4 ..) * cmake/modules/FindNetCDF.cmake: Netcdf library might also be called netcdf4/netcdf_c++4. 2012-04-12 Jana Mendrok * arts-2-1-85 * src/cloudbox.cc: - use SI units with all pnd calculation functions. - remove (use of) scale_H11. let chk_pndsum do the work, which anyway did the same plus some warnings. - corrected (?!) scaling in MP48 (we don't have a direct way to check scaling based on precip rate. need to derive and use mass density instead). - removed hard coded density of particles in cloud liquid PSD (H98). * src/cloudbox.h: adapted. 2012-04-11 Patrick Eriksson * arts-2-1-84 * tests/RadioLink/TestRadioLink.arts: Now checking atmospheric loss and extra path delay. * src/rte.cc (defocusing_general_sub): 1D calculations around zenith/nadir requires special treatment. * src/ppath.cc (raytrace_1d_linear_euler): The law of cosines was used to calculate new latitude, which wasfound to be numerically unstable around zenith and nadir. Now using combination of geompath functions, that seems to work much better. (raytrace_2d_linear_euler): As above. * src/rte.cc (iyb_calc): Code replaced by call of adjust_los. 2012-04-11 Patrick Eriksson * arts-2-1-83 * src/m_rte.cc (iyRadioLink): Prepared for using defocusing_general but so far inactive. * src/ppath.h: Added declaration of cart2zaaa and cart2zaaa. * src/rte.cc: Replaced a number of "const Xxxxx&" with "ConstXxxxxView" where Xxxx is Vector etc. (adjust_los): New function. (defocusing_general): (defocusing_sat2sat): Complete. The two version give somewhat different results but a perfect agreement can not be expected. So OK right now. More detailed tests later on. Fails at least for 1D cases corresponding to za=0. * src/ppath.cc (raytrace_1d_linear_euler): Added an if-statement to handle poor accuracy for latitude when zenith angle = 0 or 180. 2012-04-09 Patrick Eriksson * arts-2-1-82 * src/m_rte.cc (iyRadioLink): Defocusing was not correctly iniated and applied. * src/rte.cc (defocusing3d, defocusing_limb1d): Started on two different aproaches to calculate defocusing. Not working and not active. * src/m_general.cc (Print): * src/xml_io_compound_types.cc (xml_read_from_stream) (xml_write_to_stream): Adopted to end/start_lstep. * src/m_ppath.cc (PrintTangentPoint): Now using find_tanpoint. (ppathFromRtePos2): Adopted to end/start_lstep. * src/ppath.cc: Adopted to end/start_lstep. (find_tanpoint): New function. * src/ppath.h (struct Ppath): lspace removed. start_lstep and end_lstep introduced. (lspace was the sum of the two new fields, but this is not sufficient information for calculating defocusing). 2012-04-06 Patrick Eriksson * arts-2-1-81 * src/m_rte.cc (iyRadioLink): Now calculating the bending angle correctly (for 1D, approximative for 2D and 3D). Now the quantity for both iy and iy_aux can be selected. * src/workspace.cc: Description of refr_index polished. * src/absorption.cc (refr_index_BoudourisDryAir) (refr_index_Boudouris): Removed. Old. Not used. Should not be in this file. * src/rte.cc (bending_angle1d): New function. * src/geodetic.cc: double was still hard-coded in this function! (sphdist): New function. 2012-04-05 Jana Mendrok * arts-2-1-80 * src/m_cloudbox.cc (pnd_fieldSetup): - moved all specific PSD calculation functionality into individual functions. - added Marshall&Palmer PSD for rain (also intended for use with snow, graupel/hail). - changed errors due to 'incorrect' profile or particle type into warnings, giving more freedom to the user how to name and combine things. * src/cloudbox.cc,cloudbox.h: added individual function for each implemented PSD type (currently: MH97, H11, H98_STCO, MP48). 2012-04-05 Oliver Lemke * arts-2-1-79 * Switching to ctest! * CMakeLists.txt: Use ctest as the default for the check/check-fast targets. * tests/testall.py: Remove all tests that moved to the ctest interface. Only one left that was currently not used due to a dependency on PyARTS. I'll leave the code here for now. * cmake/modules/ArtsTestcases.cmake: Remove deprecated macros. * tests/CMakeLists.txt: Add last missing test Wfuns. Remove deprecated testing code. 2012-04-05 Oliver Lemke * arts-2-1-78 * tests/testall.py, tests/MonteCarlo/TestMonteCarloGeneralGaussian.arts, tests/MonteCarlo/TestRteCalcMC.arts, tests/MonteCarlo/TestMonteCarloGeneral.arts: Move tests into the controlfiles. * tests/CMakeLists.txt: Add fast.odinsmr test. * cmake/modules/ArtsTestcases.cmake: Set arts screen output level for tests to 0 to only output the error in case of failure instead of the whole method log. 2012-04-04 Patrick Eriksson * arts-2-1-77 * src/m_rte.cc (iyRadioLink): Extended. Now handling dispersion and iy_aux set. Auxiliary variable to return can be selected (as a temporary solution?). * src/rte.cc (get_ppath_rtvars): Now using f_index. (get_iy_of_background): Adopted to agenda changes. * src/m_montecarlo.cc: Adopted call of iy_space_agenda. * src/agendas.cc: f_grid new input for emission_agenda and iy_space_agenda. Needed to handle dispersion (and could be used to consider Doppler shift also for these terms). * src/workspace.cc: Introduced dispersion_do. 2012-04-04 Patrick Eriksson * arts-2-1-76 * tests/Ppath/TestPpath3D.arts: * tests/Ppath/TestPpath2D.arts: * tests/Ppath/TestPpath1D.arts: Some changes. The files test different options for f_index = -1. * src/m_atmosphere.cc (basics_checkedCalc): Now also checking edensity_field. * includes/general.arts: edensity_field set to be empty. Adopted definition of ppath_step_agenda. * src/montecarlo.cc (iwp_cloud_opt_pathCalc): * src/m_rte.cc: * src/m_montecarlo.cc (MCIPA): * src/m_fos.cc: * src/m_doit.cc: * src/doit.cc: * src/ppath.cc: * src/m_ppath.cc: Numerous changes due to changes below (but all basically only to hand over variables to next function in the chain). * src/agendas.cc: Added edensity_field and f_index as input to ppath_agenda and ppath_step_agenda (edensity_field is presently not needed as agenda input, just in case if we want edensity jacobians in the future. To finish this, edensity_field must be added as input to iy_clearsky_agenda.). Reverted change for ppath_agenda. rte_los now only input. Not needed as output now with end_los added to Ppath structure. * src/refraction.cc: All functions consider now f_index and edensity_field. 2012-04-04 Patrick Eriksson * arts-2-1-75 * src/refraction.cc (get_refr_index_1/2/3d): Adopted call of refr_index_agenda, but so far just using local variables. * src/m_refraction.cc (refr_indexThayer): Now also doing the calculation (code moved from refr_index_thayer_1974). Works now in an additive way; refr_index is increased instead of set. (refr_indexIR): As above (but code from refr_index_ir). (refr_indexFreeElectrons): New WSM. (refr_indexUnit): Removed. Cfile even clearer if done as NumericSet( refr_index, 1.0 ) * Src/refraction.cc (refr_index_thayer_1974,refr_index_ir): Removed. * tests/Ppath/TestPpath1D.arts: * tests/Ppath/TestPpath2D.arts: * tests/Ppath/TestPpath3D.arts: Removed definition of refr_index_agenda (was same as in general.arts). * includes/general.arts: Adopted definition of refr_index_agenda. * src/agendas.cc: Added f_index and rte_edensity to the input of refr_index_agenda. * src/workspace.cc: Introduced edensity_field and rte_edensity. 2012-04-03 Jana Mendrok * arts-2-1-74 * src/methods.cc, workspace.cc: updating entries related to part_species redefinition. 2012-04-03 Jana Mendrok * arts-2-1-73 * CAREFUL! THIS COMMIT BREAKS BACKWARD COMPATIBILITY! redefinition of part_species tag structure: third element now part_type (the material/phase of the individual particle as given in ScattMetaData, e.g., "Ice"), size selection shifted backwards. first element renamed part_type->prof_type (the type of particle bulk profile, e.g. "IWC"). * src/m_cloudbox.cc, cloudbox.cc, src/cloudbox.h, m_atmosphere.cc: renamed (parse_)part_type -> (parse_)prof_type. * src/m_cloudbox.cc: (cloudboxSetAutomatically): removed hardwired prof_type-to-position-in- massdensity_field relation. (ScatteringParticlesSelect): removed hardwired prof_type-to-part_type relation. (pnd_fieldSetup): allow "H98_STCO" and "STCO" as more appropriate PSD selection tags for the current liquid cloud psd (which is continental stratus from Hess98). currently used "liquid" to be removed in future. * src/cloudbox.cc: (parse_prof_type): removed hard-wired restrictions on allowed prof_type names. (parse_part_type): added. function to parse part_species for part_type, the material/phase of the individual particle (e.g., "Ice"). * src/cloudbox.h: adapted acc. to cloudbox.cc changes * src/methods.cc, workspace.cc: descriptions of several particle related methods updated. * tests/DOITBatch/TestDOITBatch.arts: adapted to new part_species structure. 2012-04-03 Patrick Eriksson * arts-2-1-72 * tests/RadioLink/TestRadioLink.arts: Updated. New target values include free space loss. Accuracy not effectively is fractional, as threshold set based on the reference value. * src/m_ppath.cc (ppathFromRtePos2): ppath.end_pos/los set to match the transmitter. * src/ppath.cc (ppath_calc): Changes in several functions to handle and set new Ppath fields. * src/m_general.cc (Print): * src/xml_io_compound_types.cc (xml_write_to_stream) (xml_read_from_stream): Added handling of new Ppath fields. * doc/uguide/ppath.tex: Described new fields of Ppath. * src/ppath.h: For Pppath struct, added fields start_pos, start_los, end_pos and end_los. 2012-04-03 Oliver Lemke * arts-2-1-71 * src/mystring.h: Include algorithm for transform. * src/m_atmosphere.cc: Include algorithm no longer needed here. 2012-04-03 Oliver Lemke * arts-2-1-70 * tests/CMakeLists.txt: Revert accidentally committed line that broke the clean target. Add TestMHS and TestMHS_fast to new tests. * tests/DOITBatch/TestDOITBatch.ybatch.xml: Renamed to TestDOITBatch.ybatch.ref.xml. * tests/DOITBatch/TestDOITBatch.arts, tests/MHS/TestAMSUB.arts, tests/MHS/TestAMSUB_fast.arts, tests/MHS/TestMHS.arts, tests/MHS/TestMHS_fast.arts: Compare results against reference. * tests/MHS/TestMHS.ybatch.ref.xml, tests/AMSU/TestAMSUB.ybatch.ref.xml: Add reference values. * tests/testall.py: Comment out test2 of DOITBatch. Now done inside the controlfile. Comment out test{2,3} of MHS. Now done inside the controlfiles. Comment out test{2,3} of AMSUB. Now done inside the controlfiles. * src/mystring.h: Implement toupper and tolower in my_basic_string. * src/m_atmosphere.cc (atm_fields_compactFromMatrix): Use toupper. 2012-04-03 Patrick Eriksson * arts-2-1-69 * src/m_rte.cc (iyRadioLink): Free space loss and path lengths now calculated (internally only). 2012-04-02 Patrick Eriksson * arts-2-1-68 * tests/RadioLink/TestRadioLink.arts: Somewhat more demanding for limb sounding. * src/m_ppath.cc (ppathFromRtePos2): One of the tuning parameters had slipped back to an earlier, bad, value in the commit. 2012-04-02 Jana Mendrok * arts-2-1-67 * CAREFUL! THIS COMMIT BREAKS BACKWARD COMPATIBILITY! 'ChevalAll' batch routines removed (functionality merged into basic batch routines). Also impacts: - setup of part_species (number, order, and naming needs to fit particle field names passed to batch_atm_fields_compactFromArrayOfMatrix - equivalent to abs_species philosophy.) * src/m_atmosphere.cc (atm_fields_compactFromMatrix): - proper implementation of "ignore" (any columns, not only from the back, can be ignored now.) - now also to be used with batch atmospheres that include particle profiles. replaces atm_fields_compactFromMatrixChevalAll. (batch_atm_fields_compactFromArrayOfMatrix): - added catch when batch atmosphere arrayofmatrix is empty (e.g., cause reading-in accidentially removed from control file). - now also to be used with batch atmospheres that include particle profiles. replaces batch_atm_fields_compactFromArrayOfMatrixChevalAll. (AtmFieldsFromCompact): - adapted such that now also to be used with batch atmospheres that include particle profiles. replaces AtmFieldsFromCompactChevalAll. - added massdensity_field and part_species as input parameters. - non-hardwired handling of particle profiles (number, order, naming have to correspond to part_species definition. like vmr profiles to abs_species). (atm_fields_compactFromMatrixChevalAll, batch_atm_fields_compactFromArrayOfMatrixChevalAll, AtmFieldsFromCompactChevalAll): removed. * src/methods.cc (atm_fields_compactFromMatrixChevalAll, batch_atm_fields_compactFromArrayOfMatrixChevalAll, AtmFieldsFromCompactChevalAll): removed. (atm_fields_compactFromMatrix, batch_atm_fields_compactFromArrayOfMatrix, AtmFieldsFromCompact): adapted. * src/m_cloudbox.cc (ScatteringParticlesSelect): - throw error, when particle profile given, but no corresponding ScattData in selection. - replace error when no ScattData selected by a warning (should only occur when part_species empty, which occurs when using batch atmospheres, but having/wanting no particle profiles). - commented out check, whether all ScattData got selected (meaning of check unclear as well as whether it at all works as intended). (pnd_fieldSetup): - remove hardwiring of position of certain hydrometeor in massdensity_field and fixed link between particle profile type (IWC, LWC, etc.) and PSD. it's responsibility of the user to ensure profile type and PSD fit together (i.e., user here can now apply MH97 on LWC - not tested throughout, though. there might be further places hardwiring profile type and PSD relations.)! - catch case with no actual particles/ScattData linked to the particular part_species (though should never occur anymore, since already catched in ScatteringParticlesSelect - throw error, when given PSD is unknown * src/cloudbox.cc (chk_pndsum): added particle type (first part of part_species string) as input parameter, write clearer error message when pnd==0, but xwc!=0. (parse_psd_param): proper handling of incomplete part_species strings. remove check PSD validity here (now done in pnd_fieldSetup). * src/cloudbox.h (chk_pndsum): added part_type as passed parameter. * includes/general.arts: added part_species default setting (empty). required for AtmFieldsFromCompact for no-particle (i.e., clear-sky) batch cases. * tests/DOITBatch/TestDOITBatch.arts: adapted to new requirements (removed *ChevalAll calls, resorted part_species acc. to new requirements, ignore snow and rain). 2012-04-02 Patrick Eriksson * arts-2-1-66 * tests/CMakeLists.txt: Added RadioLink case. Placed transmission type cases (Transmission+RadioLink) between basic emission cases and the scattering cases. * tests/RadioLink/TestRadioLink.arts: Complete. (But calculations seems unstable, something is wrong. So far limb sounding case set to be simple.) * tests/Transmission/TestTransmission.arts: * tests/PencilBeam/TestPencilBeam.arts: * tests/Ppath/TestPpath3D.arts: * tests/Ppath/TestPpath2D.arts: * tests/Ppath/TestPpath1D.arts: Header text extended. 2012-04-02 Patrick Eriksson * arts-2-1-65 * tests/CMakeLists.txt: Added Transmission test (as fast). * tests/Transmission/TestTransmission.arts: New test. * tests/PencilBeam/TestPencilBeam.arts: Updated. 2012-04-02 Oliver Lemke * arts-2-1-64 * cmake/modules/ArtsTestcases.cmake: Add convenience macros to create controlfile based tests. * tests/CMakeLists.txt: Add more new tests and use new macro to create them. MC test cases still need the check against reference values implemented. * src/xml_io.cc (xml_read_from_file,xml_read_arts_catalogue_from_file): Make sure we read the .bin file from the same path as the .xml file. * CMakeLists.txt: Tweak newcheck-fast. 2012-04-01 Patrick Eriksson * arts-2-1-63 * src/m_rte.cc (iyRadioLink): New WSM. So far just calculating the transmission (jacobians and iy_aux not yet handled). But first complete radio link calculations! * src/m_ppath.cc (ppathFromRtePos2): A complete version. * src/ppath.cc: Several functions adopted to change of ppath_copy. (ppath_copy): Handles now also partial copying of ppath2. (ppath_calc): Now completely silent. The output just makes it hard to get good reports from the WSM using this function. So moving the reporting to the WSMs. 2012-04-01 Jana Mendrok * arts-2-1-62 * src/cloudbox.cc: some formatting for better readability. (IWCtopnd_MH97): MH97 PSD with noisy distribution parameters (gaussian noise according to error statistics given in MH97 paper). untested for stability, correct output etc. (but not breaking existing setups), so use with care. (scale_pnd): bugfix. for monodisperse case (no integration) set pnd=dN. * src/cloudbox.h (IWCtopnd_MH97): adapted for noisy MH97 (see above). * src/m_cloudbox.cc: some formatting for better readability. (pnd_fieldSetup): adapted for noisy MH97 (see above). * src/mc_antenna.cc (ran_gaussian): fixed typo. 2012-03-31 Patrick Eriksson * arts-2-1-61 * src/ppath.cc (ppath_calc): Combined check of cloudbox_on and ppath_inside_cloudbox_do lacked a !. Added some assert for extra safety when running with ppath_inside_cloudbox_do set to true. (ppath_start_stepping): Also points on the cloudbox boundary are now flagged as inside cloudbox. That is, no start poinst can end up as "cloudbox boundary". This made the code shorter and avoids unsafe calculations of pressure levels tilts (the code was not complete on this point). Thos closed one point in TODO. 2012-03-30 Patrick Eriksson * arts-2-1-60 * tests/PencilBeam/TestPencilBeam.arts: mblock_index now needed to run iyCalc. Fixed. 2012-03-30 Oliver Lemke * arts-2-1-59 * CMakeLists.txt, src/CMakeLists.txt, tests/CMakeLists.txt: Started utilizing the ctest facility of cmake. Should make it much easier to integrate tests in the future. Also, the output looks very clean compared to now. If you want to give it a try, run 'make newcheck' in the toplevel of the build directory. Note that only one controlfile is run at the moment. More to come. 2012-03-30 Patrick Eriksson * arts-2-1-58 * src/m_ppath.cc (ppathFromRtePos2): Still not complete, but a core algorith now established (after several tries). * src/geodetic.cc (line_circle_intersect,line_sphere_intersect): New functions. * src/check_input.cc (chk_rte_pos): What now is rte_pos[2] was rte_pos[1]. 2012-03-30 Oliver Lemke * arts-2-1-57 * tests/DOIT/TestDOIT.arts, tests/ClearSky/TestClearSky.arts, tests/testall.py: Started to move tests for verifying calculation results against reference values directly into the controlfiles. Removed corresponding tests from testall.py. * src/m_basic_types.cc, src/methods.cc: Add WSM NumericCompare. * src/parameters.cc (get_parameters): Fix crash for arts calls with no controlfile. 2012-03-29 Oliver Lemke * arts-2-1-56 * src/file.{cc,h}: Add function get_dirname. * src/parameters.cc (get_parameters): Use get_dirname. 2012-03-29 Oliver Lemke * arts-2-1-55 * src/parameters.cc (get_parameters): Fix indexing bug introduced accidentally right before committing. 2012-03-29 Oliver Lemke * arts-2-1-54 * src/parameters.cc (get_parameters): If the controlfile is not in the current directory, add its location to the includepath. 2012-03-29 Oliver Lemke * arts-2-1-53 * src/main.cc (main): Bugfix: If arts was called with a relative or full path to a controlfile, report files and output data with default filenames were written into the directory of the controlfile instead of the current directory. 2012-03-29 Oliver Lemke * arts-2-1-52 * src/m_atmosphere.cc (AtmFieldsCalc): Add 1D support for VMR input profiles that do not cover the whole range of the target grid. Boundary values in the partial input profile must be 0. * src/check_input.{cc,h} (chk_interpolation_grids_loose): Add new check used by AtmFieldsCalc to determine the range of the new grid that is covered by the old grid. Also checks that boundary values are 0 in the input data. * src/m_basic_types.cc, src/methods.cc (VectorCompare, MatrixCompare): Make implementation and error output of both methods consistent. Add an optional String argument for passing a custom error message. 2012-03-28 Patrick Eriksson * arts-2-1-51 * src/m_ppath.cc (ppathFromRtePos2): Complete, but not always converging :-( Will be fixed ... (rte_losGeometricFromRtePosToRtePos2): Now using pos2refell_r (making the function much shorter). (PrintTangentPoint): New WSM. * src/geodetic.cc (pos2refell_r): Was not OK for 3D. Had to add check with respect to lon_grid. * src/montecarlo.cc (mcPathTraceIPA): * src/rte.cc (get_iy_of_background): * src/refraction.cc (get_refr_index_3d, get_refr_index_2d): Replaced call of refell2r with refell2d (to be fully conistent with model definitions). * src/m_atmosphere.cc (z_fieldFromHSE): * src/doit.cc (cloud_ppath_update3D): Added comments that using refell2r is OK. 2012-03-28 Patrick Eriksson * arts-2-1-50 * tests/RadioLink/TestRadioLink.arts: Start on a new test cfile. * src/m_ppath.cc (ppathFromRtePos2): Further work ... * src/geodetic.cc (pos2refell_r): New function. * src/geodetic.h: Declaration of distance2D was incorrect. 2012-03-27 Patrick Eriksson * arts-2-1-49 * Same changes as for arts-2-0-40: * tests/Wfuns/TestWfuns.arts: * tests/GroundBased/TestGbased.arts: * tests/ClearSky/TestClearSky.arts: Adopted call of jacobianAddFreqShiftAndStretch. * src/m_jacobian.cc (jacobianAddFreqShiftAndStretch): df now carefully checked, to not give rise to an assert in interpolation applied in function below. f_grid had to be added is input. (jacobianCalcFreqShiftAndStretchInterp): The extrapolation factor for gridpos_poly now set to 1 (default of 0.5 was used before). (jacobianAddPointingZa): Added check that dza is inside [0,0.1], to avoid that unnecessary large values are used. 2012-03-27 Patrick Eriksson * arts-2-1-48 * src/ppath.cc (raytrace_2d_linear_euler): Expression for dlat can return NaN. If isnan, then set 0. Added also an if-statement to brake what can be become an infinite loop at tangent points. (This fixes so that test cfiles TestPpath1/2/3D.arts also run OK) (with refraction.) 2012-03-27 Patrick Eriksson * arts-2-1-47 * tests/Ppath/TestPpath1/2/3D.arts: Updated. Now using ppathCalc. * src/m_ppath.cc (ppath_stepGeometric,ppath_stepRefractionEuler): The case when called just to get nreal catched and handled seperately. * src/ppath.cc (ppath_start_stepping, ppath_calc): nreal was not always set for ppath having a single point. (do_gridcell_2d): Reintroduced some code to set exact value for zenith angle and latitude (when known). A case where numerical problems moved the latitude 1e-13 deg (!) outside the grid box was found. * src/m_ppath.cc (ppathCalc): Reintroduced this WSM, but now calling ppath_agenda (instead of ppath_calc). 2012-03-26 Patrick Eriksson * arts-2-1-46 * src/check_input.cc (chk_atm_field): Added check that 3D fields are constant with longitude for latitudes of +-90 deg (N- and S-pole). * src/m_ppath.cc (rte_losGeometricFromRtePosToRtePos2): New WSM (not yet heaviliy tested). (ppathFromRtePos2): Started on this WSM. * src/ppath.cc (ppath_calc): Now using the two new functions below. * src/check_input.cc (chk_rte_pos,chk_rte_los): New functions. 2012-03-26 Patrick Eriksson * arts-2-1-45 * src/m_ppath.cc (ppathToTransmitter): Just moved the (unused) code from ppath.cc to this file. * src/geodetic.cc (los2xyz): New function. * tests/MonteCarlo/TestRteCalcMC.arts: Added Ignore(mblock_index) to definition of iy_clearsky_agenda. * includes/general.arts: Added Ignore(mblock_index) and Touch(rteLlos) to definition of ppath_agenda. * src/rte.cc: * src/m_fos.cc: * src/m_rte.cc: Adopted to new agenda input described below. mblock_index is applied only for first part of rt calculation. That is, not inside cloudbox or after surface reflection (iy_clearsky_agenda or ppath_agenda is here given -1). * src/agendas.cc: Added mblock_index as input to iy_clearsky_agenda and ppath_agenda. rte_los added as output for ppath_agenda (needed to obtain bending angles for radio links). * src/workspace.cc: Added transmitter_pos and rte_pos2. * src/m_rte.cc: * src/m_sensor.cc: * src/rte.cc: * src/methods.cc: * src/m_jacobian.cc: * src/agendas.cc: imblock -> mblock_index. * src/workspace.cc: Renamed imblock to mblock_index (to fit naming pattern of f_index ybach_index ...). * src/m_doit.cc (CloudboxGetIncoming): Re-reverted (not just a workaround, in fact also a bit safer with respect to ending up with asserts). 2012-03-23 Oliver Lemke * arts-2-1-44 * src/make_auto_md_cc.cc: Bugfix in auto-generated agendaExecute code. Even if a variable is only used as WSM output inside the current agenda, it is possible that it is used first as input further down by another nested agenda, which we can't see here. Therefore initialized variables have to be duplicated. Also, non-initialized WSM output-only variables were falsely flagged as initialized. Fixes bug reported by patrick. * src/methods.cc, src/m_doit.cc: Reverted patrick's workaround for the above bug from arts-2-1-42. * src/docserver.cc (Docserver::new_page): Fixed crash with new libc++. tokens.erase(tokens.end()) never did what it was meant to do (because end() is not a pointer to the last element, but behind it). Statement has no effect with the old libstdc++. Now replaced with the correct call tokens.pop_back(); 2012-03-23 Patrick Eriksson * arts-2-1-43 * src/m_jacobian.cc (jacobianCalcTemperaturePerturbations): molarmass_dry_air required for HSE calculations. * src/m_atmosphere.cc (z_fieldFromHSE): Now using molarmass_dry_air, and could potentially be used for planets beside Earth. The description (in methods.cc) updated. * includes/general.arts: molarmass_dry_air set to 28.966. * src/workspace.cc: Added molarmass_dry_air. * tests/PencilBeam: New folder with a simple test of monochromatic pencil beam calculations. * tests/Ppath/TestPpath1/2/3D.arts: Changed paths to files to work as (future) test cases. 2012-03-23 Patrick Eriksson * arts-2-1-42 * tests/DOITBatch/TestDOITBatch.arts: Moved up call of basics_checkedCalc and cloudbox_checkedCalc, to be placed before CloudboxGetIncoming. (This was already the case in TestDOIT.arts) * src/m_doit.cc (CloudboxGetIncoming): Now checking if basics_checked and cloudbox_checked are set to true. 2012-03-23 Patrick Eriksson * arts-2-1-41 * ppath_agenda introduced. With the exceptions: Not relevant for DOIT (inside cloudbox). Nothing changed for MC (as other ppath_step part is anyhow hard-coded inside MC). * Clean-up/bugfix regarding input to ppath_step_agenda and iy_clearsky_agenda. Caused changes in several files (list below probably not complete). If general.arts used, no changes should be needed. * src/m_ppath.cc (ppath_stepGeometricUpDown): Removed. More complete tests showed that for complete simulations the time gain is very small and then better to remove a method of such low generality. * src/ppath_NotUsed.cc (ppath_geom_updown_1d): Now placed here. * includes/general.arts: Now also defining ppath_agenda and ppath_inside_cloudbox_do. * src/workspace.cc: ppath_cloudbox_do was incorrectly declared as Numeric. Also renamed to ppath_inside_cloudbox_do, for better clarity. N.B., this is a variable that standard usage not need to consider. Just use value set in general.arts! * src/ppath.cc: Replaced outside_cloudbox with ppath_inside_cloudbox_do. * src/montecarlo.cc: * src/m_montecarlo.cc: * src/m_rte.cc: * src/m_jacobian.cc: * src/m_fos.cc: Adopted to agenda changes below. * src/agendas.cc (ppath_step_agenda): A bug found! Added t_field, z_field and vmr_field as agenda input. This is required for jacobian perturbation calculations, to allow that e.g. t-disturbances can affect the refractive index. (iy_clearsky_agenda): Removed p/lat/lon_grid as input. These variables were added to handle FOS-2D, but realises that these variables must be pushed own to ppath_step_agenda level to work. And also other variables must be passed on from agenda to agenda for totally correct results. How to handle this is a later issue! * src/m_atmosphere.cc (z2g): Removed another pow. 2012-03-23 Oliver Lemke * arts-2-1-40 * src/file.cc (find_file): ~ was not expanded properly for include paths passed by the -I commandline option. 2012-03-22 Patrick Eriksson * arts-2-1-39 * src/workspace.cc: Defined ppath_cloudbox_do. This WSV correponds to the ppath_calc input argument outside_cloudbox (but equals !outside_cloudbox). * src/agendas.cc: Defined ppath_agenda. * src/refraction.cc (refr_index_ir): As below + declared constants as static. * src/geodetic.cc (distance3D,distance3D): As below. * src/physics_funcs.cc: Replaced usage of pow with multiplications, eg. pow(f,3.0) -> f*f*f. To hopefully gain some calculation time. 2012-03-21 Patrick Eriksson * arts-2-1-38 * src/ppath.cc (ppath_to_transmitter): New function. Just started. 2012-03-21 Patrick Eriksson * arts-2-1-37 * src/physics_funcs.cc: Removed all hard-coding of double. 2012-03-21 Patrick Eriksson * arts-2-1-36 * src/geodetic.cc (cart2pol, ..., distance2D,distance3D): 2D version of existing 3D ones completed. And added functions for calculating the distance between two points. 2012-03-20 Patrick Eriksson * arts-2-1-35 * src/geodetic.cc: Started to make 2D versions of the functions, ie. pol2cart etc. * src/m_rte.cc (yCompareToReference): Renamed. See below. This as this version was unneceesarily tied to y, and to complement the existing matrixCompare WSM. * src/m_basic_types.cc (VectorCompare): The method above renamed and made more general (all input generic). * tests/Ppath/TestPpath1/2/3D.arts: ppathCalc replaced by ppathStepByStep. * src/m_ppath.cc (ppathCalc): Renamed (to make a better distinction to other ppath methods (to be created), calculating complete ppaths). (ppathStepByStep): New name of ppathCalc. 2012-03-19 Patrick Eriksson * arts-2-1-34 * src/workspace.cc: Stated dimension of diy_dx was wrong. * src/m_rte.cc (iyCalc, yFromIy,yCompareToReference): New WSMs. * src/rte.cc (iyb_calc,get_iy_of_background): Now placed in this file. (iyb_calc): Now using iyCalc. * src/m_atmosphere.cc (z_fieldFromHSE): Now using versions of the equations, and some changes to for efficiency. Chwecked to give same results as pt2z in atmlab. The only Earth specific setting now is average molecular weight of dry air. Shall this be a WSV or calculated from vmr_field (if constrain that sum up to 1 is introduced)? * src/m_ppath.cc: Removed EARTH_GRAV_CONST (not used). * src/constants.cc: Removed not used constants EARTH_GRAV_CONST, LOSCHMIDT_CONST, ATOMIC_MASS_UNIT, SUN_TEMP and PRES_STAND. Added GAS_CONST. Sorted alphabetically (beside when dependency demand other order). Set PI, DEG2RAD and RAD2DEG to value reported by matlab, with "format long". That gave for all three constants one digit more compared to old value (no change for already existing digits). 2012-03-16 Patrick Eriksson * arts-2-1-33 * tests/Wfuns/TestWfuns.arts: Updated according to changes in last commit. 2012-03-16 Patrick Eriksson * arts-2-1-32 * tests/GroundBased/TestGbased.arts: Added definition of lat_true. * src/m_jacobian.cc (jacobianCalcTemperaturePerturbations): Adopted call of z_fieldFromHSE, that required adding input vars. * includes/general.arts: Added definition of g0_agenda. * src/m_atmosphere.cc: Some methods moved to m_planets.cc. (z_fieldFromHSE): Now using g0_agenda, lat_true and lon_true. A first step to make the function more general. * src/m_planets.cc: New file, for planet specific workspace methods. Some WSM from m_atmosphere moved here. (g0Earth): New WSM. * src/agendas.cc: Added g0_agenda. * src/workspace.cc: New WSVs: g0, lat, lat_true, lon and lon_true. Text for lat_grid and lon_grid updated, now (again) saying that they must be set to be empty when not used. 2012-03-16 Patrick Eriksson * arts-2-1-31 * src/ppath.cc: Many changes. In summary: Several bug fixes. Tests removed from several functions, for things now handled by cart2XXX in a general way. Revision of refraction part finished. * src/ppath_NotUsed.cc (cart2poslos): Old version stored here. (cart2sph): Same here. * src/ppath.cc (plevel_slope_3d): cart2poslos was used when cart2pos suffices (where new version used). * src/montecarlo.cc (mcPathTraceIPA): Adopted to addition below. * src/geodetic.cc (cart2poslos,cart2sph): Made a version of the functions with additional input. The new input is information of the original position, used to improve the accuracy. * src/ppath.cc (plevel_crossing_2d): Now making use of absza also inside the function (as originally planned). DEBUG_ONLY then removed. 2012-03-15 Oliver Lemke * arts-2-1-30 * src/m_abs.cc (abs_lines_per_speciesWriteToSplitArtscat): Don't crash for species that have no lines. 2012-03-08 Oliver Lemke * arts-2-1-29 * src/methods.cc, src/m_abs.cc (abs_lines_per_speciesWriteToSplitArtscat): Add WSM to write a splitted ARTSCAT based on abs_lines_per_species. * src/xml_io_array_types.cc (xml_read_from_stream): Output some info to out2 about how many lines were actually read from the ARTSCAT. (read vs. total) * src/m_abs.cc (abs_linesReadFromArts): out2 output moved to xml_read_from_stream because there we have access to the total number of lines in the catalog. * src/parser.cc (ArtsParser::read_name_or_value): Throw a ParseError instead of plain runtime_error for unsupported parameter types. This way it outputs information about the line number in the controlfile. * src/ppath.cc (plevel_crossing_2d): Use DEBUG_ONLY macro for definition of absza. * src/math_funcs.cc (lgamma_func): Remove warning about value being floored to 1 if compiled with Numeric==float as we don't support float anymore. * src/arts.h, src/m_abs.cc, src/xml_io_array_types.cc: Change my "FIXME OLE:" to "FIXME: OLE:" so they're recognized by Xcode. 2012-03-14 Patrick Eriksson * arts-2-1-28 * src/ppath.cc (raytrace_2d_linear_euler): Correction for refraction got a negative length if abs(za) > 90. * doc/uguide/ppath_theory.tex: Removed some typos and sentences describing old stuff. Added a clarification about the unit used for the lat/lon gradient of refractive index. Better placement of figures. 2012-03-14 Patrick Eriksson * arts-2-1-27 * src/ppath.cc: Work on code for refraction. Now complete, and works in the case of n=1 with an accuarcy better than 1 mm. Not yet tested for n>1. 2012-03-13 Patrick Eriksson * arts-2-1-26 * src/ppath.cc: Code for refraction cleaned up and chenged. The old length interpolation removed as it deteriorates the accuracy and anyhow makes the code slower. A lot of changes caused by this. 3D with refraction not yet ready! (interpolate_raytracing_points) (from_raytracingarrays_to_ppath_vectors_1d_and_2d) (from_raytracingarrays_to_ppath_vectors_3d): (ppath_fill_1d, ppath_fill_2d, ppath_fill_3d): Removed or merged into other functions. (ppath_end_1d,ppath_end_2d,ppath_end_3d): Now also making "fill" and handles vector lstep and nreal. * src/ppath_NotUsed.cc (refr_gradients_1d): Now placed here. * src/refraction.cc (get_refr_index_1d, get_refr_index_2d) (get_refr_index_3d, refr_gradients_2d, refr_gradients_3d): Converted rte_pressure, rte_temperature and rte_vmr_list from in/out/arguments to local variables (reminiscent from old agenda functionality). 2012-03-13 Patrick Eriksson * arts-2-1-25 * doc/uguide/ppath_theory.tex: Updated geomtrical 3D text to last changes. * src/ppath.cc: Resorted order of functions, to better seperate code for geometrical and refraction calculations. * src/ppath_NotUsed.cc (za_geom2other_point): Now placed here. 2012-03-12 Patrick Eriksson * arts-2-1-24 * src/ppath.cc: Moved inactive parts to file below. * src/ppath_NotUsed.cc: New file. Storage for code from ppath.cc now not used. 2012-03-10 Patrick Eriksson * arts-2-1-23 * src/ppath.h: Moved RTOL and LATLONTOL to ppath.cc. * src/ppath.cc (do_gridcell_3d_byltest): Updated to new approach to handle tangent points. Then found a bug for path steps around tangent points for old code. "lstep" before and after tangent point not necessarily the same but function returned just a single value. Solved automatically by switch to new approach. Introduced LACC, and moved RTOL and LATLONTOL from ppath.h, as not used externally. * src/m_general.cc (Test): Removed old test code. 2012-03-09 Patrick Eriksson * arts-2-1-22 * src/rte.cc: * src/m_rte.cc: * src/m_general.cc (Print): * src/m_fos.cc: * src/doit.cc: * src/ppath.cc: * src/xml_io_compound_types.cc: Adopted to change below. * src/ppath.h: Changed back: l_step -> lstep and l_space -> lspace (to be consistent with the WSV ppath_lmax/raytrace). * doc/uguide/batch.tex: Updated the code example where ppath_stepGeometric is re-defined. * doc/uguide/rte.tex: Updated regarding that sensor_pos now holds altitude instead of radius. * doc/uguide/ppath.tex: A quick re-revision. Some less important comments removed. * doc/uguide/atmosphere.tex: Some text improvements and updates. * src/geodetic.cc: Geiod -> ellipsoid in header. * src/ppath.cc: Part around PTILTMAX changed. Some more work on 3D code. * src/ppath.h: Removed version of plevel_slope_3d not used outside of ppath.cc. Removed PTILTMAX. Was just used in one place. 2012-03-07 Patrick Eriksson * arts-2-1-21 * src/ppath.cc (lat_crossing_3d, r_crossing_3d): Yet another version for selection between l1 and l2. 2012-03-05 Patrick Eriksson * arts-2-1-20 * src/ppath.cc (ppath_step_geom_3d): Now handling tangent points in the same way as 1D and 2D functions. (r_crossing_3d): Added special handling of r_hit==r_start. 2012-03-05 Patrick Eriksson * arts-2-1-19 * src/ppath.cc (ppath_step_geom_3d): Forgot to switch back to old version of do_gridcell_3d. (Now checks run with OK.) 2012-03-05 Patrick Eriksson * arts-2-1-18 * src/ppath.cc (r_crossing_3d, lat_crossing_3d, lon_crossing_3d): Now complete versions. 2012-02-29 Patrick Eriksson * arts-2-1-17 * src/ppath.cc: Some work on new 3D code. (lat_crossing_3d,lon_crossing_3d): New functions. Not yet complete. 2012-02-28 Oliver Lemke * arts-2-1-16 * src/m_abs.cc (abs_linesReadFromSplitArtscat): If basename is a directory (path ends with '/'), don't append '.SPECIES.xml' but just 'SPECIES.xml'. * src/xml_io_array_types.cc (xml_read_from_stream): Fix regression for reading ArrayOfLineRecord from an ARTS catalog whose version number is just "3" instead of "ARTSCAT-3". (xml_write_to_stream): When writing an ArrayOfLineRecord, determine the required catalog version from the first LineRecord. If the array contains a mixture of different versions of lines, throw a runtime error. * src/xml_io.cc (xml_read_from_file, xml_read_arts_catalogue_from_file): Output the _full_ filename to out2. Gives better feedback to the user if the file is found somewhere in the path (ARTS_DATA_PATH) instead of the current directory. 2012-02-28 Patrick Eriksson * arts-2-1-15 * ChangeLog: Was not saved at last commit. 2012-02-28 Patrick Eriksson * arts-2-1-14 * doc/uguide/ppath_theory.tex: Revision and extending general part of 3D geometrical calculations. * src/ppath.cc (gridcell_crossing_3d): Extracted this function from arts-1-1-400, for later use (now inside /* */). * src/geodetic.cc (cart2poslos): Just rearrangement to get dy and dz terms in logical order. 2012-02-27 Patrick Eriksson * arts-2-1-13 * src/ppath.cc (do_gridcell_3d_byltest): Old do_gridcell_3d renamed. (plevel_crossing_3d): Started. (do_gridcell_3d): Started on this new version of the function. 2012-02-27 Patrick Eriksson * arts-2-1-12 * doc/uguide/ppath_theory.tex: General revision. Section on numerical precision removed. 2D geometrical section updated following changes in source code. * doc/uguide/ppath.tex: Even more sections moved to ATD. Text revised and updated. * src/xml_io_compound_types.cc: * src/m_general.cc: * src/ppath.cc (ppath_calc): Adopted to change below. * src/ppath.h (struct Ppath): Renamed lspace to l_space (to be consistent with l_space). 2012-02-24 Patrick Eriksson * arts-2-1-11 * A first step of moving all path equations to ATD. * doc/uguide/arts_theory.tex: * doc/uguide/CMakeLists.txt: ppath_theory.tex added. * doc/uguide/ppath_theory.tex: Holds the part removed below. Not yet adopted to ATD. * doc/uguide/ppath.tex: Last part having a lot of equations moved to ATD. * doc/uguide/surface.tex: First two section revised, and slightly changed. 2012-02-24 Patrick Eriksson * arts-2-1-10 * src/m_ppath.cc (ppath_stepGeometricUpDown): Now working with an active cloudbox (realised that this method can be used with DOIT 1D, if ppath-step_agenda is changed after the cloudbox radiation field is determined) * src/ppath.cc (ppath_geom_updown_1d): Core part of change above done here. * src/ppath.cc (plevel_crossing_2d): Removed old version of this function. * src/geodetic.cc (geomtanpoint,geomtanpoint2d): Deactivated, as not yet known if result is OK: * src/ppath.h: * src/ppath.cc: All special treatment of float removed. 2012-02-24 Oliver Lemke * arts-2-1-9 * aii, CMakeLists.txt: Remove outdated IDL routines. 2012-02-24 Oliver Lemke * arts-2-1-8 * CMakeLists.txt: Add a very clear warning if the user decides to compile with a custom Numeric type. 2012-02-24 Patrick Eriksson * arts-2-1-7 * src/ppath.h: Changed RTOL to 1e-3, LATLONTOL to 1e-8 and POLELAT to 90-1e-8. These all corresponds to an overall accuracy of about 1 mm (for Earth). 2012-02-23 Patrick Eriksson * arts-2-1-6 * tests/GroundBased/TestGbased.arts: The new WSM below is now used by this case. * src/m_ppath.cc (ppath_stepGeometricUpDown): New WSM. Provides much faster ppath calculations for 1D upward or downward cases. * src/ppath.cc (ppath_geom_updown_1d): New. * src/doit.cc: * src/m_doit.cc: z_surface removed as input to "update" methods, due to change below. * src/agendas.cc: Removed all input arguments beside ppath_step. 2012-02-23 Oliver Lemke * arts-2-1-5 * src/parameters.{cc,h}: Add datapath to class Parameters. (parse_path_from_environment): Add function to parse paths from an environment variable. (get_parameters): Add option --datapath. * src/parser.cc (ArtsParser::parse_agenda): Pass includepath to find_file * src/main.cc (main): Add datapath output to -v. * src/file.{cc,h} (find_file): Add parameter paths. * src/xml_io.cc (xml_read_from_file,xml_read_arts_catalogue_from_file): Pass includepath and datapath to find_file. 2012-02-23 Patrick Eriksson * arts-2-1-4 * src/ppath.cc (rslope_crossing): Changed some limits for dlat. Using atmlab's arts_rslope_crossing, the function is OK-ed again. (plevel_crossing_2d): Added more asserts. Tested the new two step algorithm using atmlab's arts_rslope_crossing. Could not find any case where the algorithm fails (considering that the maximum radius distance for rslope_crossing now is (lat3-lat1)*c). 2012-02-22 Patrick Eriksson * arts-2-1-3 * src/ppath.cc (ppath_step_geom_1d): Had to reinroduce handling of tangent points on this level. It was here for a good reason that I forgot (to also handle DOIT). Tangent points now flagged as endface 8. Same change for 2D. 2012-02-22 Oliver Lemke * arts-2-1-2 * src/libmicrohttpd/: Update to r19912 from https://gnunet.org/svn/libmicrohttpd. * CMakeLists.txt, src/libmicrohttpd/CMakeLists.txt: Tweak warning flags for Clang compiler, and libmicrohttpd. 2012-02-22 Oliver Lemke * arts-2-1-1 * Merge arts-dev branch r7344 into trunk. 2012-02-22 Oliver Lemke * arts-2-1-0dev1 * ChangeLog: Remove conflict marker. 2012-02-22 Oliver Lemke * arts-2-1-0dev0 * Merged from trunk r7341. 2012-02-22 Oliver Lemke * arts-2-1-0 * Increase minor version after branching. 2012-02-22 Patrick Eriksson * arts-2-0-38dev4 * src/ppath.cc (ppath_calc): lspace was not transfered to final ppath. Polishing of new code for 1D and 2D geomtric. * src/xml_io_compound_types.cc: Ppath constant was saved as lspace! 2012-02-20 Patrick Eriksson * arts-2-0-38dev3 * make check and make check-fast now run with OK. * tests/*/*.arts: * includes/*/*.arts: All control files adopted to changes made around refellipsoid and ppath. * tests/testall.py (TestClearSky.test3): Changed target Tb for ClearSky case. This was needed as the Earth radius in constants.cc has been changed. Verified that old target Tb was obtained with old radius (so no change in RT part). Down-looking cases less affected by the changed radius, but could now be a slight shift with respect to old target values (if za < 180). 2012-02-20 Patrick Eriksson * arts-2-0-38dev2 * src/ppath.cc (ppath_copy): Did not work for l_step if ppath2.np=1. * src/ppath.cc (ppath_calc): The case of single point ppaths now handled seperately when creating the final ppath. The merging of ppath_array could then be made somewhat more efficient, and solves a problem of getting nreal into the first point of final ppath. * src/m_ppath.cc (ppath_stepGeometric): Now sets nreal to 1. This solves nreal for geometrical calculations (after the changes above). 2012-02-19 Patrick Eriksson * arts-2-0-38dev1 * src/ppath.cc (ppath_calc): Added handling of Ppath.lspace and Ppath.nreal. lspace calculated, but nreal not yet set. * src/m_general.cc (Print): * src/xml_io_compound_types.cc (xml_write_to_stream): Added handling of Ppath.lspace, and adopted to changed field order. * src/ppath.h (struct Ppath): Added field lspace. Needed to keep track of complte ppath length/delay. Changed order of fields. * src/ppath.cc (rslope_crossing): New function. Just performing core task of old plevel_crossing_2d (finding the crossing with a level having radial slope). (plevel_crossing_2d): New version of this function, with extended scope. It now handles all tasks around checking if there is a crossing inside the latitude grid range. The accuracy also improved, as the Taylor expansion expression is now only used for a final smaller step. Exact expressions are used in a first step, moving the ppath as close as possible to the surface before the approximative expression is applied. (do_gridcell_2dv2): New version of do_gridcell_2d, making use of the functions above. All this recoding done with the aim to later use the same calculation approach, and function structures, for 3D. 2012-02-20 Oliver Lemke * arts-2-0-38dev0 * Merged from trunk r7321. 2012-02-20 Oliver Lemke * arts-2-0-38 * src/m_abs.cc (abs_linesReadFromSplitArtscat): Use species ids instead of strings. * src/xml_io.cc: Comment out unused variable. 2012-02-17 Gerrit Holl * arts-2-0-37 * src/m_cloudbox.cc (pnd_fieldSetup): bugfix - Fix fixed bug from arts-1-17-25, set pnd = dN if monodisperse 2012-02-17 Oliver Lemke * arts-2-0-36 * CMakeLists.txt: Turn off -Wno-sign-conversion for now. It's not supported by older GCCs. 2012-02-17 Oliver Lemke * arts-2-0-35 * CMakeLists.txt: Turn on -Wconversion warning by default. * src/m_cloudbox.cc: (cloudboxSetAutomatically): Change type of p_margin1 from Index to Numeric to avoid loss of precision in implicit cast. (ScatteringParticlesSelect): Change type of intarr_total from Numeric to Index. * src/docserver.cc (Docserver::launch): Cast port to uint16_t. * src/math_funcs.cc, src/m_abs_lookup.cc, src/m_surface.cc: Add some explicit casts from Index to Numeric to suppress conversion warning for cases where we know what we're doing. * src/nc_io_array_types.cc: Remove unused variables. * src/libmicrohttpd/daemon.c (send_param_adapter): Add explicit cast to avoid conversion warning. 2012-02-14 Oliver Lemke * arts-2-0-34 * src/m_abs.cc (abs_linesReadFromSplitArtscat): Use isdigit instead of isnumber for compatibility. 2012-02-14 Oliver Lemke * arts-2-0-33 * src/m_abs.cc (abs_linesReadFromSplitArtscat): First implementation. For abs_species with an isotope that's not a number or '*', no catalog is read. * src/methods.cc: Add WSM abs_linesReadFromSplitArtscat. 2012-02-14 Oliver Lemke * arts-2-0-32 * src/xml_io_array_types.cc: Combine the almost identical functions for reading an ArrayOfLineRecord with and without frequency limits into one function. Setting the limits fmin and/or fmax to NAN indicates to not filter by frequency. * src/parameters.cc (get_parameters): Use consistent conversion error checking on isstringstreams. 2012-02-13 Oliver Lemke * arts-2-0-31 * src/absorption.{cc,h}: Add new ARTSCAT-4 fields to LineRecord. Add support for ARTSCAT-4 in LineRecord output operator. (LineRecord::ReadFromArtscat4Stream): Implemented. 2012-01-30 Oliver Lemke * arts-2-0-30 * Preparations for ARTSCAT-4. * src/absorption.{cc,h}: Rename LineRecord::Version to LineRecord::VersionString. Version() now returns the version number as an Index. Rename LineRecord::ReadFromArtsStream to LineRecord::ReadFromArtscat3Stream and add LineRecord::ReadFromArtscat4Stream (copy of LR:RFA3S for now). * src/xml_io_array_types.cc (xml_read_from_stream): Adapt ArrayOfLineRecord reading routine to detect ARTSCAT version and call corresponding LR:ReadFromArtscatXStream function. * src/m_abs.cc (abs_linesReadFromArtsObsolete): Adapt for name changes. 2012-02-08 Jana Mendrok * arts-2-0-29 * src/ppath.cc: bugfix (cloudbox reaching to TOA -> first ppath instance sees background, don't try to iterate along path). 2012-02-18 Patrick Eriksson * arts-2-0-28dev15 * tests/Ppath/TestPpath3D.arts: Was not svn-added. 2012-02-18 Patrick Eriksson * arts-2-0-28dev14 * src/ppath.cc (r_crossing_2d): New function. * src/agendas.cc: p_grid now not input to ppath_step_agenda. Required adoption in several files. * src/m_ppath.cc (ppath_stepGeometric): Adopted calls of sub-functions. p_grid now not used. * src/doit.cc (ppath_step_in_cloudbox): Removed this function. Not used at all! * src/ppath.cc: Changes throughout the file with respect to tangent points. The ppath fields now not set. Tangent points now not handled as an "endface", but handled one level lower among the sub-functions (now at the level of do_gridrange_1d level). Requires less shuffling of data and cleaner code. * src/m_montecarlo.cc (MCIPA): Lat and lon of tangent point now determined from ppath.pos. * src/m_general.cc: * src/xml_io_compound_types.cc: Adopted to change of Pppath. * src/ppath.h (struct Ppath): Removed field tan_pos, geom_tan_pos and next_parts. * src/ppath.cc (ppath_start_stepping): More tests. Fixed one bug and now demanding that platform radius is > r_toa_max. Handling of 2D and 3D now even more similar. * tests/Ppath/TestPpath3D.arts: New. 2012-02-17 Patrick Eriksson * arts-2-0-28dev13 * src/ppath.cc (plevel_crossing_3d): Renamed to r_crossing_3d as task of function has been changed. Header text described the original version. * src/ppath.cc (ppath_start_stepping): Some improvements of the code for finding TOA entrance point for 2D. Complete new code for 3D. Not yet tested heavily. 2012-02-16 Patrick Eriksson * arts-2-0-28dev12 * tests/Ppath: Start on a set of new test control files. * src/ppath.cc: Corrected errors in several headers. Corrected/changed text for several errors. (geompath_za_at_r): Sign of za was not kept if r==ppc! (ppath_start_stepping): Code 2D now revised and using a new algorithm for finding entrance point at TOA. (Full 1D and 2D ppath calculations tested quite carefully.) * src/m_cloudbox.cc (cloudbox_checkedCalc): Polished error message. * src/m_basic_types.cc (IndexStepDown, IndexStepUp): New WSMs. (IndexStep): Replaced by IndexStepUp. 2012-02-15 Patrick Eriksson * arts-2-0-28dev11 * src/geodetic.cc (poslos2cart): Added assert for za. 2012-02-13 Patrick Eriksson * arts-2-0-28dev10 * src/geodetic.cc (geomtanpoint2d): New. Not yet complete. * src/ppath.cc (ppath_start_stepping): A complete revision of the function, to use same basic approach for 1D, 2D and 3D. And to add some missing parts (cloudbox in 2D, cloudbox reaching TOA ...). Code for 2D presently not complete. * src/geodetic.cc (poslos2cart): Now not calling sph2cart, to save some time (code instead copied and adopted). * src/geodetic.cc (geomtanpoint): New function. Calculates the geomtrical tangent altitude, also for non-spherical planets. * src/constants.cc: Changed EARTH_RADIUS from 6.378e6 to 6.3781e6, which seems to be the standard value. * src/math_funcs.cc (cross): A function for 3D cross product. (unitl): New function. Normalises a vector. 2012-02-10 Patrick Eriksson * arts-2-0-28dev9 * Change to a more common defintion of the cartesian coordinate system made. * src/ppath.cc: Functions listed below removed. (plevel_crossing_3d): Here y <-> z change needed. * src/geodetic.cc: cart2poslos, cart2sph, geompath_tanpos_3d, poslos2cart and sph2cart, now placed in this file. Cartesian y and z axes have changed place inside these functions, to follow a more standard cartesian coordinate system. 2012-02-10 Patrick Eriksson * arts-2-0-28dev8 * Code now updated following changes around refellipsoid and sensor_pos/rte_los. Made basic tests, but no heavy testing. This will be done after ppath_start_stepping is finished. * src/m_general.cc (Print): Adopted printing for Ppath. * src/ppath.h: Removed field z from Ppath structure. * src/montecarlo.cc (mcPathTraceIPA): Adopted to change for rte_pos (now holding altitude, not radius). Seems to be only needed change for all MC code, with respect to this point. * src/m_doit.cc (CloudboxGetIncoming, CloudboxGetIncoming1DAtm): Removed refellipsoid as input, now not used. * src/m_doit.cc (doit_i_fieldUpdateSeq1DPP): * src/doit.cc (cloud_ppath_update1D_planeparallel): Removed not used input arguments ppath_step_agenda and refellipsoid. Adopted to changes of pos definition. * src/ppath.cc (ppath_start_stepping): Now fixed and tested for 3D. 2012-02-10 Patrick Eriksson * arts-2-0-28dev7 * src/ppath.cc (ppath_start_stepping): Updated for 3D. 2012-02-09 Patrick Eriksson * arts-2-0-28dev6 * src/ppath.cc: 2D geomtric cases revised. 1D and 2D geometric tested. Started on 3D. * src/geodetic.cc (refell2d): New function. 2012-02-09 Patrick Eriksson * arts-2-0-28dev5 * Work in progress. Transfer from lap- to desktop. Does not compile! * src/ppath.cc: Being revised. * src/xml_io_compound_types.cc (xml_write_to_stream): ppath.z -> ppath.r. * src/ppath.h (struct Ppath): Field z renamed to r. * src/m_ppath.cc: File revised with respect to new WSV definitions. (VectorZtanToZa1D): Adopted to new definition of sensor_pos. (VectorZtanToZaRefr1D): As above. * tests/OdinSMR/TestOdinSMR.arts: * tests/OdinSMR/TestOdinSMR_119ghz.arts: Removed call of sensor_posAddRgeoid. * includes/general.arts: refellipsoid now set (instead of r_geoid). 2012-02-08 Patrick Eriksson * arts-2-0-28dev4 * src/: r_geoid and the term geoid wiped out from the source code! Numerous changes to make the change to refellipsoid, affecting a high number of files. The code compiles, but no test calculations yet made. * src/m_surface.cc (r_geoidSpherical, r_geoidWGS84): Removed. * src/workspace.cc: r_geoid removed. * src/m_ppath.cc (rte_posAddRgeoid): Removed. Sensor position will be given as altitude above ellipsoid (future change). (sensor_posAddRgeoid): As above. * src/m_ppath.cc (ppathCalc): Now considers basics_checked and cloudbox_checked. * src/m_atmosphere.cc (basics_checkedCalc): The method now checks refellipsoid instead of r_geoid. 2012-02-08 Patrick Eriksson * arts-2-0-28dev3 * doc/uguide/concept.tex: Rewrote item point including "geoid". * doc/uguide/surface.tex: Revised, following the change from r_geoid to refellipsoid. * doc/uguide/atmosphere.tex: Revised up to Sec. 2.5, following changes made/planned. The view of 1D and 2D atmospheres slightly changed. For 1D, the sensor is now consider to be placed at lat/lon=0, and be looking North. For 2D, the plane is now "locked" to pass above the poles, and lat=0 is at the Equator (but no upper or lower limit as before). This definition is needed for 2D to have a relationship to the reference ellipsoid. * src/check_input.cc (chk_atm_grids): Changed back to demand that lat_grid and lon_grid are empty when not used. Variables like "lat_true" and "lon_true" will be introduced to geographically place 1D and 2D cases. 2012-02-07 Patrick Eriksson * arts-2-0-28dev2 * src/geodetic.cc (refell2r): New function. * src/m_geodetic.cc (refellipsoidForAzimuth): New WSM. (refellipsoidOrbitPlane): New WSM. 2012-02-07 Patrick Eriksson * arts-2-0-28dev1 * src/m_geodetic.cc: (refellipsoidEarth, refellipsoidJupiter, refellipsoidMars) (refellipsoidSet, refellipsoidMoon, refellipsoidVenus): New WSMs. * src/surface.cc: Moved internal functions before placed in m_surface to this file. * src/CMakeLists.txt: Added the new files listed below. * src/geodetic.h: * src/geodetic.cc: * src/m_geodetic.cc: * src/surface.h: * src/surface.cc: New files. * src/*: Removed all remaining rss. in my email address. * src/workspace.cc: Added refellipsoid. * TODO: Will be using this file for notes. 2012-02-06 Oliver Lemke * arts-2-0-28dev0 Merged from trunk r7263. 2012-01-30 Oliver Lemke * arts-2-0-28 * Fix compilation against the new libc++ http://libcxx.llvm.org/ * src/xml_io.cc (xml_read_header_from_stream): Use ' ' as delimiter. * src/m_general.cc: Include arts.h before using TIME_SUPPORT. * src/src/file.cc: Include arts.h first and include unistd.h (for 'unlink' function) if available. 2012-01-26 Oliver Lemke * arts-2-0-27 * src/continua.cc: Add two missing throws for runtime errors. 2012-01-20 Oliver Lemke * arts-2-0-26 * src/m_optproperties.cc: Make all preprocessor macros UPPERCASE. Otherwise the code gets horribly unreadable. If they appear just as normal variables it's very hard to guess that they're actually macros. Macros changed: PART_TYPE F_DATAGRID T_DATAGRID ZA_DATAGRID AA_DATAGRID PHA_MAT_DATA_RAW EXT_MAT_DATA_RAW ABS_VEC_DATA_RAW PND_LIMIT 2012-01-09 Oliver Lemke * arts-2-0-25 * CMakeLists.txt: Add cmake option -DWITH_GUI=1. * src/CMakeLists.txt: Detect Qt libraries, link with artsgui lib and add gui subdirectory if enabled. * src/parameters.{cc,h}: Add -G (--gui) option to launch with GUI. * src/main.cc: Add GUI launch code. * src/gui/: Add subdirectory for arts GUI library code. * src/gui/CMakeLists.txt, src/src/gui/ag_main.{cc,h}, src/gui/mainwindow_qobj.{cc,h}: Simple main window with helloworld message. * config.h.cmake: Add ENABLE_GUI preprocessor flag. * src/continua.cc: Initialize jsum with 0 to avoid warning. 2011-12-07 Oliver Lemke * arts-2-0-24dev0 Merged from trunk r7223. 2011-12-07 Oliver Lemke * arts-2-0-24 * src/arts_omp.cc (arts_omp_in_parallel): No more special treatment needed for Intel Compiler. 2011-11-24 Oliver Lemke * arts-2-0-23 * CMakeLists.txt: Add an additional check right at the beginning to make sure that we never allow cmake to be called inside the source directory. NOTE: If you get an error after updating that you have to build arts outside the source tree although you are actually in a separate build directory, make sure that there is no file 'CMakeCache.txt' or directory 'CMakeFiles' in your toplevel arts source(!!) directory. * tests/testall.py: Fix path to arts for Xcode build. * src/docserver.cc (insert_breadcrumbs): Fix type of t, int -> size_t. 2011-11-23 Patrick Eriksson * arts-2-0-22 * doc/uguide/symbol_defs.tex: More definitions around refractive index. Some consistency changes. * doc/uguide/rte.tex: Planck function equation now uses symbol definitions throughout. 2011-11-22 Patrick Eriksson * arts-2-0-21 * doc/uguide/rte.tex: New symbol definitions used. * doc/uguide/symbol_defs.tex: Added definitions for Stokes elements I, Q, U and V, and speed. 2011-11-18 Oliver Lemke * arts-2-0-20dev0 * Created development branch from trunk r7212. 2011-11-11 Gerrit Holl * arts-2-0-20 * src/m_abs_lookup.cc (abs_lookupCreate): Improve error message. 2011-11-07 Patrick Eriksson * arts-2-0-19 * src/ppath.cc (ppath_start_stepping): Now also "upward" observations are allowed when the sensor is above the model atmosphere. The idea is to allow the cloudbox to include TOA. 2011-11-05 Jana Mendrok * arts-2-0-18 * src/cloudbox.cc: (IWCtopnd_MH97): for large IWC (obviously outside the original parameterization range) number densities in small particle mode got negative. now, if so, explicitly set to 0. though not specified by MH97, this should be fine, since even the small mode rather creates particles with Dm>100um, which should be covered by the large mode. 2011-11-05 Jana Mendrok * arts-2-0-17 * src/cloudbox.cc: (IWCtopnd_MH97): bugfix. cases with all ice in <100um mode (lowT & small IWC) lead to NaN at >100um mode lead to all pnd set to 0. now producing proper pnd_field (relevant more for IR than MW, I guess). (chk_pndsum): bugfixed interface, where vol and density where swapped. modified pnd scaling correction - don't let pnd==0 slip through, when xwc!=0, so rather test for xwc==0 instead of x.sum()==0. potentially caused huge deviations that went uncatched... * src/cloudbox.cc: corresponding chk_pndsum interface adaption. 2011-11-02 Daniel Kreyling * arts 2-0-16 * src/m_cloudbox.cc: (pnd_fieldSetup) Added new globally applicable particle size distribution for ice and snow particles, based on the work of A.J. Heymsfield (apparently not published yet). In ARTS terms the new PSD is called 'H11' and can be used for scattering calculations just like 'MH97'. * src/cloudbox.cc (pnd_H11): new function to evaluate the distribution at given scattering particle sizes (scale_H11): scaling the 'H11' PND values to total ice or snow massdensity. *src/methods.cc: updated doku for 'H11' *src/workspace.cc: updated doku for 'H11' 2011-10-27 Jana Mendrok * arts-2-0-15 * src/methods.cc,agendas.cc,workspace.cc: more broken doc links fixed 2011-10-27 Jana Mendrok * arts-2-0-14 * src/methods.cc: fixed some doxygen doc (references to workspace methods/variables) * includes/smr: added sensor definitions for ciwsir, cloudice, iss-smr, (jaxa-)smr 2011-10-17 Stefan Buehler * arts-2-0-13 * src/absorption.h (LineRecord): Updated doxygen documentation for this class. (Basically added information on the XML header and footer.) Triggered by Agnes asking about a description of the ARTS catalogue format. 2011-10-04 Oliver Lemke * arts-2-0-12 * src/agendas.cc: Ooops, don't fix it if it ain't broken. 2011-10-04 Oliver Lemke * arts-2-0-11 * src/docserver.{cc,h}: Mark broken *LINKS* red. Add a 'Doc check' page that lists all broken links. Add link to this page in footer. (insert_breadcrumb_token, insert_breadcrumbs): Fix broken breadcrumbs. (description_add_links): Also search through GIn and GOut to determine if *LINK* target exists. * src/methods.cc: Put space around * if used as multiplication operator in docs. * src/agendas.cc: Minor doc fix. 2011-09-11 Patrick Eriksson * arts-2-0-10 * src/m_rte.cc (yCalc2): Some bug fixes. Changes needed elsewhere before a switch to this version cen be made. 2011-09-15 Oliver Lemke * arts-2-0-9 * CMakeLists.txt: Provide some love for Cygwin users. 2011-09-15 Patrick Eriksson * arts-2-0-8 * src/m_basic_types.cc (ArrayOfIndexSetConstant): Created. * src/m_sensor.cc (sensor_responseFromArrayData): Created. (sensor_response_arraySingle): Created. * src/workspace.cc: Introduced sensor_response_array, sensor_response_index, sensor_response_f_array, sensor_response_pol_array, sensor_response_za_array and sensor_response_aa_array 2011-09-14 Gerrit Holl * arts-2-0-7 * src/m_montecarlo.cc(MCGeneral): Bugfix - Move check for g==0 to outside if...else block checking for different scenarios; this is problematic in any case. * src/montecarlo.cc(mcPathTraceGeneral): Bugfix - Don't calculate log(exp(very_negative_number)), result might become 0, causing problems later. Use the very_negative_number directly instead. 2011-09-11 Patrick Eriksson * arts-2-0-6 * src/agendas.cc: Added sensor_response_agenda. * src/m_rte.cc (yCalc2): A version of yCalc using sensor_response_agenda. Not yet activated (just backup of the coding so far). 2011-09-09 Oliver Lemke * arts-2-0-5 * src/matpackII.cc: Fix bug in Sparse copy constructor. Crashed when trying to copy empty Sparse matrices. * src/xml_io_instantiation.h, src/array.h, src/xml_io_array_types.cc, src/xml_io_types.h, src/groups.cc, src/nc_io_array_types.cc: Add ArrayOfSparse. 2011-09-08 Gerrit Holl * arts-2-0-4 * src/m_montecarlo.cc (MCGeneral): Bugfix - If the lowest layer has large extent and a thick cloud, g may be 0 due to underflow, but then I_i should be 0 as well. Don't turn it into nan for no reason! 2011-09-08 Patrick Eriksson * arts-2-0-3 * src/m_jacobian.cc (jacobianCalcPolyfit): Improved error message. 2011-09-05 Oliver Lemke * arts-2-0-2 * src/arts.{h,cc}: Add ArtsOut parameter to arts_exit_with_error_message and exit_or_rethrow. Fixes a bug reported by Gerrit where runtime error output only ended up on stderr but was missing from the rep file. * src/main.cc, src/m_atmosphere.cc (batch_atm_fields_compactFromArrayOfMatrix), src/m_agenda.cc (Arts, Arts2), src/absorption.{h,cc} (xsec_species), src/m_abs_lookup.cc (abs_lookupCreate), src/m_batch.cc (ybatchCalc): Pass out0 to arts_exit_with_error_message and exit_or_rethrow. * src/m_abs.cc (abs_xsec_per_speciesAddLines), src/absorption.{h,cc} (xsec_species), Add verbosity argument to xsec_species. * rte.{h,cc} (iyb_calc), src/m_jacobian.cc: Add verbosity argument to iyb_calc. * src/groups.cc (get_wsv_group_ids): Removed unused variable it. * doc/arts-splash.gif: Remove 'pre2.0'. 2011-09-05 Oliver Lemke * arts-2-0-1 * src/arts.h: Change ARTS-1-1-x -> ARTS-2 in doc header. * src/docserver.{cc,h}, src/main.cc: Refactor docserver into a class. * src/methods.h, src/methods_aux.cc: Add declarations for format_paragraph and get_short_wsv_description. 2011-09-02 Oliver Lemke * arts-2-0-0 * ChangeLog: ARTS-2 release!