2001-04-27 Carlos Jimenez * arts-0-0-162 * methods.cc, md.h,M_wfs.cc: added a worspace method called linAltsFromPres to calculate a set of pressures corresponding to a set of altitudes equally spaced. A possible application is to define a k_grid with equally spaced altitudes. * constants.cc: the Earth's gravitational constant (mu=3.98601E14 m3/s2) added to allow calculation of orbital parameters, named as EARTH_GRAV_CONST. * methods.cc, md.h, m_loc.cc: zaFromDeltat updated with EARTH_GRAV_CONST 2001-04-27 Thomas Kuhn * arts-0-0-161 * add additional H2O absorption models: MPM85/87, MPM89, MPM93, Cruz-Pol98, and Rosenkranz98 added. Preliminary stored in continua.cc, but this will be changed in future. 2001-04-25 Oliver Lemke * arts-0-0-160 * configure.in, arts.spec.in: Added a spec file for rpm creation. This would make the installation process for the release version much easier and guarantees a clean deinstallation of arts. I will added some more information about building arts rpms. 2001-04-24 Patrick Eriksson * arts-0-0-159 * New function to set the emission flah: emissionOn and emissinOff. * Some new functions to set the ground variables (groundSet, groundOff and groundAtBottom). * The hydrostatic equilibrium is revised. Check out the functions hseSet, hseOff, hseFromBottom and hseCalc). * Temperature WFs with hydrostatic eq. now implemented. Two versions exist, kTemp and kTempFast. Use the fast one! 2001-04-20 Thomas Kuhn * arts-0-0-158 * add cloud/fog and ice absorption continua 2001-04-18 Stefan Buehler * arts-0-0-157 * ami/arts/.cvsignore: Added wsv.txt. * h_matrix.cc: Fixed bug in VectorApplyH and MatrixApplyH (dimension of output variable was not set). Also added safety check of output variable dimension to h_apply functions. Probably, there should be similar checks in h_diff, but I did not touch this. 2001-04-11 Patrick Eriksson * arts-0-0-156 * Fixed a bug in qtool. The line feed was included when calling inline functions. 2001-04-11 Carlos Jimenez * arts-0-0-155 * methods.cc, md.h, m_loc.cc: added a workspace method called zaFromDeltat to calculate the zenith angles for a LEO-LEO cross -link geometry corresponding to a given increment in time in the motion of the LEOs. The LEOs are supposed to be moving in opposite directions in nearly identical orbits (but not \n" "colliding!). 2001-04-09 Thomas Kuhn * arts-0-0-154 * add continua * add some IDL functions and update of plot_abs_per_tg.pro 2001-04-04 Carmen Verdes * arts-0-0-153 * Initialize output to zero! This is important, because otherwise the output variable could `remember' old values. 2001-04-04 Patrick Eriksson * arts-0-0-152 * NaNs were obtained when using float and a conversion to brightness temperatures was performed. Some scalars have been hardcoded to be double to avoid this problem. * A similar problem was found in the vector version of planck. * A warning, when using very large or small values, as the Planck and Boltzman constants, I would recomment to hard-code double to avoid these disturbing problems. 2001-04-04 Patrick Eriksson * arts-0-0-151 * Deleted wsv.txt in ami/arts from CVS. This function is auto-generated when compliling ARTS and is copied to ami when running the init script. Axel had some problems with this function and I hope it is best to keep it outside CVS (and I must added it to CVS by mistake). * (Sorry, for the problem with yCalc. I will check "my" functions for this kind of problems when the optional input variables are ready and we know the consequencies of this. I put this in TODO.) 2001-04-03 Axel von_Engeln * arts-0-0-150 * plot_abs_per_tg.pro updated * partition_function.pro updated * TODO list updated 2001-04-03 Stefan Buehler * arts-0-0-149 * m_los.cc: Added safety check to yCalc to make sure that the number of frequencies in trans and f_mono is the same. This, because it took some time to track down a core dump resulting from reading absorption from a file with the wrong number of frequencies. There should probably be more consistency checks in this method. 2001-04-03 Patrick Eriksson * arts-0-0-148 * Fixed some bugs for downward looking observations. The first problem was associated with the indexing of the ground where there still were problems from the change from 1-based to 0-based indexing. Further, some vectors where not given any length before copying data. * Made the variables a and b in the planck functions static again and introduced the variable c for the vector version. For the matrix version there were no problem before (or?). The bug was in the vector version where the temperature was included in the static variable b which of course is a stupid thing. The static variables a and b should now only contains constants. 2001-04-03 Stefan Buehler * arts-0-0-147 * atm_funcs.cc: Fixed bug in vector and matrix version of function `planck': Variables a and b must not be declared as static, otherwise they are only computed for the first function call. Because of this, we got identical results for subsequent calls of the function with different temperature. 2001-04-02 Stefan Buehler * arts-0-0-146 * los.h: Cosmetic changes in doxygen header of struct LOS: - Used html tags in the enumerated list because LaTeX constructs do not work. - Replaced index of stop by 0 at one place. * There seems to be a problem in the setup of los for uplooking cases. 2001-04-02 Patrick Eriksson * arts-0-0-145 * The power of ARTS! I love ARTS, it is so good. It is now possible to make retrieval species for pure absorption measurements. I don't want to lessen my fine effort ;-), but this was rather easy to implement due to the excellent structure of ARTS. * There is now a WSV called emission that you must set. For "normal" simulation it should be set to 1, while 0 means that emission shall be neglected. For the latter case (pure absorption calculations) the output unit is changed from transmission to optical thickness. This as optical thicknesses are normally used during the inversion. * The WSFs yRte and YBl are removed. The general function to get spectra is yCalc. This function uses the WSV emission to determine what kind of spectrum to return. For pure absorption calculations there exist a special function called yTau. However, note that there is no direct overhead involved bu using yCalc as sourceCalc just returns a empty array if emission=0. * The function absloswfsCalc takes now also emission as input. There is also a function called absloswfsTau to match yTau. Then you use the kSpecies functions as usual. Great or? * The WSF losCalc now also returns z_tan. * A warning, I haven't got time for any larger bug controls for these changes, so take care. 2001-03-30 Carlos Jimenez * arts-0-0-144 * m_loss.cc: Fixing a small bug 2001-03-28 Carlos Jimenez * arts-0-0-143 * methods.cc, md.h, m_loc.cc: added a workspace method called zaFromZtan to calculate the zenith angles from a given set of tangent altitudes in z_tan * atm_funcs.cc, atm_func.h, m_loc.cc : functions n_for_z and refr_constant moved from m_loc.cc to atm_func.cc * atm_funcs.cc: ztan_refrac modified to do calculations using n_for_z. 2001-03-28 Patrick Eriksson * arts-0-0-142 * First a comment to z_tan just be totally clear. The los function will still only take zenith angles as argument, but there will be a function to convert a set of tangent altitudes to corresponding zenith angles. The z_tan vector will be an output of losCalc. * Made some smaller changes to the definition on the ARTS line format found in absorption.h. Read it give comments. Stefan, can really ARTS read line files (in the ARTS formats) with line breaks inside the definition of a transition? I tried this and it didn't work. * New WSF NumericCopyFirstOfVector. I plan to use this to set the ground temperature to the first value of t_abs. * New function in AMI (in file/) to create ARTS line file from data in Matlab. Will be used to convert Verdandi to the ARTS line catalog. 2001-03-27 Carlos Jimenez * arts-0-0-141 * workspace.cc: added a new workspace variable z_tan so a set of tangent altitudes can be specified as input for a given LOS geometry. Now both z_tan and za_pencil can be used to define the geometry. Requires changes in LOS functions, to follow. 2001-03-16 Stefan Buehler * arts-0-0-140 * Added Makefile and Makefile.in files in the ami tree to the .cvsignore files. (I had forgotten to do this for version 139.) 2001-03-13 Stefan Buehler * arts-0-0-139 * configure.in: Added missing Makefiles: ami/arts/Makefile ami/file/Makefile ami/math/Makefile ami/path/Makefile ami/physics/Makefile ami/plot/Makefile ami/retrieval/Makefile This is necessary for the reconf script to work. 2001-03-13 Stefan Buehler * arts-0-0-138 * Implemented the new continuum concept, as decided in the meeting last Friday. I made only a slight change compared to what was discussed in the meeting, by using two independend WSVs for the coninuum description. These are: - cont_description_names - cont_description_parameters I did it this way, because I have in mind a quite simple mechanism for combining WSVs to `conglomerate WSVs', which could then be used to bind the two together. However, when I will find the time to implement this is an open question. For now, working with the two individual variables should be fine. * workspace.cc: Added WSVs cont_description_names and cont_description_parameters. * methods.cc: Added WSMs cont_descriptionInit and cont_descriptionAppend. Also WSMs xsec_per_tgInit and xsec_per_tgAddConts. * m_abs.cc: Added WSMs cont_descriptionInit and cont_descriptionAppend. Renamed xsec_per_tgCalc to xsec_per_tgAddLines and adapted. Introduced xsec_per_tgAddConts. Introduced xsec_per_tgInit. Adapted absCalc. * continua.cc: Added the function `check_continuum_model', which checks if a string matches a continuum model. Continuum model names must look like this: `H2O-ContRosenkranzSelf'. At the beginning must be the species name. * absorption.cc: Added the function get_tag_group_name which returns a tag group name from an ARRAY of OneTag. This is just handy for informational output messages. * doc/examples/cont.arts: This is an example file for calculating continua. 2001-03-13 Patrick Eriksson * arts-0-0-137 * The function to create control files from templates is now called qtool and is found in ami/arts. There is now some better instructions and an example on how this tool can be used. 2001-03-13 Patrick Eriksson * arts-0-0-136 * I have added a number of handy Matlab scripts to AMI. All functions are of rather general character and can be of use in many cases. The functions are sorted into a number of sub-folders. 2001-03-07 Carlos Jimenez * arts-0-0-135 * math_funcs.cc: incluiding the Choleski decomposition in rand_data_ gaussian so a Choleski decomposition s=l'*l is done and l is used to generate the random data. * methods.cc, m_covmatrix.cc: new worskpace method BatchdataGaussian NoiseNoCorrelation to generate noise without inter-channel correlation. * m_batch.cc: BatchdataGaussianSpeciesProfiles updated for tgs 2001-03-07 Patrick Eriksson * arts-0-0-134 * Fixed a small bug in the H-matrix part of AMI. 2001-03-01 Wolfram Haas * arts-0-0-133 * read_datafile.pro: Keyword changed ('check' instead of 'optimize'). * read_artsvar.pro: Keyword changed ('check' instead of 'optimize'). * write_datafile.pro: Unnecessary 'print'-command removed. * utilities.tex: Upgrading of the description. 2001-02-26 Carlos Jimenez * arts-0-0-132 * /ami/read_datafile.m: matlab read and write functions modified to include SYMMETRIC type * m_batch.cc, m_covmatrix.cc: functions with covariance matrices updated so covariance matrices are now SYMMETRIC 2001-02-26 Patrick Eriksson * arts-0-0-131 * The text for continuum absorption changed. 2001-02-23 Patrick Eriksson * arts-0-0-130 * A new try to commit my latest changes. 2001-02-22 Axel von Engeln * version-0-0-129 * two new species implemented, which are new in Hitran 2000, additionally put some more species into the partition function calculation, and the abundance calculation. These additional species are not implemented in arts yet. * math_funcs.h: output error corrected * aii_klegend_d.pro: klegend_d file, needed in plot_abs_per_tg.pro 2001-02-22 Patrick Eriksson * arts-0-0-128 * There were some problems around the last commit, so this another one just in case. 2001-02-21 Patrick Eriksson * arts-0-0-127 * The story about LOS seems to never end. Before last commit I only did changes with 1 zenith angle. When I now used refraction for a full scale simulation I noted that the LOS calculation was very slow. The problem turned out to be the interpolation. The interpolation is now done locally in the function where the interpolation index is stored from one interpolation to next and this saves a lot of time. I also did some other changes to improve the speed but with much less impact on the final computational time. The function is now about 50 times faster then before 2001-02-19 Patrick Eriksson * arts-0-0-126 * Yet another bigger revision of the LOS part. The core calculations are now performed by a single function for all observation geometries (one function for refrcation and one function for geometrical calculations). This should ensure a high consistency for the calculations. Some preparation for the 2D calculations have been performed. * Refraction is now handled by a more traditional ray tracing scheme, using the geometrical term as starting point. The refractive index is assumed to be constant over each ray tracing step. See further AUG. As I wanted an integer ray tracing step for each LOS step, the wsv l_step_refr is exchanged with refr_lfac (an integer). This factor gives how many ray tracing steps that shall be performed for each LOS step (the ray tracing step length is accordingly l_step/refr_lfac). The calculations with refraction are now a bit slower and too small steps should be avoided. The ray tracing works both with float and double. * I have tested the ray tracing scheme and the results were good. First of all, if n is set to 1 at all altitudes, the geometrical LOS is obtained exactly (the deviations are around 1e-6 m). A suitable value for the ray tracing step length seem to be about 5 km. * The LOS structure is extended and holds now also the geometrical altitudes of the LOS points not only the pressures). These altitudes should not be used inside ARTS but are intended for plotting and bug checking. * The angles between the vectors going from the Earth's center and the sensor and the LOS points are now also calculated. These angles are called psi in lack of a better name (any suggestion?). The psi angles were included as a preperation for 2D. If horisontal structures are neglected for the LOS calculations (the effects should be negliable according to RAL and Rodgers), it is now a simple thing to get the whole LOS for 2D (as soon we define what coordinate system to use). * Axel, I got your thesis in my hand more or less in the same minute as I finished my ray tracing scheme. I saw that you have written quite a lot about refraction. You should have done this work! 2001-02-16 Stefan Buehler * arts-0-0-125 * version.h, version.cc: Added resize function for SPARSE and SYMMETRIC. Note that resize really replaces the object by a new one of the right size. Maybe the name should be changed to `replace' one day. Furthermore, note that for SYMMETRIC resize(a,i,j) generates a new SYMMETRIC matrix by calling SYMMETRIC(i,j), which should generate a ixi symmetric matrix with j offdiagonal bands. 2001-02-15 Axel von_Engeln * arts-0-0-124 * lines_per_tgCompact workspace method included, it just cycles through all lines per tag groop and looks whether they are in or outside the defined cutoff frequency of the lineshape. All lines outside are removed. This should save some computational time, but something similar is done in the absorption calculation when a cutoff frequency is present. * lineshape cutoff seems to work 2001-02-14 Carlos Jimenez * arts-0-0-123 * maths_func.h, maths_func.cc: Added the function *chol* to do a Choleski factorization * demonstrate_vecmat.cc: Included a test case running *chol* 2001-02-13 Stefan Buehler * arts-0-0-122 * vecmat.h, vecmat.cc: Added matrix type SYMMETRIC. This should be both banded and symmetric. (Having just symmetric is a special case of this.) SYMMETRIC A(5); // generates 5x5 symmetric matrix SYMMETRIC A(5,1); // generates 5x5 banded symmetric matrix like this: // xx000 // xxx00 // 0xxx0 // 00xxx // 000xx However, the latter case seems not to work and I don't understand why. Best would be to write email about this to the MTL people. * demonstrate_vecmat.cc: Included test cases for the SYMMETRIC type. 2001-02-13 Patrick Eriksson * arts-0-0-121 * Simplified the WF information somewhat. Now the length of each identity is stored instead of start and stop index. This to avoid storing INDEX in a matrix. Column 3 of the aux variables removed. * The species WF functions now use wfs_tgs. * Changed names on the workspace variables tgs and wfs_tgs to match the names used in function names. 2001-02-12 Patrick Eriksson * arts-0-0-120 * Hard-coded double in some places in m_los.cc where the earth radius (maybe + something) is squared to improve the precision. * With double and setting n=1, the same result is obtained with and without refraction (which should indicate that everything is OK). The option float/refraction is still not working (see more below). * Fixed a bug in planck when using float. This expression: a = 2.0*PLANCK_CONST/(SPEED_OF_LIGHT*SPEED_OF_LIGHT); becomes 0 if a is set to be float. Now hardcoded to be double. * I will not bother you about the details, but I recommend you to NOT use refraction before we have validated my new scheme. Carlos will implement some other scheme so we get an oppertunity to check the results. * ARTS seems to run now when using float (if not refraction is switched on). So let's use float for some time to look for other bugs connected with using float. OK? 2001-02-08 Axel von_Engeln * arts-0-0-119 * lineshapeDefine help extended * lineshape_per_tgDefine help extended 2001-02-07 Axel von_Engeln * arts-0-0-118 * lineshapeDefine additional keyword cutoff added, which defines the cutoff frequency [Hz], -1 no cutoff * lineshape_per_tgDefine additional keyword cutoff added, which defines the cutoff frequency [Hz], -1 no cutoff * lineshape is a workspace variable now that contains the index to the lineshape, normalization function, and cutoff. * Validation has only been performed with the no cutoff option. 2001-02-07 Axel von_Engeln * arts-0-0-117 * abs_per_tgReduce workspace method and little bug removed. 2001-02-02 Axel von_Engeln * arts-0-0-116 * tag_groupsDefine workspace method has now been changed to tgsDefine * wfs_tgsDefine workspace method introduced, this gives the tag groups out of tgsDefine, for which weighting function shall be calculated * abs_per_tgReduce workspace method introduced, this reduces the abs_per_tg variable to the size of the tag groups given in wfs_tgsDefine. The order in wfs_tgsDefine does not has to be kept. 2001-01-30 Axel von_Engeln * arts-0-0-115 * aii_prologue_l.pro: Arts IDL Interface plot prologue, landscape * aii_epilogue.pro: Arts IDL Interface plot epilogue, landscape * plot_abs_per_tg.pro: makes a nice color plot of the absorption per tag group * read_datafile.pro: indicees changed from 1 to 0 * read_tag_groups.pro: reads the tag group names out of a controlfile, is for example used by plot_abs_per_tg * sort_abs.pro: sorts the absorption per tag group according to magnitude at a certain altitude level, is used by plot_abs_per_tg * arts/o2_spin_rot_pwr_3.al: arts catalogue file of the oxygen spin rot spectrum, see file for more info * methods.cc: updated some info. 2001-01-26 Stefan Buehler * arts-0-0-114 * vecmat.h: Fixed bug in transf() function. The type of the mathematical function is now double (&my_func)(double). Numeric does not work here, since mathematical functions for float do not exist. 2001-01-26 Patrick Eriksson * arts-0-0-113 * Changes in reading and writing of binary files. There were some really bad bugs that now should be fixed. The reading and writing of matrices shall now be somewhat faster. 2001-01-24 Stefan Buehler * arts-0-0-112 * vecmat.h: Changed ARRAY implementation back to MTL. * make_md_h.cc: Adapted to ARRAY implementation change. 2001-01-23 Patrick Eriksson * arts-0-0-111 * Removed special functions for no ground and no refraction. It became messy to make several versions at so many places. Instead I have made two small functions called NoGround and NoRefraction to set dummy values for the ground and refraction variables (however the ground altitude must be specified). This solution makes the functions assuming a special calculation order, that is functions calling workspace methods as absCalc and losCalc, more general. * Added functions to calculate WFs for pointing off-set and a proportional calibration error. It is now also possible to calculate WFs for continuum absorption fit for portions of the total frequency range. This can be used to make seperate fits in primary and image frequency band. 2001-01-19 Stefan Buehler * arts-0-0-110 * m_abs.cc: Added method lines_per_tgReadFromCatalogues. This reads lines from catalogues and assigns them to lines_per_tg in one go. Different catalogues can be specified for different tags. This will be handy for the water vapor absorption spectrum. Now we can use a special line file for water vapor, with continuum parameters to match. * token.h, parser.cc: Renamed the type ARRAY_Numeric_t to VECTOR_t. Also changed the definition accordingly, so this type is now a vector. * doc/examples/example1.arts: Adapted to demonstrate the new catalogue reading features. 2001-01-19 Patrick Eriksson * arts-0-0-109 * Made the function h2o_absSet. * Fixed a bug in rte. The step just above the tangent point was just looped once, instead of two as is correct. A bug from the MTL switch. *So finally, I managed to get consistency between the spectra and the internal calculation to get absloswfs. This does not guarentee that the WFs are OK, but so far everything seems correct. 2001-01-18 Stefan Buehler * arts-0-0-108 * m_abs.cc: Fixed bug in the continuum switch in xsec_per_tgCalc(). Also renamed xsec_per_tgCalc() from previous name xsec_per_tgCal(). 2001-01-18 Patrick Eriksson * arts-0-0-107 * Added the function refr_indexBoudouris, i.e. this function takes into account water and not only dry air. * Added the functions VectorAdd, VectorScaled and MatrixScaled that can be used for simpler tests. VectorAdd can be used to add 2 K to t_abs at all altitudes to test the influence of the temperature for some measurement (used e.g. for the WATS proposal). * I have gone through the los, rte and bl functions for all geometries with and without refraction. There was some bugs, both old ones and from the MTL switch. At least there are now no errors (in my test cases) and the results are reasonable. * I have started to check the species WFs. The WFs for upward observations seem to be OK now. One smaller bug found for limb WFs, but I have not yet made a final test. I will continue this work. * An interesting thing. For the WATS proposal I created a line file with the strongest H2O lines up to 560 GHz. I also added these lines with a negative centre frequency, and it worked. So the solution for van Vleck-Weiskopf should be OK. 2001-01-17 Wolfram Haas * arts-0-0-106 * Added the IDL interface functions. * read_artsvar.pro: Reads an ARTS variable (uses read_datafile). * read_datafile.pro: The real implementation of the reading routine. * write_artsvar.pro: Writes an ARTS variable to a file in ARTS format (uses write_datafile). * write_datafile.pro: The real implementation of the writing routine. 2001-01-17 Stefan Buehler * arts-0-0-105 * Put in continuum stubs. Also did the implementation for a self continuum, although the coefficients (C and x) are at the moment just dummy numbers. Thomas should put in the correct ones that result from his fits to lab data. Also, the function for the foreign continua needs to be added, which should be simple following my self continuum example. Interesting places for this work are marked with `FIXME' and/or `Thomas' in comments. The continuum at the moment is bullshit, without the correct coefficients and the foreign part. Probably many orders of magnitude wrong. * continua.h: Header file for continua.cc. * continua.cc: Implementation of continuum functions. 2001-01-15 Axel von_Engeln * arts-0-0-104 * tag groups: we went back to the definition of tag and tag groups. Therefore some WSM are called differently, e.g., lineshape_per_tgDefine instead of lineshape_per_tagDefine Sorry, but you have to change your controlfiles again :-( Hope we stay with this definition now. * Oxygen: absorption is now always calculated with the normalization factor given in the controlfile. this was formerly treated differently to find agreement with the old iup forward model. * Cross Sections: now implemented differently, so that absCalc just calls the cross section WSMs xsec_per_tgCal and absCalcFromXsec. 2001-01-15 Patrick Eriksson * arts-0-0-103 * Spectra have been wrong for some time. I discovered yeasterday (after a lot of investigating) that the spectra just grow for each zenith angle. This was a problem after the switch to MTL, due to the shallow copying with the =-operator. Spectra are now again reasonable for limb sounding. I habe not done any tests for other geometries. * The species WFs are incorrect. I will look for that bug. * Cleaned up the integration routine mess. Now the two template functions of SB are used together with an old function returning only a scalar. * Removed some other old code in math_funcs. * Fixed bug in AMI when reading and writing binary files caused by the switch from 1 to 0 based indexing. This bug only affected arrays. 2001-01-11 Axel von_Engeln * arts-0-0-102 * xsec_per_tagCal WSM implememted, calculates the cross section per defined absorption tag * absCalcFromXsec WSM implemented, calculates the absorption and the absorption per tag from the cross sections calculated by xsec_per_tagCal. * Agreement with the 2. Bredbeck book arts description should now be archieved in principle. Still we have to rename the tg to tag, and somebody should put all the stuff into the AUG. 2001-01-10 Axel von_Engeln * arts-0-0-101 * had to check in again my changes, because I just updated to Stefans MTL version arts-0-0-99. This does not work, because directories are not removed (e.g., I checked in tnt again). I don't know what else could go wrong, so I checked out Stefans version and redid my version 100. 2001-01-08 Axel von_Engeln * arts-0-0-100 * yes, I did the 100 version. I am proud. * and I did some work on the partition functions, included now the vibrational levels. more info will be available in the arts proceedings (hope I make it in time). * updated lineshape infos 2001-01-08 Stefan Buehler * arts-0-0-99 * This is a working commit. Everything needs still a lot of tidying up. Sorry for this. However, I have made massive changes, and I don't want to get completely out of sync with the rest of ARTS development. Merging was tough enough as it was. * vecmat.h: Contains now the complete matrix/vector declaration (linalg.h has vanished). * vecmat.cc: Contains now the complete matrix/vector implementation (linalg.cc has vanished). * vecmat.h: Changed implementation of ARRAY from MTL to STL. This also required some small changes all over the place. * vecmat.h: Changed implementation of VECTOR and MATRIX to MTL. This required massive changes all over ARTS. * math_func.cc: Changed from 1-based to 0-based. Shitty work, I hope I have not introduced too many bugs. Patrick, could you please look at the places marked by FIXME? Important change: Non-return versions of math functions no longer resize their output vector. This makes them more useful, because now you can apply them directly on rows or columns of a matrix without any copying. The same is true for output matrices. Instead, the return version sets the size before calling the non-return version. So, if you want to create and resize at the same time, simply use the return version. Anyway, because of the shallow MTL copies, return versions should be as efficient as non-return versions. This also has the consequence that non-return versions no longer need arguments specifying the size of things to generate, instead the size is taken from the given output vector/matrix. * rand_gaussian: Is this algorithm correct? - See FIXME. * rand_uniform: There is a problem with setting the random seed here. It has the opposite of the desired effect. See FIXME comment inside the function! I commented the line out for now. * Philosophical remark: There is a conflict between 2 important C++ paradigms, function overloading and templates. The first says that it would be nice to always give the same name to similar functions, even if they act on different data types (for example interp_lin for vectors and matrices). The second says that it would be nice to formulate algorithms such that they work for several (similar) data types (for example the copy() algorithm from MTL). As it turns out, having both is very difficult. For example, there are the algorithms print_vector() and print_all_matrix() which do the same thing, once for vectors and once for matrices. Both are template functions. If we give them the same name (for example simply `print') the compiler can no longer distinguish between the two functions and we get an error. I can see no elegant solution to this problem. * Math functions: I think there are now too many math functions (for example interpolation routines). This should be generalized more. For example one linear interpolation routine for vectors and one for matrices is probably sufficient. Also, is it really necessary to have also return versions for all functions? * m_wfs.cc, k_temp_nohydro: I don't understand why 1 K is added at all levels. This does not give the derivative, does it? Wouldn't one have to do this separately for each level? (See FIXME in the code.) * Transf(): Arithmetic functions like sqrt() and also the new log10() for vectors and matrices are no longer necessary, since the transf() algorithm can apply any mathematical function to a vector or matrix. Transf() exists as parameter and return version, hence has exactly the same functionality as the old functions. * demonstrate_vecmat.cc: A sample program demonstrating matrix, vector, and mathematical features. Is compiled automatically if you do a `make'. Run as `demonstrate_vecmat'. * example1.arts: Runs and gives same result as before (with arts-0-0-98). * full.arts: I get an error in method ybatchAbsAndRte that I don't understand. This also with the old version of ARTS. Patrick, could you look into this? I quickly compared the Kx matrix with arts-0-0-98. Unfortunately, the result is not identical (now about 50% smaller than before). I have no idea what's going wrong. Sorry for committing it like this, but since you developed this part, maybe you have better ways of verifying individual calculation steps. * A common bug: Assigning a scalar to a vector as in: VECTOR a; a = 1; At runtime this will lead to a segmentation fault later on in the program. Unfortunately this bug is hard to locate. There could be still a few instances of it creeping through ARTS. * src/docu.txt: See this file for more common bugs. If you have problems, look here first. Anyway, I recommend reading this file to everybody (it's quite short). The stuff will eventually go into the Uguide, just I found it useful to have a simple ASCII file to enter things as I implemented and checked them. If things are unclear here, look also in the demonstrate_vecmat.cc file, there probably is an example there for the feature you need. 2001-01-06 Axel von_Engeln * arts-0-0-98 * o2 spin rot absorption included. 2 lineshapes are available for this species: Rosenkranz_Voigt_Kuntz6 Rosenkranz_Voigt_Drayson added a directory o2_spin_rot to the iup comparision one, where controlfiles, etc are located The o2 absorption is calculated as all other species, with 2 major differences: 1. 2 overlap aux parameter are required in the spectroscopic database. I compiled a few catalogues in the arts format, they are located under spectroscopy/arts. 2. the o2 absorption requires a water vapor vmr. consequently abscalc requires now always a h2o vmr (I couldn't think of another way to implement this). this vmr is only needed for the rosenkranz lineshapes and can be set to any dummy value for other calculations. I followed the arts convention and called it h20_abs, which can be generated from the vmrs by: # define the h2o_abs vector, containing the total wv vmr VectorCopyFromArrayOfVector (h2o_abs, vmrs) {index=0} this has to be done after the call to AtmFromRaw1D{}. * Lorentz lineshape problem solved. * hope that's it. More in the mailing list. 2001-01-03 Patrick Eriksson * arts-0-0-97 * Bugs in absloswfsCalc and sFromFile due to index change fixed. * A function to calaulate the base 10 logarithm exists (VectorCalcLog10). This function is handy when setting up Sx when using pressure as altitude coordinate. 2001-01-02 Patrick Eriksson * arts-0-0-96 * Version 0-95 did not compile due to a missing ) in math_funcs.cc. * An out-function added to AMI. 2000-12-20 Patrick Eriksson * arts-0-0-95 * The seed is now reset for each call to a function that generates random data (thanks Oliver). * Some functions added to AMI/general. 2000-12-19 Axel von_Engeln * arts-0-0-94 * optimization stuff. 2000-12-15 Axel von_Engeln * arts-0-0-93 * Voigt_Kuntz1 is now called Voigt_Kuntz6, done some speeding up in linesphape (with no great success) 2000-12-15 Axel von_Engeln * arts-0-0-92 * arts can now read its own catalogue files. 2000-12-15 Patrick Eriksson * arts-0-0-91 * Fixed some smaller bugs caused by the index change. * Updated full.arts in doc/examples. The control file runs OK, spectra lokk OK (including the batch run) but WFs are not checked if correct. * Changed the text for the out-streams in calcAbs. Now all lines listed for level 3 (but not pressures) and the main sizes for the calculations are showed for level 2. 2000-12-13 Stefan Buehler * arts-0-0-90 * m_abs.cc, tag_groupsDefine: Fixed bug: Initialization does not work correctly with MTL based ARRAY. If you just create such a biest, all elements of the outer ARRAY will point to the same data. There is an easy fix though, now I simply initialize the outer ARRAY elements explicitly. This bug had caused the bug in get_tagindex_for_strings that Patrick has reported. * m_abs.cc, lines_per_tgCreateFromLines: Fixed same bug. * absorption.cc, LineRecord::ReadFromMytran2Stream: Fixed same bug. In LineRecord::ReadFromMytran2Stream I had already fixed it before. * src/docu.txt: Added description of this bug and how to avoid it to the documentation. 2000-12-13 Axel von_Engeln * arts-0-0-89 * lineshapes include now: 3 Voigt Kuntz algorithms, Voigt Drayson, Doppler. 2000-12-13 Patrick Eriksson * arts-0-0-88 * Changed indexing from 1-based to 0-based in the following files: m_wfs.cc m_los.cc m_hmatrix.cc m_covmatrix.cc m_batch.cc atm_funcs.cc I did not change math_funcs.cc as there could be side effects. For example, the function col causes problems. (This was heavy work, it took 5-6 hours despite I did it basically as quyickly as possible). Some changes were needed. The ground flags are now int's instead of INDEX. No ground is now flagged as -1. When storing in file, the ground flags are increased with the value 1, so the falgs can be stored as INDEX (ints are not handled in binary files so far). The program compiles but I have not made any more detailed bug search. I wait with this until the switch to MTL is complete. The WFs have now probably a lot of bugs as those functions have a lot of indexing (and I that had tested that so carefully -:( ). * First version of batch and covariance parts ready. However, they cannot be completed before sprse matrices and Cholesky function are aviliable. I have done rather carefully function descriptions so have a look in methods.cc. 2000-Dec-12 Oliver Lemke * arts-0-0-87 * src/vecmat.h: Changed type of MATRIX from Fortran_Matrix to Matrix. 2000-12-09 * arts-0-0-86 * All ARRAYs are based on MTL now. This was a tough bit because of the indexing problems. The absorption part seems to run the same as before. For the RT part I had no way to check. It is possible or even likely that I have introduced bugs. Please check. * It's not so good changing other people's code. However, I see no other way for MATRIX/VECTOR than doing it in the same way: All at once for all files. It is not possible to do it gradually, since TNT and MTL matrices are incompatible. * The indexing scheme must be changed beforehand from x(1) to x[0] for VECTORs and from A(1,1) to A[0][0] for matrices. This is the only more or less safe way for the transition. Round brackets will work for MTL, but mean 0-based indices! * src/docu.txt: Documentation on MTL and ARRAY implementation. This should go in the Uguide eventually. * linalg.h: MTL interface. Probably eventually I will put everything back in vecmat.h again, so this file will vanish. At the moment vecmat.h includes linalg.h. 2000-12-08 Stefan Buehler * arts-0-0-85 * In the middle of changing ARRAY implementation to MTL (including changing from 1-based to 0-based indexing) * Don't update to this version! 2000-12-07 Patrick Eriksson * arts-0-0-84 * Panic backup. (The power contact had slipped out and the computer died. After restart, not all letters on the keyboard did not work and I managed to login just by being a smart. After 1-2 minutes the keyboard was suddently OK again, but God knows what can happen) As I don't trust the computer, I want to backup my work. * I am working on generating random data and doing batch calculations. Please, have a look and give comments. 2000-12-04 Patrick Eriksson * arts-0-0-83 * r_geoid is now made to a workspace variable. Type r_geoidStd{} to set it to EARTH_RADIUS. * Functions now exist to generate random data with uniform and gaussian PDFs. No correlation. VectorRandNormal is an example on workspace method. The generation of random data can be checked by rand_test in AMI. * Made up a format to simply define covariance matrices and made functions to create cov. matrices based on such definition data. See sSimple and sFromFile. * The function z_absHydrostatic gives a vertical grid fulfilling hydrostatic eq. The workspace variable h2o_abs must be set. 2000-12-01 Axel von_Engeln * arts-0-0-82 * lineshape selection in controlfile implemented * lineshape and lineshape_norm are 2 new workspace variables, they contain the index of the selected lineshape and normalization function of the lineshape_data and lineshape_norm_data records. * lineshapeDefine and lineshape_per_abs_tagDefine are 2 new workspace methods, they allow the selection of the lineshape and the lineshape normalization in the controlfile. Currently implemented: shape: Lorentz, Voigt_Kuntz1 norm: no_norm (1), linear (f/f0), quadratic (f/f0)^2 Consequently, they both need tag_groups (tags) as input 2000-11-30 Axel von_Engeln * arts-0-0-81 * Test version 2000-11-23 Patrick Eriksson * arts-0-0-80 * Writing about calibration and conversion to brightness temperature in AUG. 2000-11-16 Patrick Eriksson * arts-0-0-79 * Some very small changes in AUG. * Allowed cubic treatment between abscissa points of spectra and sensor characteristics when setting up the H matrix (image sideband spectra still only linear treatment). Before all quantities were assumed to be piecewise linear functions, but now piecewise cubic functions can be assumed which could improve the accuracy in some cases (needs to be tested). * Please note that the sensor part is not yet validated and testet in detail (however, the values look OK). When I am happy with the design of the sensor functions, I will do some comparisons with Skuld (but I trust ARTS more) and set up some examples for you. 2000-11-13 Patrick Eriksson * arts-0-0-78 * The writing and reading functions for binary files handle now empty data (both ARTS and AMI). (Does this work for ASCII files?) * The binary data files are now described in AUG. * Put in parts in AUG (just parts pages, no move of chapters was needed). AUG is divided into 3 parts. 2000-11-10 Stefan Buehler * arts-0-0-77 * Very small changes to documentation in several places. * Sample control file in AUG still needs to be adapted to new method and WSV names. 2000-11-10 Patrick Eriksson * arts-0-0-76 * The way to store binary files modified as the prevoius version did not work for matrices. The storage scheme will be described in AUG. * AMI includes now reading and writing of binary files. The function variables for the read and write functions are changed. * I have written and read data back and forth between ARTS and Matlab, and between ASCII and binary. Everything seems OK. Even conversion between double and float. But there are so many combinations, so no guarantees. Tell me if you find any bugs. * make_wsv_h.cc produces now also a text file, wsv.txt, with the information from workspace.cc. This file is used both for AGU and AMI. Feel free to fix an alphabetical order of the variables in wsv.txt. This would look better in AUG. * The file wsv.txt is copied to ami when running init.m. This file is then used by read/write_artsvar to determine to type of the varaibles for e.g. consisteny reasosns. The type is also needed when reading and writing binary files. * Two appendices introduced in AUG, consisting basically of wsv.txt and math_test.cc respectively. 2000-11-09 Axel von_Engeln * arts-0-0-75 * species_data corrected, a O2-snglt-delta tag number 32005 of the JPL catalog was included with the main O2 isotope, even though this tag is only present in very small abundance. This tag shows very strong absorptions, and it should be checked whether a detection from a satellite instrument in possible. * example1.arts and other arts controlfiles modified, since Patrick renamed some of the workspace methods. 2000-11-09 Axel von_Engeln * arts-0-0-74 * src/m_hmatrix.cc file had still hdf5 included, removed. 2000-11-08 Patrick Eriksson * arts-0-0-73 * Changed from HDF 5 to HDF 4. More precisly, HDF 4.1r3 is used. * String (including arrays) can now be read and written as binary. * Default extensions for ASCII files changed. Both numeric and string files have now the extension .aa (ARTS ASCII). I did not see any strong reason to have different extensions. * The binary files are now displayed using hdp or vshow. See further AUG. 2000-11-07 Axel von_Engeln * arts-0-0-72 * JPL catalogs can now be read, they have to be frequency sorted. A merged catalog is now included in the arts distribution at: data/spectroscopy/jpl00/jpl00.cat, it contains only species know to arts. The script merge_and_sort_jpl does the merging and sorting, for more info refer to the script. * MYTRAN catalogs can now be read, they do not have to be frequency sorted. A slightly modified version of the mytran catalog of the ESTEC Spectroscopy Study is now included in the distribution, it can be found at: data/spectroscopy/mytran/mytran98.my2. This catalog is slightly modified, since the original included a HO2 species not know to arts. * comparisons scenarios are now sorted according to the chosen scenario: aux/iup_forward_comp/H2O_183GHz : contains the water vapor comparison at 183GHz aux/iup_forward_comp/master_b : contains some comparisons for the master B band aux/iup_forward_comp/fascod : the fascod files in the old iup forward format. * abundance: Information on the source and calculation of the abundance used in arts is located at: aux/abundances/ 2000-11-06 Patrick Eriksson * arts-0-0-71 * Introduced a file format for ARRAYofSTRINGS. The extension is .as. See ArrayOfStringWriteAscii for the file format. When reading, blanks (white space) is for the moment not allowed. Is this accapteble? My answer is no. If anyone can fix this, please go ahead. * There should now be a full set of functions for the .am format. For example, the function NumericWriteAscii exists now. * There is also a full set of functions for numeric binary files using HDF 5. But it was probably a mistake of me to pick HDF5 instead of HDF4 (I just wanted to use the freshest version). This as it turned out that there are only functions in Matlab to handle HDF4. In addition, Frank Merino has never told me what version he uses for Odin, but an old e-mail indicates that he uses HDF4 (I how now sent an e-mail to confirm this). So I am afraid that I have to take one step backward and change the core functions to use HDF4. 2000-11-02 Patrick Eriksson * arts-0-0-70 * Included some files to read and write binary files for arrays. Turned off HDF error messages. Improved ARTS error messages. (I wanted mainly to commit before leaving for today as I will work at home tomorrow. Can read e-mail, but not do cvs commits). 2000-11-02 Patrick Eriksson * arts-0-0-69 * Sorry, but I think that I did the last commit in src. This is mainly to fix this error, and to give you the last version of thr ChangeLog and TODO. (Some extra in TODO compared to my e-mail). * The LOS structure uses now ARRAYofsizet instead of ARRAY 2000-11-02 Patrick Eriksson * arts-0-0-68 * First version handling binary data files. For the moment there are function to read and write binary files for NUMERIC, VECTOR and MATRIX. To add functions for other data types (beside strings) should be straightforward, using the general interface functions to HDF. * To test the binary-IO, make a control file called test.arts as: VectorNLinSpace (z_abs) { start = 1.1 stop = 13.65 n = 15 } VectorWriteBinary (z_abs) {""} VectorReadBinary (z_abs) {""} VectorWriteAscii (z_abs) {""} The binary files can be displayed by the HDF tool h5dump: h5dump test.z_abs.ab If everything is OK, the ASCII file shall have the same content, check by more test.z_abs.am Note the different extensions. Another HDF tool function is h5ls that showes the structure of the data (without displaying any data values, in contrast to h5dump). * To make a distinction between ASCII and binary files, the ASCII functions have changed name as: WriteToFile -> WriteAscii ReadFromFile -> ReadAscii The binary functions are denoted correspondingly: WriteBinary ReadBinary * Cleaned up the IO parts in methods.cc (the functions are now ordered after data type). Did the same in m_io.cc. Corrected some function descriptions in methods.cc. 2000-11-01 Stefan Buehler * arts-0-0-67 * aii: Added this directory for the ARTS-IDL interface and set up Makefile.am. * configure.in: Added aii/Makefile.am here. * uguide: Added a new section `Utilities'. This should contain a description of the Matlab and IDL interface. * uguide/utilities.tex: Started this file as a template for Wolfram to use. No contents yet. * uguide/Makefile.am: Updated this (added formats.tex and utilities.tex). 2000-10-30 Patrick Eriksson * arts-0-0-66 * AGU has now a new chapter describing data and file formats, and allowed math operations. The chapter is however not finished. Please, give comments. The file src/test_math.cc is added and is compilied with ARTS. This file should contain examples on all allowed basic math operations and is read into AUG. As the file must pass the compiler, AUG can only include allowed math operations (at least formaly). * Some first test functions for HDF are found in file.cc and m_hmatrix.cc. 2000-10-27 Stefan Buehler * arts-0-0-65 * file.cc: Included a function open_hdf that illustrates the use of HDF. This is one of the HDF examples. Other modifications: Added #include in top of file * Makefile.am: Added a line to include the necessary libraries for HDF (quite a few). * If HDF is correctly installed, this should work. 2000-10-25 Oliver Lemke * arts-0-0-64 * configure.in: Disabled documentation generation by default. Activate it by invoking configure with the option --enable-docs. 2000-10-23 Oliver Lemke * arts-0-0-63 * doc/uguide/.cvsignore updated. 2000-10-23 Patrick Eriksson * arts-0-0-62 * ARTS can now produce spectra and WFs including sensor effects and data reduction. Some new WF functions and copy functions implemented. * H matrices are read as: HmatrixReadFromFile(h1){""} There are two H matrices to use, h1 and h2. * The functions to calculate WFs now only return the matrix for the retrieval identity of interest. A WF function can return the common matrix for several identities if they all have a retrieval grid of the same length (the variable k_index is removed). The variables kx and kb are introduced (following Rodgers). WF data are appended to these variables as kSomeFunction... kxInit{} kxAppend{} kxAppendUsingH(h1){} or kbInit{} kbAppend{} kbAppendUsingH(h1){} If kxAppend and kbAppend are used, when the WFs calculations ar ready, a H matrix can be applied as MatrixApplyH(kx,h1,kx){} This latter approach should be the fastest, while applying H when appending (kxAppendUsingH) saves memory. * A second spectrum vector, y0, has been introduced. H matrices are applied on spectra as VectorApplyH(y,h1,y){} VectorApplyH(y0,h1,y){} Note that it is best to do this last in the control file as some functions need the pencil beam monochromatic spectrum (e.g. absloswfs). Y can be copied to y0 as VectorCopy(y0,y){} There is also a function to copy matrices (MatrixCopy). * The WF for a sensor variable can be obtained as follows. Calcualte h1 for the nominal state, change the variable of interest and calculate h2. The WF is then calculated using the kDiffH functions: kDiffHFast{ name = "Proportional" delta = 0.01 grid = 0 apriori = 0} There are two functions, Fast and Small, trying to optimize calculation spped and memory usage, respectively. Note that these functions give the WF including the effects of h1 (i.e. kxAppendUsingH should not be used). There is a function kManual that uses y and y0 to calculate a WF: kManual{ name = "CBGR" delta = 2.73 grid = 0 apriori = 2.73} The WF is calculated as: k = (y-y0)/delta As a test, I calculated the WF for cosmic background radiation, but there should be better applications for this function. 2000-10-22 Patrick Eriksson * arts-0-0-61 * I primarily wanted to commit a version to backup my work as I have not made a commit for some time. I am working on the WFs and the H matrix stuff. See TODO for my plans. I will give the details at next commit. * Some bugs fixed in ami. 2000-10-21 Stefan Buehler * arts-0-0-60 * make_md_h.cc: There was a bug in the generic input/output WSVs. For example, if a method had a vector as generic input and a vector as generic output, the input vector was removed from the list of arguments, similar to the case of specif WSV. In the case of specific WSVs this is the correct behaviour. However, in the case of generic arguments, the two vectors can be different! Fixed this. 2000-10-10 Oliver Lemke * arts-0-0-59 * doc/uguide/los1d.tex: Removed .eps endings which broke the pdf output. It's IMPORTANT to avoid the endings because they are now autodetermined. 2000-10-09 Axel von_Engeln * arts-0-0-58 * lineshape voigt approximation of kuntz implemented, currently only one accuracy level, others will follow. this lineshape is hard wired in absorption.cc, will be a controlfile input soon. * partition function coefficients reorganized, they are now part of IsotopeRecord * comparison with old forward model performed, using the kuntz lineshape. Results are within 1% error in the absorption coefficients for the specific calculation H2O_183GHz where only this line was considered. Larger errors up to 10 % are found at higher altitudes, guess that is an interpolation problem of the input vmr profiles. Controlfiles, etc can be found in a new directory: arts/aux/iup_forward_comp * errors with the documentation, guess that is caused by a previous check in, since I did not do anything over there. 2000-10-05 Stefan Buehler * arts-0-0-57 * Extended TODO list to have a base for discussion. 2000-10-02 Patrick Eriksson * arts-0-0-56 * Refraction included. All observation geometries are treated. * The refraction is included in a totally new way (to my best knowledge). A "prolongation factor" is used that gives the ratio between the length of the refracted and the length of a corresponding geometrical LOS between two vertical altitudes. This approach avoids the singularity at tangent points and does not need any integral approximations etc. This results also in fast calculations. See further AUG. * If n is set to 1, the refractive functions and the geometrical ones give basically identical results, the difference is on the dm level at the top of the atmosphere. This should indicate that the refractive functions should give very accurate results. * A function to get the refractive index for totally dry air is implemented. 2000-09-27 Axel von_Engeln * arts-0-0-55 * Voigt lineshape included, Kuntz approximation to it. * Doppler parameter calculation included. * Constants required included. 2000-09-26 Oliver Lemke * arts-0-0-54 * UserGuide: Added pdf output. Divided main.tex in uguide.tex and uguide_pdf.tex. Changed the makefile to generate pdf and ps output by default. The pdf version requires all figures in pdf-format. The conversion from eps to pdf should be done with the epstopdf command. epstopdf Remember to convert new figures to pdf and do a cvs add. * Added default graphics extension in uguide.tex and uguide_pdf.tex Now eps and pdf extension in includegraphics commands are no longer necessary. LaTeX and PDFTeX will pick the right file automatically. * Fixed bug in uguide/Makefile.am: dvips' output on some systems is send to lpr by default. Added -f option. 2000-09-22 Stefan Buehler * arts-0-0-53 * src/Makefile.am: Fixed small bug. (Removed wsv_pointers.h form the source list because this file does not exist.) The bug caused an error message in make dist. 2000-09-22 Axel von_Engeln * more TODO stuff, some comments in partion_function_data.cc 2000-09-20 Stefan Buehler * arts-0-0-52 * main.cc, make_wsv_pointers_cc.cc: Changed the define_wsv_pointer to make local workspaces possible. (So far it was only possible to have one global workspace. Now multiple workspaces can coexist, each with their own pointers arrays.) 2000-09-19 Stefan Buehler * arts-0-0-51 * absorption.cc: Corrected the internal unit of line intensity S. It is now Hz * m^2, consistent with the simple formula alpha = n * x * S * F, where alpha is the absorption coefficient (1/m), n is the total number density (1/m^3), x is the volume mixing ratio (dimensionless), and F is the line shape function (1/Hz). The intensity also already includes the isotope ratio, since this is computationally more efficient. * Verified that we still get the same absorption results. * Moved some doxygen headers from absorption.h to absorption.cc 2000-09-19 Patrick Eriksson * arts-0-0-50 * Stefan and I decided that doxygen headers should be placed in .cc instead of .h files (when appropiate). This partly to make it easier to put in histories. * Following this decision, I moved doxy headers from atm_funcs.h and math_funcs.h to corresponding .cc files. 2000-09-18 Patrick Eriksson * arts-0-0-49 * Doxygenified, and cleaned up existing documentation, for files: m_wfs.cc, m_los.cc, atm_funcs.h,cc, math_funcs.h.cc, vecmat.h,cc and los.h. 2000-09-14 Patrick Eriksson * arts-0-0-48 * Removed 1D from function and variable names for LOS, RTE and WF parts. We have decided that 1D is default, and 1D should not be included in the names. However, 2D shall be included. * The variable klos is renamed to absloswfs (uh, long name, I know). This to follow AUG closer. There is also source LOS WFs, but these WFs are so far only used by kTEmpNoHydro and are not a workspace variable. 2000-09-14 Stefan Buehler * arts-0-0-47 * Adapted the doxygen emacs macros for ARTS. Most notably, we want to use the /** style to mark comments rather than the /*! style. With the /** style the first sentence is taken automatically as the short description. I find this convenient. Also, this way the comments are less comlicated and verbose. * Added documentation about the header format in the Development / Conventions section of the user guide. Patrick, can you check this please? The emacs macros now should generate exactly the same thing as defined there. * I have not yet gone through the code making things consistent with the new standard, but of course this should be done. First I want your ok to this standard. 2000-09-13 Stefan Buehler * arts-0-0-46 * Cosmetic changes to doxygen comments all over the place. 2000-09-13 Stefan Buehler * arts-0-0-45 * doc/emacs: Added makros for inserting documentation headers. There is some html documentation, check out doc/index.html. 2000-09-12 Patrick Eriksson * arts-0-0-44 * The definition of the source function along the LOS is changed. The source function is now defined following the absorption. The source functions values are now determined at the LOS points. The source functions for a LOS step is calculated as the mean of the values at the end points of the step. This change was made to get a similar treatment of the absorption and the source function. This is of great help for the analytical WFs. See further AUG. * Analytical WFs for species, continuum absorption and temperature (without hydrostatic eq.) are now ready. See some examples on how to use the function in: arts/doc/examples/full.arts I have made some quick tests of the WFs. The agreement when disturbing the absorption and the temperature with the WFs was excellent. However, I have only tested a single upward looking case and there could be bugs. I prefer to wait to do further testing until I am sure that this is the final version. * Ground reflections now handled for correctly (hopefully), both for 1D and 2D cases. Ground reflections also included in the analytical WFs. * AUG (ARTS user guide) is updated and extended to reflect the changes above and several minor errors fixed. * WFs are now appended to the total K matrix. Before starting WF calculations, the function kInit shall be called. As a help for non-linear inversions and to display results, there are now some help variables for the K matrix, giving index, names, a priori value, and retrieval grid for the different retrieval identities (e.g. a species profile). However, the k_names cannot be stored as this is an ARRAYofstring. This is so far not included in AUG. * New workspace variable type: ARRAYofstring 2000-08-31 Patrick Eriksson * arts-0-0-43 * Put in a check command in z2p to handle limb observations outside the atmosphere. * Changed name on the workspace variables f_abs and view1 to f_mono and za_pencil, respectively. Za stands for zenith angle. I think this is a better name than viewing angle 1. Zenith angle is a clearer description and I guess that there never will be a view2 (it could for example be called orbit angle). F_abs or f_mono (i.e. monochromatic frequencies) doesn't really matter. I just think f_mono fits za_pencil better. * AMI functions for reading and writing data renamed. To read any file having ARTS data format, use read_datafile. To read a ARTS variable, where the last extension is .am, use read_artsvar. Corresponding write functions exist. * read_tb removed. Conversion to brightness temperature now treated as part of H (see below). * A first set of functions to set up the sensor and data reduction transfer matrices. These functions are found in ami/hmatrix. Some simple tests have been performed but final debugging is not yet done. Basic facts: - A single frequency grid is valid for all zenith angles if no data reduction is performed. - With data reduction, all combinations of frequencies and angles are allowed. - To apply a possible data reduction on covariance matrix for thermal noise and weighting functions for baseline ripple terms, the data reduction transfer matrix must be known. To set up baseline ripple WFs, the final zenith angles and frequencies of the sensor must also be known. To handle these facts, there are 6 main variables: H Total transfer matrix. Conversion from monchromatic pencil beam spectra to final, possibly data reduced, measurement vector. Hd Transfer matrix for data reduction. Conversion from sensor output to final measurement vector. f_sensor Centre frequency of the spectrometer channels (assumed to be identical for all angles). za_angles Zenith angles observed by the sensor. f_y The frequency of each element of the measurement vector, y (has the same length as y in contrast to f_sensor) za_y The zenith angle of each element of the measurement vector, y (has the same length as y). * Some example file to use these functions will be delivered. * To do: the widths of the channels must be included in some way for correct calculation of thermal noise. 2000-08-21 Stefan Buehler * arts-0-0-42 * lineshapes.cc: Added this file. It contains the definition of the available lineshape functions (at the moment only a quick hack of Lorentz), as well as the lineshape function lookup data (initialized by define_lineshape_data). The lookup data contains one record for each lineshape. The record contains name and description (as usual), the cutoff frequency (-1 if none), and a pointer to the actual function. So, if you have the index of the lineshape you want to use, you can call the apropriate function. No need for any if or switch statements anywhere. * workspace.cc: Added WSV lineshapes, an ARRAY of size_t. This will hold one index for each abs_tag. If you have several abs_tags for different isotopes or transitions of a species, you may use different lineshapes. * Missing: A WS method to set lineshapes; use lineshapes in absorption calculation. 2000-08-16 Stefan Buehler * arts-0-0-41 * Had a go at implementing sparse matrices with TNT. This is only a quick fix, I don't think it works satisfactorily. In fact, I think TNT is crap and we should switch to MTL as soon as possible. There is an example method hTest that initializes a sparse matrix. It works, but the TNT sparse matrices lack basically all functionality. Also I had to fix a number of bugs inside TNT to make it work at all! * sparse.arts: Added this example in doc/examples. It calls just the hTest method. * vecmat.cc: Added this file. It contains some stuff that used to be in vecmat.h. 2000-08-10 Stefan Buehler * arts-0-0-40 * Rearranged almost everything. :-) * Automatic sources include now also workspace variable groups and the workspace itself. This makes adding new variables (and groups) easier. See Howto in Uguide how it's done now. There are quite a few new files: * goups.cc: NEW: Contains the lookup data for WSV groups. Here you can add new groups if you want to. * wsv_groups_h.cc: NEW: Automatically generates wsv_groups. * wsv_groups.h: NEW: Declares the enum type that is used to identify WSV groups. Also some other stuff related groups. AUTOMATIC FILE. * wsv_pointers_cc.cc: NEW: Automatically generates wsv_pointers.cc. * wsv_pointers.cc: NEW: Generates WSV pointers which are used by the engine. Now these pointers don't have to be specified with the wsv_data anymore, which makes the wsv_data nicer. AUTOMATIC FILE. * species_data.cc: NEW: Species specific lookup information (for example isotope ratios). * wsv.h: Now contains also the workspace itself. * workspace.h: REMOVED. * globals_1.cc: REMOVED. * make_wsv_group_h.cc: Renamed to make_wsv_groups_h.cc * make_wsv_groups_h.cc: Renamed from make_wsv_group_h.cc 2000-08-08 Axel von_Engeln * arts-0-0-39 * absorption.cc: hitran/mytran tags were wrong * absorption.h: several checks that tried to estimate the molecular weight from the isotope name did not work properly, commented * example1.arts: was empty in last check in 2000-08-08 Axel von_Engeln * arts-0-0-38 * absorption.cc: Included all molecules from JPL/HITRAN. 2000-08-05 Stefan Buehler * arts-0-0-37 * This is still an intermediate version. I'm in the process of re-designing the automatic generation of header files. Basically, the workspace itself should also be generated automatically from the information in define_wsv_data. * Achieved so far: Wsv group handles (file wsv_group.h) are now generated automatically from information in function define_wsv_group_names in file groups.cc. 2000-07-30 Stefan Buehler * arts-0-0-36 * Come a long way to making a first release. The physics of the release will be the same as in the Bredbeck version. In other words, still no realistic absorption coefficients. Took a lot of fiddling to make the right things go into the release. Now I'm almost there, but there is still an overall check lacking. * Switched from DOC++ to Doxygen, which is really much much better. In particular, the generated HTML document can optionally include the source code, in which case it is really good for source code browsing. * Put all the documentation neatly under `doc'. Also, made a HTML page in doc that references all the documentation. IMPORTANT: NEVER EDIT THE FILE index.html DIRECTLY. Instead, edit index.html.in. * Todo: Doxygen is more or less compatible with DOC++, but a lot of minor changes still need to be made. In particular, next I will fix the \verbatim parts in documentation headers, which seem to not come out right. 2000-07-26 Stefan Buehler * arts-0-0-35 * Moved user guide to doc/uguide. 2000-06-17 Stefan Buehler * arts-0-0-34 * absCalc: Tested this method. * full.arts: I wanted to preserve Patricks example, so this one is a combination of my absorption and your example h2o.arts. I have taken the midlatitude-winter atmospheric scenario of data/atmosphere/fascod, since it is the only one for which Patrick's p_grid and k_grid are inside the pressure range. Also, k_grid had to be slightly changed. The spectrum y looks reasonable, but the k matrix looks strange (ragged). 2000-06-16 Stefan Buehler * arts-0-0-33 * Added section `The ARTS concept' to user guide. * Filled in section development/organization * Added prototype for method absCalc{} which will calculate absorption in a rather simplified way for demonstration. * example1.arts: Made this file a lot nicer with comments and such. * Added GNU license everywhere in arts and arts/src. 2000-06-15 Stefan Buehler * arts-0-0-32 * Now compilation without optimization is the default. In fact, for now it is impossible to turn optiomization on. :-) * Merged notes.txt with the uguide. Removed notes.txt. * doc/examples: Added this directory. Inside is my example file example1.arts. Output files of this example are listed in .cvsignore. * doc/examples/arts: A script that calls the built arts executable. * data/spectrocopy/hitran96: Added this directory. It contains a section of the Hitran catalogue up to about 900 GHz. Also contains a smaller file with just H2O lines. 2000-06-15 Patrick Eriksson * arts-0-0-31 * A first version of species WFs is ready. All observation geometries are handled, but ground intersections are not yet considered. The function cover so far only the case when all the absorption is created by a single species. The WFs are returned normalised to the a priori profile. Other units will be implemented when the absorption part is ready. Some first tests have been performed but no extensive bug checks have been done. So be aware. * New workspace variables: k_grid, k New methods: kSpecies1d * My AUG parts are also updated and do now match the source code (for the implemented parts). * The RTE and BL core iteration is now found in seperate functions. This should faciliate the future use, for single scattering etc. * INTERPP now also in matrix-row version. 2000-06-12 Stefan Buehler * arts-0-0-30 * lines_per_tgCreateFromLines: This method splits up the line list into sub-lists for each tag group. This is the place where the tag groups are applied to divide the line list! * lines_per_tg (type ARRAYofARRAYofLineRecord ): This stores the line lists for the individual tag groups. This will be input the absortion coefficient calculation. 2000-06-11 Stefan Buehler * arts-0-0-29 * Input Atmosphere stuff is 1D (so is RTE). Only the absorption coefficient calculation itself is already 2D, since this is practically no extra effort. Reason for 1D input: It is not enough to just read a list of profiles. They could be on different horizontal grids. In fact one must somehow specify the horizontal coordinate to do proper horizontal interpolation. * Added row and col functions which extract a row (or column) from a matrix. The output can be a vector or a matrix. For a matrix the first and the last row (or column) to extract have to be specified. I was really missing this, many times you have a function that can act on a vector, so you want to apply it to a row or column of your matrix. * Atm2dFromRaw1D: This method interpolates the raw atmospheric inputs onto the absorption grid. 2000-06-10 Stefan Buehler * arts-0-0-28 * The new compiler (g++-2.95.2) is more fuzzy about redeclaration of variables. Therefore all global variables had to be moved to two separate files. * Rearranged workspace and methods data, so that workspace.h, workspace.cc, and methods.cc contain only the data itself. * globals_1.cc: Global variables that do NOT depend on wsv.h. * globals_2.cc: Global variables that DO depend on wsv.h. * workspace_aux.cc: Auxiliary stuff that used to be in workspace.cc. * methods_aux.cc: Auxiliary stuff that used to be in methods.cc. * los.h: Declaration of the Los data type. Moved there from workspace.h * wsv_groups.h: Everything related to WSV groups. * wsv_aux.h: Auxiliary stuff for the workspace. * I do not get any warning messages. Patrick, do you still get them? 2000-06-09 Patrick Eriksson * arts-0-0-27 * Cleaned up the LOS functions and the corresponding parts of the user guide. Included functions to calculate total atmospheric transmisioion. * The compilation gives some warning messages. * The LOS starts now always in space. The case with the blackbody ground is not considered anymore. This made the functions simpler. * The LOS and RTE functions renamed (sorry about that). Functions giving spectra are now called yRte, and functions giving transmisiion yBl (Beer-Lambert). Made some functions for special cases where less workspace variables must be set. Some functions name: - los1d - los1dNoRefraction - los1dUpward - source1d - trans1d - yRte - yRteNoGround - yBl - yBlNoGround * The function startup added to AMI. 2000-06-01 Stefan Buehler * arts-0-0-26 * Added workspace variables: n_profiles, ptz, raw_vmr_profiles, t_and_all_vmrs * raw_vmr_profilesReadFromScenario: Added this method. It does just what the name says. * Changed standart data file extension from .a to .am (you can read this as `arts matrix' or as `array of matrix', as you like). The single a seems to be already in use by other programs. * Removed the WriteToNamedFile and ReadFromNamedFile methods. Now, there are only ReadFromFile and WriteToFile methods, which take a filename as a keyword parameter. You can give an empty string as the name, then the default name is chosen. It was simply too nerve-wracking to have to duplicate each and every IO function for these two cases. 2000-05-30 Stefan Buehler * arts-0-0-25 * What was version 24? * parser.cc: Fixed bug in SourceText::AdvanceChar(), which lead to the last line of the controlfile not being correctly parsed. Correctly treating the end of the file seems to be the biggest problem for the parser! Hope this works correctly now. * tag_groupsDefine: Added this workspace method. It sets the contents of the workspace variable tag_groups, which contains the available tag groups. A tag group can consist of several tag definitions, but contrary to the Bredbeck definition, they must all relate to the same species. The reason for this is that there will be one VMR profile associated with each tag group. The drawback is that there must be a tag group for each molecule you want to calculate absorption for. But I don't see another solution, somewhere it has to be defined which input data to use. I think one tag group = one input profile is the cleanest solution. * Discovered a nasty problem with strstream. Essentially, it does not work as I thought it did. Replaced by the future standard stringstream. Since stringstream is not yet part of EGCS, I have added the necessary files to the ARTS source code. The files are: sstream.h (contains also the contents of the original file sstream.cc) iotraits.h I got these files off the web: ftp://ftp.fmi.uni-konstanz.de/pub/algo/personal/kuehl/sstream-egcs.tgz. They are written by Dietmar Kuehl. * Replaced strstream by stringstream everywhere. Pure stringstream also seems to work not so well, so I always use either ostringstream or istringstream. 2000-05-23 Patrick Eriksson * arts-0-0-23 * Included present versions of the ARTS Matlab interface (AMI) and the user guide to the CVS distribution. * Updated AMI to handle new data format Present functionality of AMI Read and write files basic data files Call ARTS from Matlab Setting the MAtlab search path * Please note that the user guide is not up to data and does not match the present version of ARTS 2000-05-22 Stefan Buehler * arts-0-0-22 * ARTS can now read HITRAN catalogue files! * Methods: linesReadFromHitran, linesWriteToNamedFile These methods are rather preliminary, because how they should act eventually depends on the rest of the absorption module. Anyway, I've tried to rather cleanly implement the capability to understand HITRAN in the utility function LineRecord::ReadFromHitranStream(istream& is) Yes, this is a member function of LineRecord, the data structure that stores spectro data for a single line. In the future, similar member functions can be added to read from JPL (setting widths to default values) and of course eventually from the native ARTS format. Of course, the program does not depend internally on any particular catalogue at all. In particular not on HITRAN. Rather, during the read-in, the HITRAN data is right away converted to the ARTS internal format. For now, this stuff seems to work fine. Ah yes, the line data is according to the recommendations given in the Bredbeck book. I've tried to document all formats and units as best as I can in the code directly. 2000-05-20 Stefan Buehler * arts-0-0-21 * Added species lookup data. I filled in the data only for H2O and O3, because I'm too lazy right now. Molecular masses: From looking at the table in forward_4_96, glob_def.c, the relative difference between the actual mass and the mass simply estimated from the Atom number is only 0.001. This seems not worth the trouble. Anyway, the field for the mass is there. Should anybody feel like adding the true numbers, just go ahead. 2000-05-15 Stefan Buehler * math_funcs.cc: Bug fix in void to_vector(VECTOR& x, const MATRIX& W) 2000-05-12 Stefan Buehler * arts-0-0-20 * Added implementation of --workspacevariables (-w) command line option. * Put the handling of the more complex command line options (-r,-d,-m,-w) in subroutines. * Added command line option --groups (-g) which simply lists all wsv groups. * This means the command line options are complete for now. 2000-05-11 Stefan Buehler * arts-0-0-19 * Added the implementation of the --methods (-m) dommand line option. Seems to work beautifully! 2000-05-08 Stefan Buehler * arts-0-0-18 * Added the implementation of the --describe (-d) command line option. 2000-04-30 Stefan Buehler * arts-0-0-17 * Added the command line parameter --reporting (-r). This should be a two digit integer. The first digit specifies the output level for stdout (stderr for error messages), the second digit the output level for the report file. The levels can reach from 0 (show only error messages) to 3 (show everything). Example: 03 = only errors to the screen, everything to the file. * Added some other cool command line parameters. However, currently they only produce a message that the implementation is still lacking. These are: string methods: If this is given the argument `all', it simply prints a list of all methods. If it is given the name of a variable, it prints all methods that produce this variable as output. string workspacevariables: If this is given the argument `all', it simply prints a list of all workspace variables. If it is given the name of a method, it prints all variables needed by that method. string describe: Print the description string of the given workspace variable or method. 2000-04-29 Stefan Buehler * arts-0-0-16 * vecmat.h: Small changes to the text defining the allowed matrix/vector operations. (In one instance it said `MATRIX' where it probably should say `VECTOR'.) * file.h: Fixed a strange bug: When the last line of a textfile was not terminated by a newline character, it was read twice by read_text_from_stream. Learned the following: If the end of stream s is reached, first s.eof() becomes true, but s is still false. Only if one tries to read past the end does s become true. * Implemented ARRAYofMATRIX and ARRAYofVECTOR as standard types. In particular, these are also now types of workspace variables. Implemented IO functions for these: Output: ArrayOfMatrixWriteToFile, ArrayOfMatrixWriteToNamedFile, ArrayOfVectorWriteToFile, ArrayOfVectorWriteToNamedFile, Input: ArrayOfMatrixReadFromFile, ArrayOfVectorReadFromFile, The file format is now always that of ArrayOfMatrix. All other variables are treated as special cases with apropriate dimensions set to 1. Only a single real output and only a single real input function are used (that for ArrayOfMatrix). This means that other types have to be converted to this type before writing or after reading. This is not terribly efficient. Should there be performance or memory problems later on, then we have to write dedicated IO functions. The amount of code is probably about the same, just to me the real IO seemed more difficult than the conversions, hence I did it the way I did it. 2000-04-12 Patrick Eriksson * arts-0-0-15 * This version can produce spectra (without refraction). General functions to determine the LOS, to get transmission and the source function along the LOS and to solving the RTE along LOS are ready. * A first list on vector and matrix functionality written. It is found in vecmat.h. Some functions changed and added to match the stated functionality. * Some workspace variables added and some renamed. The variables are now VECTOR p_abs; VECTOR t_abs; VECTOR z_abs; VECTOR f_abs; MATRIX abs; VECTOR view1; Numeric z_plat; Numeric l_step; int refr; Numeric l_step_refr; VECTOR refr_index; Numeric z_ground; Numeric t_ground; VECTOR e_ground; Los los; MATARRAY source; MATARRAY trans; VECTOR y_space; VECTOR y; * Example on new method calls: y_spaceStd{1} y_spacePlanck{300} losBasic{} sourceBasic{} transBasic{} yGeneral{} 2000-04-10 Stefan Buehler * arts-0-0-14 * token.cc: Fixed small bug in definition of TokValTypeName. * reconf: Remove links before trying to re-configure. * arts-0-0-13 * Renamed token types to enum TokValType { string_t, int_t, Numeric_t, ARRAY_string_t, ARRAY_int_t, ARRAY_Numeric_t, undefined_t }; This is now consistent with the token type names in token.cc. * Removed Integer type, since it is no longer necessary. * notes.txt: Updated with respect to global constants. * notes.txt: Added howto about switching off optimization. * Everywhere: Changed const extern to extern const. This is just for nicety, the two are the same thing. * vecmat.h: Moved Patricks vector/scalar operations here from tnt/vec.h. * Compiling without optimization is really much much faster. I wish I had realized this before! 2000-04-06 Patrick Eriksson * arts-0-0-12 * Some methods are commented out due to compilation problems * Changed definitions of constant to e.g. extern const Numeric EARTH_RADIUS = 6.378e6; To use the constant, type extern const Numeric EARTH_RADIUS; I had to add extern also at the definition to get it to work. Stefan, is the text in notes.txt really correct? * Added doc++ text and file header to constants.cc and math_funcs.cc * Workspace types added (as temporary solution): Integer * Workspace variables added (or renamed): VECTOR z_abs; VECTOR view1; Numeric z_plat; Numeric l_step; Integer refr; Numeric l_step_refr; Integer cbgr; Numeric z_ground; Numeric t_ground; VECTOR e_ground; Los los; * Methods added: IntSet VectorSet VectorLinSpace VectorNLinSpace VectorNLogSpace losGeneral * Files included: m_los.cc atm_funcs.cc atm_funcs.h 2000-04-05 Stefan Buehler * arts-0-0-11 * Fixed the bugs reported by Patrick. This is not a running version of the program, because the file src/m_los.cc is missing! * parser.cc: Fixed bugs 1: The case with the optionally missing keyword for one parameter methods was not handled correctly. Now the current character is used to recognize this case. THIS MEANS THAT KEYWORD NAMES STARTING WITH A NUMBER WILL BREAK THE PARSER! I don't know a better solution without look-ahead. * parser.cc: Fixed bugs 2: The last method was executed twice in some cases, due to incorrect flagging of Eof in function SourceText::AdvanceChar. 2000-04-04 Patrick Eriksson * arts-0.0.10 * Set the ground to include los1d. Included the file m_los.cc. Introduced the workspace variables plat_z and view1 for test purposes. There will be more variables connected to los. Some bugs mailed to Stefan. 2000-04-04 Stefan Buehler * arts-0.0.9 * Added method losTest just to see if we can access los. This does not initialize los, just change the value. For a real method, this would be very bad style, it should re-set los completely, unless los is also specified as INPUT variable in methods.cc. * arts-0.0.8 * Added workspace variable group Los and workspace variable los on Patrick's request. The declaration of Los is now in file workspace.h, but it could be moved somewhere else in the future. * arts-0.0.7 * parser.cc: In void read_name(string& name, SourceText& text): Changed isalpha to isalnum, so that names may now also include numbers. This was a request of Patrick. I don't remember if I had a good reason to allow only alphabetic characters and underscores. Let's just see if we get any problems with this. * arts-0.0.6 * Quickly implemented NumericSet for Patrick * workspace.h: - Added Numeric_ in WsvGroup - Changed N_WSV_GROUPS to 3 - Added Numeric dummy to class WorkSpace - Added virtual operator Numeric*() { safety(); return NULL; }; in class WsvP * notes.txt !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! The last point above was missing in notes.txt. I have added it now. Sorry for that. !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! * workspace.cc: - Added: wsv_group_names.push_back("Numeric"); - Added: { static WsvPointer p(&workspace.dummy); wsv_data.push_back (WsvRecord ("dummy", "This is just to test Numeric WSVs.", Numeric_, &p)); } * methods.cc: - Added: md_data.push_back ( MdRecord ( NAME("NumericSet"), DESCRIPTION("Sets a workspace variable of type Numeric to a value."), OUTPUT(), INPUT(), GOUTPUT(Numeric_), GINPUT(), KEYWORDS("value"), TYPES(num_))); * m_io.cc: - Added the implementation of NumericSet 2000-03-30 Stefan Buehler * arts-0.0.5 * ARTS has now the following methods: AllAbsExample VectorWriteToFile MatrixWriteToFile VectorWriteToNamedFile MatrixWriteToNamedFile VectorReadFromFile MatrixReadFromFile which all do the obvious. Parsing and executing of methods seems to work, but yet has to be tested for a wider variety of methods. Also, the executor already checks if all input workspace data is present, before it executes a method. * Added some more HowTos in file src/notes.txt 2000-03-29 Stefan Buehler * arts-0.0.4 * Now we can parse and execute specific and generic methods. However, I want to re-structure the method lookup data (add explicit fields for generic I/O, so that a method can have both generic and specific I/O). So this commit is mainly to save the state of the work before I start with this complicated task. 2000-03-24 Stefan Buehler * arts-0.0.3. * Arts can now parse specific (i.e., not generic) methods. There so far is only a single method, AllAbsExample, which sets the absorption parameters. * arts-0.0.2. * make_md_h.cc: Added. * math_funcs.h: Added. * math_funcs.cc: Added. * absorption.cc: Added. 2000-03-14 Stefan Buehler * This file contains SAB 14.03.2000. * arts-0.0.1. * .cvsignore files added everywhere. * Started this file, the Arts history. ALWAYS add a note to this file, no matter how small your change. Also, always update the running version number. Newest change log entries first! You can very easily add an entry with emacs by typing either M-x add-change-log-entry or C-x 4 a. Remark about version numbers: Arts has a 3 digit version number, like for example Arts 1.2.3. For user releases the third digit is zero. The first two digits are set in configure.in. Update these only when you cut a user release. In that case you also have to set the third digit to zero. The third digit is set in src/version.cc. Always update this, no matter how small your change!