Go to the documentation of this file.
131 "Outputs a string.\n"
133 "Output the given message string, level follows the same convention as the -r\n"
134 "command line flag of arts.\n"
137 " message : Message for output on screen.\n"
138 " level : Output level for the message.\n"
153 "Stops the execution and exits ARTS.\n"
155 "This method is handy if you want to debug one of your\n"
156 "controlfiles. You can insert it anywhere in the controlfile. When\n"
157 "it is reached, it will terminate the program."
171 "A dummy method that can be used for test purposes.\n"
173 "This method can be used by ARTS developers to quickly test stuff.\n"
174 "The implementation is in file m_io.cc. This just saves you the \n"
175 "trouble of adding a dummy method everytime you want to try \n"
176 "something out quickly."
199 "Sets an index workspace variable to the given value. \n"
202 " Index : The index variable to be set. \n"
205 " value : A positive integer."
216 (
NAME(
"IndexWriteAscii"),
218 "Writes an index value to an ASCII file.\n"
220 "The index value of the given workspace variable\n"
221 "is written to the file with the specified name.\n"
222 "If the filename is omitted, the index is written\n"
223 "to <basename>.<variable_name>.aa.\n"
225 "See *ArrayOfMatrixWriteAscii* for file format.\n"
228 " Index : Name of the workspace variable to write.\n"
231 " filename : Name of the output file.\n"
242 (
NAME(
"IndexReadAscii"),
244 "Reads a index value from an ASCII file.\n"
246 "The index value is read from the file with the\n"
247 "specified name and stored in the given workspace\n"
249 "If the filename is omitted, the index is read\n"
250 "from <basename>.<variable_name>.aa.\n"
252 "See *ArrayOfMatrixWriteAscii* for file format.\n"
255 " Index : Name of the workspace variable to read.\n"
258 " filename : Name of the input file.\n"
269 (
NAME(
"IndexWriteBinary"),
271 "Writes an index to a binary file.\n"
273 "The filename can be specified or an empty String.\n"
274 "If empty, it is set to <basename>.<variable_name>.ab.\n"
275 "File is in HDF4 format.\n"
278 " Index : Name of the workspace variable to write.\n"
281 " filename: Name of the output file.\n"
293 (
NAME(
"IndexReadBinary"),
295 "Reads an index from a binary file.\n"
297 "The filename can be specified or an empty String.\n"
298 "If empty, it is set to <basename>.<variable_name>.ab.\n"
299 "File is in HDF4 format.\n"
302 " Index : Name of the workspace variable to read.\n"
305 " filename : Name of the input file.\n"
318 (
NAME(
"NumericSet"),
321 "Sets a numeric workspace variable to the given value. \n"
324 " Numeric : The numeric variable to be set. \n"
327 " value : The value."
338 (
NAME(
"NumericCopyFirstOfVector"),
341 "Sets a numeric workspace variable to the value of the first \n"
342 "element of a vector. \n"
345 " Numeric : The numeric variable to be set. \n"
348 " Vector : The vector from which the value shall be obtained."
359 (
NAME(
"NumericCopyLastOfVector"),
362 "Sets a numeric workspace variable to the value of the last \n"
363 "element of a vector. \n"
366 " Numeric : The numeric variable to be set. \n"
369 " Vector : The vector from which the value shall be obtained."
380 (
NAME(
"NumericWriteAscii"),
382 "Writes a numeric value to an ASCII file.\n"
384 "The numeric value of the given workspace variable\n"
385 "is written to the file with the specified name.\n"
386 "If the filename is omitted, the numeric is written\n"
387 "to <basename>.<variable_name>.aa.\n"
389 "See *ArrayOfMatrixWriteAscii* for file format.\n"
392 " Numeric : Name of the workspace variable to write.\n"
395 " filename : Name of the output file.\n"
406 (
NAME(
"NumericReadAscii"),
408 "Reads a numeric value from an ASCII file.\n"
410 "The numeric value is read from the file with the\n"
411 "specified name and stored in the given workspace\n"
413 "If the filename is omitted, the numeric is read\n"
414 "from <basename>.<variable_name>.aa.\n"
416 "See *ArrayOfMatrixWriteAscii* for file format.\n"
419 " Numeric : Name of the workspace variable to read.\n"
422 " filename : Name of the input file.\n"
433 (
NAME(
"NumericWriteBinary"),
435 "Writes a numeric value to a binary file.\n"
437 "The filename can be specified or an empty String.\n"
438 "If empty, it is set to <basename>.<variable_name>.ab.\n"
439 "File is in HDF4 format.\n"
442 " Numeric : Name of the workspace variable to write.\n"
445 " filename : Name of the output file.\n"
456 (
NAME(
"NumericReadBinary"),
458 "Reads a numeric from a binary file.\n"
460 "The filename can be specified or an empty String.\n"
461 "If empty, it is set to <basename>.<variable_name>.ab.\n"
462 "File is in HDF4 format.\n"
465 " Numeric : Name of the workspace variable to read.\n"
468 " filename : Name of the input file.\n"
482 (
NAME(
"VectorCopy"),
485 "Creates a copy of a vector. \n"
488 " Vector : The vector to be created. \n"
491 " Vector : The vector to be copied. "
503 (
NAME(
"VectorCopyFromMatrix"),
506 "Copies a row or a column from a matrix to a vector"
509 " Vector : The vector to be created. \n"
512 " Matrix : The source matrix. \n"
515 " orientation : Could be either \"col\" or \"row\". \n"
516 " index : Row or column number to be copied. \n"
531 "Creates a workspace vector with the specified length and sets \n"
532 "all values of the vector to the specified value. \n"
535 " Vector : The vector to be created. \n"
538 " length : The length of the new vector. \n"
539 " value : The value of the vector elements. "
550 (
NAME(
"VectorSetLengthFromVector"),
553 "Creates a workspace vector with the same length as another vector,\n"
554 "and sets all values of the new vector to the specified value. \n"
556 "A common usage of the function should be: \n"
557 " VectorSetLengthFromVector(e_ground,f_mono){value=0.75} \n"
560 " Vector : The vector to be created. \n"
563 " Vector : The vector specifying the length.. \n"
566 " value : The value of the vector elements. "
577 (
NAME(
"VectorLinSpace"),
580 "Creates a vector with linear spacing.\n"
582 "The first element equals always the start value, and the spacing\n"
583 "equlas always the step value, but note that the last value can \n"
584 "deviate from the stop value. The keyword step can be both positive\n"
586 " The vector is [start, start+step, start+2*step, ...]\n "
589 " Vector : The vector to be created. \n"
592 " start : The start value. \n"
593 " stop : The maximum value of the end value. \n"
594 " step : The spacing of the vector. "
600 KEYWORDS(
"start",
"stop",
"step" ),
605 (
NAME(
"VectorNLinSpace"),
608 "Creates a vector with defined length, equally spaced between the \n"
609 "given end values. \n"
611 "The length must be larger than 1. \n"
614 " Vector : The vector to be created. \n"
617 " start : The start value. \n"
618 " stop : The end value. \n"
619 " n : Number of elements of the vector. "
630 (
NAME(
"VectorNLogSpace"),
633 "Creates a vector with defined length, equally logarithmically \n"
634 "spaced between the given end values. \n"
636 "The length must be larger than 1. \n"
639 " Vector : The vector to be created. \n"
642 " start : The start value. \n"
643 " stop : The end value. \n"
644 " n : Number of elements of the vector. "
655 (
NAME(
"VectorPressuresForLinAltitudes"),
658 "Calculates a set of pressures corresponding to a set of\n"
659 "linearly spaced altitudes. \n"
661 "The linear set of altitudes is defined by an altitude step and \n"
662 "a start and stop pressure. \n"
663 " The conversions between pressures and altitudes are based on\n"
664 "*p_abs* and *z_abs*. \n"
667 " Vector : Return vector for the pressure grid created. \n"
670 " delta_z : Altitude step.\n"
671 " p_start : Start pressure.\n"
672 " p_stop : Stop pressure."
678 KEYWORDS(
"delta_z",
"p_start",
"p_stop" ),
683 (
NAME(
"VectorFlip"),
686 "Creates a copy of a vector in reversed order. \n"
689 " Vector : The vector to be created. \n"
692 " Vector : The vector to be copied. "
703 (
NAME(
"VectorMatrixMultiply"),
706 "Multiply a Vector with a Matrix and store the result in another\n"
709 "This just computes the normal Matrix-Vector product, y=M*x. It is ok\n"
710 "if input and output Vector are the same. This function is handy for\n"
711 "multiplying the H Matrix to spectra.\n"
714 " Vector : The result of the multiplication (dimension m).\n"
717 " Matrix : The Matrix to multiply (dimension mxn).\n"
718 " Vector : The original Vector (dimension n).\n"
729 (
NAME(
"VectorWriteAscii"),
731 "Writes a vector to an ASCII file.\n"
733 "The vector of the given workspace variable\n"
734 "is written to the file with the specified name.\n"
735 "If the filename is omitted, the vector is written\n"
736 "to <basename>.<variable_name>.aa.\n"
738 "See *ArrayOfMatrixWriteAscii* for file format.\n"
741 " Vector : Name of the workspace variable to write.\n"
744 " filename : Name of the output file.\n"
755 (
NAME(
"VectorReadAscii"),
757 "Reads a vector from an ASCII file.\n"
759 "The vector is read from the file with the\n"
760 "specified name and stored in the given workspace\n"
762 "If the filename is omitted, the vector is read\n"
763 "from <basename>.<variable_name>.aa.\n"
765 "See *ArrayOfMatrixWriteAscii* for file format.\n"
768 " Vector : Name of the workspace variable to read.\n"
771 " filename : Name of the input file.\n"
782 (
NAME(
"VectorWriteBinary"),
784 "Writes a vector to a binary file.\n"
786 "The filename can be specified or an empty String.\n"
787 "If empty, it is set to <basename>.<variable_name>.ab.\n"
788 "File is in HDF4 format.\n"
791 " Vector : Name of the workspace variable to write.\n"
794 " filename : Name of the output file.\n"
805 (
NAME(
"VectorReadBinary"),
807 "Reads a vector from a binary file.\n"
809 "The filename can be specified or an empty String.\n"
810 "If empty, it is set to <basename>.<variable_name>.ab.\n"
811 "File is in HDF4 format.\n"
814 " Vector : Name of the workspace variable to read.\n"
817 " filename : Name of the input file.\n"
829 (
NAME(
"VectorPlanck"),
832 "Sets a vector to the Planck function for the given frequencies\n"
833 "and temperature. \n"
836 " VectorPlanck(y_space,f_mono){temp=2.7} \n"
839 " Vector : The vector to be created. \n"
842 " Vector : Input frequencies. \n"
845 " temp : The blackbody temperature."
856 (
NAME(
"VectorCalcLog10"),
859 "Calculates the base 10 logarithm of a vector. \n"
861 "The result can either be stored in the same or another vector. \n"
864 " Vector : Return vector. \n"
867 " Vector : Input vector. "
881 "Adds a scalar to all elements of a vector. \n"
883 "The result can either be stored in the same or another vector. \n"
886 " Vector : Return vector. \n"
889 " Vector : Original vector. \n"
892 " value : The value to be added to the vector."
903 (
NAME(
"VectorScale"),
906 "Scales all elements of a vector with the same value. \n"
908 "The result can either be stored in the same or another vector. \n"
911 " Vector : Return vector. \n"
914 " Vector : Original vector. \n"
917 " value : The value to be multiplicated with the vector."
934 "Creates a workspace matrix with the specified size and sets \n"
935 "all values of the matrix to the specified value. \n"
938 " Matrix : The matrix to be created. \n"
941 " nrows : The number of rows of the matrix to create. \n"
942 " ncols : The number of columns of the matrix to create. \n"
943 " value : The value of the matrix elements. "
949 KEYWORDS(
"nrows",
"ncols",
"value" ),
954 (
NAME(
"MatrixCopy"),
957 "Creates a copy of a matrix. \n"
960 " Matrix : The matrix to be created. \n"
963 " Matrix : The matrix to be copied. "
974 (
NAME(
"MatrixFillWithVector"),
977 "Forms a matrix with n columns, and put the given vector in \n"
981 " Matrix : The matrix to be created. \n"
984 " Vector : The vector to be copied. \n"
986 " n : Number of columns in the matrix. "
997 (
NAME(
"MatrixMatrixMultiply"),
1000 "Multiply a Matrix with another Matrix and store the result in the result\n"
1003 "This just computes the normal Matrix-Matrix product, Y=M*X. It is ok\n"
1004 "if Y and X are the same Matrix. This function is handy for\n"
1005 "multiplying the H Matrix to weighting functions.\n"
1008 " Matrix : The result of the multiplication (dimension mxc).\n"
1011 " Matrix : The Matrix to multiply (dimension mxn).\n"
1012 " Matrix : The original Matrix (dimension nxc).\n"
1023 (
NAME(
"ArrayOfMatrixMatrixMultiply"),
1026 "Multiply an array of Matrix with a Matrix and store the result in the result\n"
1029 "This just computes the normal Matrix-Matrix product, Y[i]=M*X[i]. It is ok\n"
1030 "if Y and X are the same Array of Matrix. This function is handy for\n"
1031 "multiplying the H Matrix to weighting functions.\n"
1034 " ArrayOfMatrix : The result of the multiplication (dimension mxc).\n"
1037 " Matrix : The Matrix to multiply (dimension mxn).\n"
1038 " ArrayOfMatrix : The original Matrix (dimension nxc).\n"
1049 (
NAME(
"MatrixMatrixAdd"),
1052 "Adds two matrices. \n"
1054 "The function makes an element-wise addition. The size of the two \n"
1055 "matrices to add must have the same size. \n"
1058 " Matrix : The result of the addition (dimension m x n).\n"
1061 " Matrix : A matrix (dimension m x n).\n"
1062 " Matrix : A matrix (dimension m x n)."
1073 (
NAME(
"MatrixWriteAscii"),
1075 "Writes a matrix to an ASCII file.\n"
1077 "The matrix of the given workspace variable\n"
1078 "is written to the file with the specified name.\n"
1079 "If the filename is omitted, the matrix is written\n"
1080 "to <basename>.<variable_name>.aa.\n"
1082 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1085 " Matrix : Name of the workspace variable to write.\n"
1088 " filename : Name of the output file.\n"
1099 (
NAME(
"MatrixReadAscii"),
1101 "Reads a matrix from an ASCII file.\n"
1103 "The matrix is read from the file with the\n"
1104 "specified name and stored in the given workspace\n"
1106 "If the filename is omitted, the matrix is read\n"
1107 "from <basename>.<variable_name>.aa.\n"
1109 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1111 "Generic output: \n"
1112 " Matrix : Name of the workspace variable to read.\n"
1115 " filename : Name of the input file.\n"
1126 (
NAME(
"MatrixWriteBinary"),
1128 "Writes a matrix to a binary file.\n"
1130 "The filename can be specified or an empty String.\n"
1131 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1132 "File is in HDF4 format.\n"
1135 " Matrix : Name of the workspace variable to write.\n"
1138 " filename : Name of the output file.\n"
1149 (
NAME(
"MatrixReadBinary"),
1151 "Reads a matrix from a binary file.\n"
1153 "The filename can be specified or an empty String.\n"
1154 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1155 "File is in HDF4 format.\n"
1157 "Generic output: \n"
1158 " Matrix : Name of the workspace variable to read.\n"
1161 " filename : Name of the input file.\n"
1172 (
NAME(
"MatrixScale"),
1175 "Scales all elements of a matrix with the same value. \n"
1177 "The result can either be stored in the same or another matrix. \n"
1179 "Generic output: \n"
1180 " Matrix : Return matrix. \n"
1183 " Matrix : Original matrix. \n"
1186 " value : The value to be multiplicated with the matrix."
1197 (
NAME(
"MatrixDiagonal"),
1200 "Creates a diagonal matrix. \n"
1202 "All diagonal elements are set to the same value.\n"
1204 "Generic output: \n"
1205 " Matrix : The matrix to be created. \n"
1208 " nrows : The number of rows (and columns) of the matrix to \n"
1210 " value : The value of the diagonal matrix elements. "
1225 (
NAME(
"ArrayOfIndexWriteAscii"),
1227 "Writes a index array to an ASCII file.\n"
1229 "The index array of the given workspace variable\n"
1230 "is written to the file with the specified name.\n"
1231 "If the filename is omitted, the index array is written\n"
1232 "to <basename>.<variable_name>.aa.\n"
1234 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1237 " ArrayOfIndex : Name of the workspace variable to write.\n"
1240 " filename : Name of the output file.\n"
1251 (
NAME(
"ArrayOfIndexReadAscii"),
1253 "Reads a index array from an ASCII file.\n"
1255 "The index array is read from the file with the\n"
1256 "specified name and stored in the given workspace\n"
1258 "If the filename is omitted, the index array is read\n"
1259 "from <basename>.<variable_name>.aa.\n"
1261 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1263 "Generic output: \n"
1264 " ArrayOfIndex : Name of the workspace variable to read.\n"
1267 " filename : Name of the input file.\n"
1278 (
NAME(
"ArrayOfIndexWriteBinary"),
1280 "Writes an index array to a binary file.\n"
1282 "The filename can be specified or an empty String.\n"
1283 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1284 "File is in HDF4 format.\n"
1287 " ArrayOfIndex : Name of the workspace variable to write.\n"
1290 " filename : Name of the output file.\n"
1301 (
NAME(
"ArrayOfIndexReadBinary"),
1303 "Reads an index array from a binary file.\n"
1305 "The filename can be specified or an empty String.\n"
1306 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1307 "File is in HDF4 format.\n"
1309 "Generic output: \n"
1310 " ArrayOfIndex : Name of the workspace variable to read.\n"
1313 " filename : Name of the input file.\n"
1327 (
NAME(
"ArrayOfVectorWriteAscii"),
1329 "Writes an array of vectors to an ASCII file.\n"
1331 "The array of vectors of the given workspace variable\n"
1332 "is written to the file with the specified name.\n"
1333 "If the filename is omitted, the array of vectors is written\n"
1334 "to <basename>.<variable_name>.aa.\n"
1336 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1339 " ArrayOfVector : Name of the workspace variable to write.\n"
1342 " filename : Name of the output file.\n"
1353 (
NAME(
"ArrayOfVectorReadAscii"),
1355 "Reads an array of vectors from an ASCII file.\n"
1357 "The array of vectors is read from the file with the\n"
1358 "specified name and stored in the given workspace\n"
1360 "If the filename is omitted, the array of vectors is read\n"
1361 "from <basename>.<variable_name>.aa.\n"
1363 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1365 "Generic output: \n"
1366 " ArrayOfVector : Name of the workspace variable to read.\n"
1369 " filename : Name of the input file.\n"
1380 (
NAME(
"ArrayOfVectorWriteBinary"),
1382 "Writes a vector array to a binary file.\n"
1384 "The filename can be specified or an empty String.\n"
1385 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1386 "File is in HDF4 format.\n"
1389 " ArrayOfVector : Name of the workspace variable to write.\n"
1392 " filename : Name of the output file.\n"
1403 (
NAME(
"ArrayOfVectorReadBinary"),
1405 "Reads a vector array from a binary file.\n"
1407 "The filename can be specified or an empty String.\n"
1408 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1409 "File is in HDF4 format.\n"
1411 "Generic output: \n"
1412 " ArrayOfVector : Name of the workspace variable to read.\n"
1415 " filename : Name of the input file.\n"
1430 (
NAME(
"ArrayOfMatrixWriteAscii"),
1432 "Writes an array of matrices to an ASCII file.\n"
1434 "The array of matrices of the given workspace variable\n"
1435 "is written to the file with the specified name.\n"
1436 "If the filename is omitted, the array of matrices is written\n"
1437 "to <basename>.<variable_name>.aa.\n"
1439 "The format is as follows:\n"
1442 "<n_array_elements>\n"
1443 "<n_rows> <n_columns>\n"
1445 "<n_rows> <n_columns>\n"
1450 "# Generated by arts-0.0.16, Apr 29 2000, 17:38:44\n"
1461 " ArrayOfMatrix : Name of the workspace variable to write.\n"
1464 " filename : Name of the output file.\n"
1475 (
NAME(
"ArrayOfMatrixReadAscii"),
1477 "Reads an array of matrices from an ASCII file.\n"
1479 "The array of matrices is read from the file with the\n"
1480 "specified name and stored in the given workspace\n"
1482 "If the filename is omitted, the array of matrices is read\n"
1483 "from <basename>.<variable_name>.aa.\n"
1485 "See *ArrayOfMatrixWriteAscii* for file format.\n"
1487 "Generic output: \n"
1488 " ArrayOfMatrix : Name of the workspace variable to read.\n"
1491 " filename : Name of the input file.\n"
1502 (
NAME(
"ArrayOfMatrixWriteBinary"),
1504 "Writes a matrix array to a binary file.\n"
1506 "The filename can be specified or an empty String.\n"
1507 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1508 "File is in HDF4 format.\n"
1511 " ArrayOfMatrix : Name of the workspace variable to write.\n"
1514 " filename : Name of the output file.\n"
1525 (
NAME(
"ArrayOfMatrixReadBinary"),
1527 "Reads a matrix array from a binary file.\n"
1529 "The filename can be specified or an empty String.\n"
1530 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1531 "File is in HDF4 format.\n"
1533 "Generic output: \n"
1534 " ArrayOfMatrix : Name of the workspace variable to read.\n"
1537 " filename : Name of the input file.\n"
1550 (
NAME(
"StringSet"),
1551 DESCRIPTION(
"Sets a String to the given text String."),
1561 (
NAME(
"StringWriteAscii"),
1563 "Writes a string to an ASCII file.\n"
1565 "The string of the given workspace variable\n"
1566 "is written to the file with the specified name.\n"
1567 "If the filename is omitted, the string is written\n"
1568 "to <basename>.<variable_name>.aa.\n"
1570 "See *ArrayOfStringWriteAscii* for file format.\n"
1573 " String : Name of the workspace variable to write.\n"
1576 " filename : Name of the output file.\n"
1587 (
NAME(
"StringReadAscii"),
1589 "Reads a string from an ASCII file.\n"
1591 "The string is read from the file with the\n"
1592 "specified name and stored in the given workspace\n"
1594 "If the filename is omitted, the string is read\n"
1595 "from <basename>.<variable_name>.aa.\n"
1597 "See *ArrayOfStringWriteAscii* for file format.\n"
1599 "Generic output: \n"
1600 " String : Name of the workspace variable to read.\n"
1603 " filename : Name of the input file.\n"
1614 (
NAME(
"StringWriteBinary"),
1616 "Writes a String to a binary file.\n"
1618 "The filename can be specified or an empty String.\n"
1619 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1620 "File is in HDF4 format.\n"
1623 " String : Name of the workspace variable to write.\n"
1626 " filename : Name of the output file.\n"
1637 (
NAME(
"StringReadBinary"),
1639 "Reads a String from a binary file.\n"
1641 "The filename can be specified or an empty String.\n"
1642 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1643 "File is in HDF4 format.\n"
1645 "Generic output: \n"
1646 " String : Name of the workspace variable to read.\n"
1649 " filename : Name of the input file.\n"
1663 (
NAME(
"ArrayOfStringSet"),
1664 DESCRIPTION(
"Sets a String array according the given text.\n"
1665 "The format is text = [\"String1\",\"String2\",...]"),
1675 (
NAME(
"ArrayOfStringWriteAscii"),
1677 "Writes an array of strings to an ASCII file.\n"
1679 "The array of strings of the given workspace variable\n"
1680 "is written to the file with the specified name.\n"
1681 "If the filename is omitted, the string is written\n"
1682 "to <basename>.<variable_name>.aa.\n"
1684 "The format is as follows:\n"
1693 "# Generated by arts-0.0.16, Apr 29 2000, 17:38:44\n"
1699 " ArrayOfString : Name of the workspace variable to write.\n"
1702 " filename : Name of the output file.\n"
1713 (
NAME(
"ArrayOfStringReadAscii"),
1715 "Reads an array of strings from an ASCII file.\n"
1717 "The array of strings is read from the file with the\n"
1718 "specified name and stored in the given workspace\n"
1720 "If the filename is omitted, the string is read\n"
1721 "from <basename>.<variable_name>.aa.\n"
1723 "See *ArrayOfStringWriteAscii* for file format.\n"
1725 "Generic output: \n"
1726 " ArrayOfString : Name of the workspace variable to read.\n"
1729 " filename : Name of the input file.\n"
1740 (
NAME(
"ArrayOfStringWriteBinary"),
1742 "Writes a String array to a binary file.\n"
1744 "The filename can be specified or an empty String.\n"
1745 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1746 "File is in HDF4 format.\n"
1749 " ArrayOfString : Name of the workspace variable to write.\n"
1752 " filename : Name of the output file.\n"
1763 (
NAME(
"ArrayOfStringReadBinary"),
1765 "Reads a String array from a binary file.\n"
1767 "The filename can be specified or an empty String.\n"
1768 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1769 "File is in HDF4 format.\n"
1771 "Generic output: \n"
1772 " ArrayOfString : Name of the workspace variable to read.\n"
1775 " filename : Name of the input file.\n"
1788 (
NAME(
"TagGroupsSpeciesWriteAscii"),
1790 "Writes TagGroup Species to an ASCII file.\n"
1792 "The tags which are defined by *tgsDefine*\n"
1793 "is written to the file with the specified name.\n"
1794 "If the filename is omitted, the string is written\n"
1795 "to <basename>.<variable_name>.aa.\n"
1798 " tgs : The tags which are defined.\n"
1801 " filename : Name of the output file.\n"
1815 (
NAME(
"LosWriteBinary"),
1817 "Writes a LOS structure to a binary file.\n"
1819 "The filename can be specified or an empty String.\n"
1820 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1821 "File is in HDF4 format.\n"
1824 " LOS : Name of the workspace variable to write.\n"
1827 " filename : Name of the output file.\n"
1838 (
NAME(
"LosReadBinary"),
1840 "Reads a LOS structure from a binary file.\n"
1842 "The filename can be specified or an empty String.\n"
1843 "If empty, it is set to <basename>.<variable_name>.ab.\n"
1844 "File is in HDF4 format.\n"
1846 "Generic output: \n"
1847 " LOS : Name of the workspace variable to read.\n"
1850 " filename : Name of the input file.\n"
1869 (
NAME(
"lines_per_tgSetEmpty"),
1872 "Sets lines_per_tg to empty line lists.\n"
1874 "You can use this method to set lines per tag if you do not reall want\n"
1875 "to compute line spectra. Formally, absCalc will still require\n"
1876 "lines_per_tg to be set.\n"
1887 (
NAME(
"lines_per_tgReadFromCatalogues"),
1889 "This method can read lines from different line \n"
1892 "For each tag group, you can specify which catalogue\n"
1893 "to use. Because the method creates lines_per_tg directly,\n"
1894 "it replaces for example thefollowing two method calls:\n"
1895 " - linesReadFromHitran\n"
1896 " - lines_per_tgCreateFromLines\n"
1897 " This method needs as input WSVs the list of tag \n"
1898 "groups. Keyword parameters must specify the names of\n"
1899 "the catalogue files to use and the matching formats.\n"
1900 "Names can be anything, formats can currently be \n"
1901 "HITRAN96 (for HITRAN 1986-2001 databases), HITRAN04 \n"
1902 "(for HITRAN 2004 database), MYTRAN2, JPL, or ARTS. \n"
1903 "Furthermore, keyword parameters have to specify minimum \n"
1904 "and maximum frequency for each tag group. To safe typing, \n"
1905 "if there are less elements in the keyword parameters than \n"
1906 "there are tag groups, the last parameters are applied to \n"
1907 "all following tag groups.\n"
1911 "lines_per_tgReadFromCatalogues{\n"
1912 " filenames = [ \"../data/cat1.dat\", \"../data/cat2.dat\" ]\n"
1913 " formats = [ \"MYTRAN2\", \"HITRAN96\" ]\n"
1914 " fmin = [ 0, 0 ]\n"
1915 " fmax = [ 2000e9, 100e9 ]\n"
1917 " In this example, lines for the first tag group will\n"
1918 "be taken from cat1, lines for all other tag groups \n"
1919 "will be taken from cat2.\n"
1920 " This methods allows you for example to use a \n"
1921 "special line file just for water vapor lines. This\n"
1922 "could be the improved water vapor line file \n"
1923 "generated by Thomas Kuhn.\n"
1924 " Catalogues are only read once, even if several tag\n"
1925 "groups have the same catalogue. However, in that case\n"
1926 "the frequency ranges MUST be the same. (If you want \n"
1927 "to do fine-tuning of the frequency ranges, you can do \n"
1928 "this inside the tag definitions, e.g., \"H2O-*-0-2000e9\".)\n"
1929 " This function uses the various reading routines\n"
1930 "(linesReadFromHitran, etc.), as well as\n"
1931 "lines_per_tgCreateFromLines.\n"
1934 " filenames = Name (and path) of the catalogue files.\n"
1935 " formats = allowed formats are HITRAN96,MYTRAN2,JPL,ARTS \n"
1936 " fmin = Minimum frequency for lines to read in Hz.\n"
1937 " fmax = Maximum frequency for lines to read in Hz.\n"),
1942 KEYWORDS(
"filenames",
"formats",
"fmin",
"fmax" ),
1947 (
NAME(
"linesReadFromHitran"),
1949 "Read all the lines from a HITRAN 1986-2001 catalogue file in\n"
1950 "the given frequency range. Otherwise a runtime error will be\n"
1951 "thrown. For HITRAN 2004 line data use the workspace method \n"
1952 "linesReadFromHitran. \n"
1954 "Please note that all lines must correspond to the legal\n"
1955 "species / isotope combinations and that the line data \n"
1956 "file must be sorted by increasing frequency\n"
1959 " filename = Name (and path) of the catalogue file.\n"
1960 " fmin = Minimum frequency for lines to read in Hz.\n"
1961 " fmax = Maximum frequency for lines to read in Hz."),
1966 KEYWORDS(
"filename",
"fmin",
"fmax"),
1971 (
NAME(
"linesReadFromHitran2004"),
1973 "Read all the lines from a HITRAN 2004 catalogue file in the \n"
1974 "given frequency range. Otherwise a runtime error is thrown. \n"
1976 "Records of molecules unknown to ARTS are ignored but a \n"
1977 "warning is issued. In particular this happens to CH3OH \n"
1978 "(HITRAN molecule number 39) because there is no total internal \n"
1979 "partition sum available. \n"
1981 "The database must be sorted by increasing frequency!\n"
1983 "For data in the Hitran 1986-2001 format use the workspace \n"
1984 "method: linesReadFromHitran\n"
1987 " filename = Name (and path) of the catalogue file.\n"
1988 " fmin = Minimum frequency for lines to read in Hz.\n"
1989 " fmax = Maximum frequency for lines to read in Hz."),
1994 KEYWORDS(
"filename",
"fmin",
"fmax"),
1999 (
NAME(
"linesReadFromMytran2"),
2001 "Read all the lines from a MYTRAN2 catalogue file in the \n"
2002 "given frequency range. Otherwise a runtime error will be\n"
2005 "Please note that all lines must correspond\n"
2006 "to the legal species / isotope combinations\n"
2009 " filename = Name (and path) of the catalogue file.\n"
2010 " fmin = Minimum frequency for lines to read in Hz.\n"
2011 " fmax = Maximum frequency for lines to read in Hz."),
2016 KEYWORDS(
"filename",
"fmin",
"fmax"),
2021 (
NAME(
"linesReadFromJpl"),
2023 "Read all the lines from a JPL catalogue file in the \n"
2024 "given frequency range. Otherwise a runtime error will be\n"
2027 "Please note that all lines must correspond\n"
2028 "to the legal species / isotope combinations.\n"
2031 " filename = Name (and path) of the catalogue file.\n"
2032 " fmin = Minimum frequency for lines to read in Hz.\n"
2033 " fmax = Maximum frequency for lines to read in Hz."),
2038 KEYWORDS(
"filename",
"fmin",
"fmax"),
2043 (
NAME(
"linesReadFromArts"),
2045 "Read all the lines from an Arts catalogue file in the \n"
2046 "given frequency range. Otherwise a runtime error will be\n"
2049 "Please note that all lines must correspond\n"
2050 "to the legal species / isotope combinations\n"
2053 " filename = Name (and path) of the catalogue file.\n"
2054 " fmin = Minimum frequency for lines to read in Hz.\n"
2055 " fmax = Maximum frequency for lines to read in Hz."),
2060 KEYWORDS(
"filename",
"fmin",
"fmax"),
2066 (
NAME(
"linesElowToJoule"),
2068 "Just a little helper to convert the lower state energy from cm^-1\n"
2069 "(ARTSCAT-2) to Joule (ARTSCAT-3). This should be removed soon\n"),
2079 (
NAME(
"lines_per_tgCreateFromLines"),
2081 "Split lines up into the different tag groups.\n"
2083 "The tag groups are tested in the order in which they are\n"
2084 "specified in the controlfile. The lines are assigned to \n"
2085 "the tag groups in the order as the groups are specified.\n"
2086 "That means if you do [\"O3-666\",\"O3\"],the last group O3 \n"
2087 "gets assigned all the O3 lines that do not fit in the first group."),
2097 (
NAME(
"lines_per_tgAddMirrorLines"),
2099 "Adds mirror lines at negative frequencies to the *lines_per_tg*.\n"
2101 "For each line at frequency +f in *lines_per_tg* a corresponding\n"
2102 "entry at frequency -f is added to *lines_per_tg*.The mirror \n"
2103 "lines are appended to the line lists after the original lines."),
2113 (
NAME(
"lines_per_tgCompact"),
2115 "Removes all lines outside the defined lineshape cutoff frequency\n"
2116 "from the *lines_per_tg*. This can save computation time.\n"
2117 "It should be particularly useful to call this method after\n"
2118 "*lines_per_tgAddMirrorLines*."),
2128 (
NAME(
"linesWriteAscii"),
2130 "Writes the workspace variable *lines* to an ASCII file.\n"
2132 "The content of the workspace variable 'lines`\n"
2133 "The content of the workspace variable *lines*\n"
2134 "is written in ARTS line format to the file with\n"
2135 "the specified name. If the filename is omitted, the\n"
2136 "lines are written to <basename>.lines.aa.\n"
2139 " filename : Name of the output file.\n"
2150 (
NAME(
"lines_per_tgWriteAscii"),
2152 "Writes the workspace variable *lines_per_tg* to an ASCII file.\n"
2154 "The content of the workspace variable *lines_per_tg*\n"
2155 "is written in ARTS line format to the file with\n"
2156 "the specified name. If the filename is omitted, the\n"
2157 "lines are written to <basename>.lines_per_tg.aa.\n"
2159 "The array dimension is handled in a similar way as by the\n"
2160 "array of vector and matrix output functions:\n"
2161 "First an integer stating the number of tag groups.\n"
2162 "Then an integer specifying the number of lines for the\n"
2163 "first group. Then the other groups in similar fashion."
2166 " filename : Name of the output file.\n"
2177 (
NAME(
"tgsDefine"),
2179 "Set up the list of tag groups.\n"
2181 "The workspace variable *tgs* contains several tag groups. Each \n"
2182 "tag group contain one or more tags. This method converts \n"
2183 "description of tag groups given in the keyword to the internal \n"
2184 "representation *tgs*. A tag group selects spectral features which \n"
2185 "belong to the same species. \n"
2186 " A tag group can contain a mixture of general and special \n"
2187 "tags. All the continuum tags belong to the special tags and \n"
2188 "the rest come under the general tags.\n"
2189 " A general tag is defined in terms of the name of the species,\n"
2190 "isotope and a range of frequencies. Species are named after the \n"
2191 "standard chemical names,e.g., \"O3\". Isotopes are given by the \n"
2192 "last digit of the atomic weight, i.e., \"O3-668\" for the \n"
2193 "asymmetric ozone molecule including an oxygen 18 atom. Groups\n"
2194 "of transitions are specified by giving a lower and upper limit \n"
2195 "of a frequency range,\"O3-666-500e9-501e9\".Moreover the symbol\n"
2196 "'*' acts as a wild card. Furthermore, frequency range or frequency\n"
2197 "range and isotope may be omitted.\n"
2198 "Example for some tag groups containing only general tags:\n"
2199 "tags = [\"O3-666-500e9-501e9, O3-686\",\"O3\"]\n"
2200 "The first tag group consist of all O3-666 lines between 500 and\n"
2201 "501 GHz plus all O3-686 lines. The second tag group will contain\n"
2202 "all remaining O3 transitions.\n"
2205 " tags : Specify one String for each tag group that you want to create.\n"
2206 " Inside the String, separate the tags by comma (plus optional blanks).\n"
2208 " tag = [\"O3-686\",\"H2O\"]"),
2218 (
NAME(
"tgsDefineAllInScenario"),
2221 "Define one tag group for each species known to ARTS and included in an\n"
2222 "atmospheric scenario.\n"
2224 "You can use this as an alternative to tgsDefine if you want to make an\n"
2225 "absorption calculation that is as complete as possible. The method\n"
2226 "goes through all defined species and tries to open the VMR file. If\n"
2227 "this works the tag is included, otherwise it is skipped.\n"
2230 " basename : The name and path of a particular atmospheric scenario.\n"
2231 " For example: /pool/lookup2/arts-data/atmosphere/fascod/tropical"
2242 (
NAME(
"lineshapeDefine"),
2244 "Sets the lineshape for all calculated lines.\n"
2246 " A general lineshape profile is specified, according to a given \n"
2247 "approximation. Alongside a normalization factor is to be set - a \n"
2248 "multiplicative forefactor through which the profile can be \n"
2249 "modified. This factor is just the 0th or 1st, or 2nd power of the\n"
2250 "ratio between the frequency of calculation f and the center frequency\n"
2251 "for a specific line f0. A cutoff frequency must also be specified in\n"
2252 "order to restrict the calculation within a desired frequency region or\n"
2253 "not, when there's no such region.\n"
2254 " The general lineshape profile is given by the keyword shape,\n"
2255 "while the normalization factor and the cutoff frequency by\n"
2256 "normalizationfactor and cutoff respectively.\n"
2258 " The available values for these keywords are given below.\n"
2259 "shape - \"no_shape\" : no specified shape\n"
2260 " \"Doppler\" : Doppler lineshape\n"
2261 " \"Lorentz\" : Lorentz lineshape\n"
2262 " \"Voigt_Kuntz3\" : Kuntz approximation to the Voigt profile,\n"
2263 " accuracy > 2x10^(-3)\n"
2264 " \"Voigt_Kuntz4\" : Kuntz approximation to the Voigt profile,\n"
2265 " accuracy > 2x10^(-4)\n"
2266 " \"Voigt_Kuntz6\" : Kuntz approximation to the Voigt profile,\n"
2267 " accuracy > 2x10^(-6)\n"
2268 " \"Voigt_Drayson\" : Drayson approximation to the Voigt profile \n"
2269 " \"Rosenkranz_Voigt_Drayson\" : Rosenkrantz oxygen absortion with overlap correction\n"
2270 " on the basis of Drayson routine\n"
2271 " \"Rosenkranz_Voigt_Kuntz6\" : Rosenkrantz oxygen absortion with overlap correction\n"
2272 " on the basis of Kuntz routine, accuracy > 2x10^(-6)\n"
2273 " \"CO2_Lorentz\" : Lorentz multiplicated with Cousin's chi factors\n"
2274 " \"CO2_Drayson\" : Drayson multiplicated with Cousin's chi factors\n"
2276 "normalizationfactor - \"no_norm\": 1\n"
2277 " \"linear\": f/f0\n"
2278 " \"quadratic\": (f/f0)^2.\n"
2279 " \"VVH\": (f*tanh(h*f/(2*k*T))) / (f0*tanh(h*f0/(2*k*T))).\n"
2281 "cutoff - \" -1\" : no cutoff\n"
2282 " \"Number\": positive cutoff frequency in Hz.\n"
2285 "shape=[\"Lorentz\"]\n"
2286 "normalizationfactor=[\"linear\"]\n"
2290 " shape : The general profile according to an approximation.\n"
2291 " normalizationfactor : The multiplicative forefactor for the general profile.\n"
2292 " cutoff : The frequency at which a cutoff can be made.\n"),
2297 KEYWORDS(
"shape",
"normalizationfactor",
"cutoff" ),
2302 (
NAME(
"lineshape_per_tgDefine"),
2304 "Sets the lineshape per tag group for all calculated lines.\n\n"
2306 " A general lineshape profile is specified, according to a given \n"
2307 "approximation for each tag group. Alongside a normalization factor\n"
2308 "is to be set also for each tag group - a multiplicative forefactor through\n"
2309 "which the profile can be modified. This factor is just the 0th or 1st,\n"
2310 "or 2nd power of the ratio between the frequency of calculation f and\n"
2311 "the center frequency for a specific line f0. A cutoff frequency must also be\n"
2312 "specified for each of the tags in order to restrict the calculation within\n"
2313 "a desired region or not, when there's no such region.\n"
2314 " The general lineshape profile is given by the keyword shape,\n"
2315 "while the normalization factor and the cutoff frequency by\n"
2316 "normalizationfactor and cutoff respectively.\n"
2318 " The available values for these keywords are given below.\n"
2319 "shape - \"no_shape\" : no specified shape\n"
2320 " \"Doppler\" : Doppler lineshape\n"
2321 " \"Lorentz\" : Lorentz lineshape\n"
2322 " \"Voigt_Kuntz3\" : Kuntz approximation to the Voigt profile,\n"
2323 " accuracy > 2x10^(-3)\n"
2324 " \"Voigt_Kuntz4\" : Kuntz approximation to the Voigt profile,\n"
2325 " accuracy > 2x10^(-4)\n"
2326 " \"Voigt_Kuntz6\" : Kuntz approximation to the Voigt profile,\n"
2327 " accuracy > 2x10^(-6)\n"
2328 " \"Voigt_Drayson\" : Drayson approximation to the Voigt profile \n"
2329 " \"Rosenkranz_Voigt_Drayson\" : Rosenkrantz oxygen absortion with overlap correction\n"
2330 " on the basis of Drayson routine\n"
2331 " \"Rosenkranz_Voigt_Kuntz6\" : Rosenkrantz oxygen absortion with overlap correction\n"
2332 " on the basis of Kuntz routine, accuracy > 2x10^(-6)\n"
2333 "normalizationfactor - \"no_norm\": 1\n"
2334 " \"linear\": f/f0\n"
2335 " \"quadratic\": (f/f0)^2.\n"
2336 "cutoff - \" -1\" : no cutoff\n"
2337 " \"Number\": positive cutoff frequency in Hz.\n"
2340 "shape = [\"Lorentz\",\"Voigt_Kuntz6\"] \n"
2341 "normalizationfactor= [\"linear\", \"quadratic\"] \n"
2342 "cutoff = [ 650e9, -1 ]"
2345 " shape : The general profile according to an approximation.\n"
2346 " normalizationfactor : The multiplicative forefactor for the general profile.\n"
2347 " cutoff : The frequency at which a cutoff can be made.\n"),
2352 KEYWORDS(
"shape",
"normalizationfactor",
"cutoff" ),
2360 (
NAME(
"cont_descriptionInit"),
2363 "Initializes the two workspace variables for the continuum description,\n"
2364 "*cont_description_names* and *cont_description_parameters*.\n"
2366 "This method does not really do anything, except setting the two\n"
2367 "variables to empty Arrays. It is just necessary because the method\n"
2368 "*cont_descriptionAppend* wants to append to the variables.\n"
2369 " Formally, the continuum description workspace variables are required\n"
2370 "by the absorption calculation methods (e.g., *absCalc*). Therefore you\n"
2371 "always have to call at least *cont_descriptionInit*, even if you do\n"
2372 "not want to use any continua."
2385 (
NAME(
"cont_descriptionAppend"),
2388 "Appends the description of a continuum model or a complete absorption\n"
2389 "model to *cont_description_names* and *cont_description_parameters*.\n"
2391 "See online documentation for *cont_description_names* for a list of\n"
2392 "allowed models and for information what parameters they require. See\n"
2393 "file cont.arts in the doc/examples directory for usage examples and\n"
2394 "default parameters for the various models. \n"
2397 " name : The name of a continuum model. Must match one of the models\n"
2398 " implemented in ARTS. \n"
2399 " option : give here the option of this continuum/full model.\n"
2400 " parameters : A Vector containing the required number of parameters\n"
2401 " for the model given. The meaning of the parameters and\n"
2402 " how many parameters are required depends on the model.\n"
2412 KEYWORDS(
"tagname",
"model",
"userparameters" ),
2420 (
NAME(
"raw_vmrsReadFromFiles"),
2422 "Reads the individual VMR profile for each TAGS from file.\n"
2424 "Using this function one can read VMRs of specific TAGS from\n"
2425 "explicitly specified files and the remaing from a scenario.\n"
2426 "The filenames and the base name of atmospheric scenario\n"
2427 "should be specified as keywords. One file name must\n"
2428 "be specified for each tag group(each element of *tgs*).\n"
2429 "The name may include a path.\n"
2432 " seltags : Must be a sub group of tags which should be read from files.\n"
2433 " filenames : Names of the files containing VMR profiles of seltags.\n"
2434 " basename : The name of a particular atmospheric scenario.\n"
2435 " See *raw_vmrsReadFromScenario* for details. Remaining\n"
2436 " VMRs will be read from the scenario.\n"
2443 KEYWORDS(
"seltags",
"filenames",
"basename"),
2448 (
NAME(
"raw_vmrsReadFromScenario"),
2450 "Reads the individual VMR profile for each tag group from a standard\n"
2451 "atmospheric scenario.\n"
2453 "Five different atmospheric scenarios are available in arts data:\n"
2454 "tropical, midlatitude-summer, midlatitude-winter, subartic-summer\n"
2455 "and subartic-winter.\n"
2457 " Files in the scenarios look like this: tropical.H2O.aa\n"
2459 " The basename must include the path, i.e., the files can be anywhere,\n"
2460 "but they must be all in the same directory.\n"
2461 " The profile is chosen by the species name. If you have more than one\n"
2462 "tag group for the same species, the same profile will be used.\n"
2465 " basename :The name and path of a particular atmospheric scenario.\n"
2467 " /pool/lookup2/arts-data/atmosphere/fascod/tropical\n"
2479 (
NAME(
"AtmFromRaw"),
2481 "Interpolates temperature, altitude, and VMRs to the pressure grid\n"
2484 "The altitude is not used by the absorption routines,\n"
2485 "but later on by the RT routines.\n"
2487 "Interpolations used: \n"
2489 "Temperature : Linear interpolation in ln(p)\n"
2490 "Altitude : Linear interpolation in ln(p)\n"
2491 "VMRs : Linear interpolation in ln(p)\n"
2492 "Cloud Parameters : Linear interpolation in ln(p)\n"
2504 (
NAME(
"WaterVaporSaturationInClouds"),
2506 "Calculates the water vapor saturation volume mixing ratio (VMR) in the\n"
2507 "vertical range where liquid or ice clouds are in the atmosphere.\n"
2508 "At the pressure/altitude grid points where the liquid water content (LWC)\n"
2509 "or ice water content (IWC) of the clouds (tags 'liquidcloud' and 'icecloud')\n"
2510 "is larger than zero the H2O-VMR is set to liquid water/ice saturation VMR.\n"
2511 "The saturation pressure is calculated according to Goff-Gratch equations.\n"
2522 (
NAME(
"vmrsScale"),
2524 "Scales the vmr input of the tgs given in scaltgs by the\n"
2525 "factors given in scalfac.\n"
2528 " scaltgs : subgroup of tags which has to be scaled.\n"
2529 " scalfac : the factor with which vmr to be scaled.\n"
2541 (
NAME(
"h2o_absSet"),
2543 "Sets h2o_abs to the profile of the first tag group containing\n"
2546 "This is necessary, because for example *absCalc* requires h2o_abs\n"
2547 "to contain the water vapour profile(the reason for this is the\n"
2548 "calculation of oxygen line brodening requires water vapour profile).\n"
2549 "Then this function can be used to copy the profile of the first tag\n"
2562 (
NAME(
"n2_absSet"),
2564 "Sets n2_abs to the profile of the first tag group containing\n"
2565 "molecular nitrogen. See *h2o_absSet* for more details.\n"
2579 "Sets the vector of parameters for calculation of hydrostatic \n"
2580 "equilibrium (*hse*). The on/off flag is set to 1. \n"
2582 "Type \"arts -d hse\" for more information. \n"
2585 " pref : Pressure of the reference point. \n"
2586 " zref : The geometrical altitude at pref. \n"
2587 " g0 : Gravitational acceleration at the geoid surface.\n"
2588 " niter : Number of iterations (1-2 should suffice normally)."),
2593 KEYWORDS(
"pref",
"zref",
"g0",
"niter" ),
2598 (
NAME(
"hseSetFromLatitude"),
2600 "Sets the vector of parameters for calculation of hydrostatic \n"
2601 "equilibrium (*hse*). The on/off flag is set to 1. The gravitational\n"
2602 "acceleration is calculated following the international gravity formula.\n"
2604 "Type \"arts -d hse\" for more information. \n"
2607 " pref : Pressure of the reference point. \n"
2608 " zref : The geometrical altitude at pref. \n"
2609 " latitude : Geocentric latitude of observation point (-90 to 90 Degree).\n"
2610 " niter : Number of iterations (1-2 should suffice normally)."),
2615 KEYWORDS(
"pref",
"zref",
"latitude",
"niter" ),
2620 (
NAME(
"hseSetFromLatitudeIndex"),
2622 "As hseSetFromLatitude, but sets pref, zref to the values given by index \n"
2623 "from vectors p_abs, z_abs (e.g. 0 = ground).\n"
2625 "Type \"arts -d hse\" for more information. \n"
2628 " latitude : Geocentric latitude of observation point (-90 to 90 Degree).\n"
2629 " index : Reference index within p_abs, z_abs for setting pref, zref.\n"
2630 " niter : Number of iterations (1-2 should suffice normally)."),
2635 KEYWORDS(
"latitude",
"index",
"niter" ),
2640 (
NAME(
"hseFromBottom"),
2642 "As hseSet but uses the first values of p_abs and z_abs for pref\n"
2643 "and zref, respectively.\n"
2646 " g0 : Gravitational acceleration at the geoid surface.\n"
2647 " niter : Number of iterations (1-2 should suffice normally)."),
2659 "Turns off hydrostatic equilibrium. \n"
2661 "The on/off flag off *hse* is set to 0 and *hse* is set to be a \n"
2662 "vector of length 1."),
2674 "Ensures that 'z_abs' fulfills hydrostatic equilibrium. \n"
2676 "Nothing is done if the on/off flag of *hse* is set to 0. The \n"
2677 "reference point, g at the ground and number of iterations \n"
2678 "are taken from *hse*. \n"
2679 " The given altitudes (*z_abs*) are used as a first guess when \n"
2680 "starting the calculations (to estimate g etc.). The altitude \n"
2681 "variation of the gravitational acceleration is considered. The \n"
2682 "average molecular weight is assumed to be 28.96 at all altitudes.\n"
2683 "The amount of water vapour is taken into account. \n"
2684 " The calculations are repeated according to the number of \n"
2685 "iterations specified. A higher number of iterations \n"
2686 "improves the accuracy, but one iteration should be normally \n"
2687 "enough if *z_abs* already has reasonable values. Two iterations \n"
2688 "should suffice for basically all applications."),
2702 (
NAME(
"absCalc" ),
2704 "Calculate absorption coefficients. \n"
2706 "This function calculates both, the total absorption (*abs*)\n"
2707 "and the absorption per tag group (*abs_per_tg*).\n"
2721 (
NAME(
"absCalcSaveMemory" ),
2723 "Calculate absorption coefficients, trying to conserve memory. \n"
2725 "This function calculates only the total absorption (*abs*),\n"
2726 "NOT the absorption per tag group (*abs_per_tg*).\n"
2728 "This means you cannot use it if you want to calculate Jacobians\n"
2731 "The implementation follows absCalc."
2745 (
NAME(
"absCalcFromXsec"),
2747 "Calculate absorption coefficients from cross sections.\n"
2749 "This calculates both the total absorption and the\n"
2750 "absorption per tag group. \n"
2751 "This method calls three other methods:\n"
2752 "1. *xsec_per_tgInit* - initialize *xsec_per_tg* \n"
2753 "2. *xsec_per_tgAddLine* - calculate cross sections per \n"
2754 " tag group for line spectra.\n"
2755 "3. *xsec_per_tgAddConts* - calculate cross sections per \n"
2756 " tag group for continua.\n"
2757 "Then it calculates the absorption coefficient by multiplying\n"
2758 "the cross section by VMR.\n"
2759 "This is done once for each tag group (output: *abs_per_tg*)\n"
2760 "and for the sum of all tag group to get the total absorption\n"
2761 "coefficient (output: *abs*)\n"
2772 (
NAME(
"xsec_per_tgInit" ),
2774 "Initialize *xsec_per_tg*.\n"
2776 "The initialization is\n"
2777 "necessary, because methods *xsec_per_tgAddLines*\n"
2778 "and *xsec_per_tgAddConts* just add to *xsec_per_tg*.\n"
2779 "The size is determined from *tgs*.\n"
2790 (
NAME(
"xsec_per_tgAddLines"),
2792 "Calculate cross sections per tag group for line spectra.\n"
2804 (
NAME(
"xsec_per_tgAddConts"),
2806 "Calculate cross sections per tag group for continua.\n"
2822 (
NAME(
"abs_per_tgReduce"),
2824 "Reduces absorption coefficients. Only absorption\n"
2825 "coefficients for which weighting functions are\n"
2826 "calculated are kept in memory.\n"
2842 "Sets the refraction input arguments (refr, refr_model and \n"
2843 "refr_lfac) to the specified values. \n"
2845 "Type \"arts -d refr\" etc. for more information on the input \n"
2846 "arguments. See *refrCalc* for avaliable refraction models.\n"
2849 " on : On/off boolean.\n"
2850 " model : Name on parametization for the refractive index.\n"
2851 " lfac : Length factor for ray tracing." ),
2863 "Sets the refraction boolean (*refr*) to zero and gives the other \n"
2864 "refraction input arguments (*refr_lfac* and *refr_model*) dummy \n"
2865 "values (that will give error messages if used)."),
2877 "Calculates the refractive index using the parameterization\n"
2878 "specified by *refr_model*. \n"
2880 "If *refr* is set to zero, the refractive index is set to be an \n"
2883 "Existing parameterizations are: \n"
2886 " Sets the refractive index to 1 at all altitudes. \n"
2889 " Refractive index at microwave frequencies following \n"
2890 " Boudouris 1963. The k-parameter values were taken from \n"
2891 " Section 5.1.1 of the Janssen book. The Z parameters are \n"
2894 " 'BoudourisDryAir': \n"
2895 " As Boudouris but setting the water content to zero. "),
2911 (
NAME(
"zaFromZtan"),
2913 "Calculates the zenith angles corresponding to a set of tangent\n"
2916 "Refraction is considered if it is turned on (refr=1)."),
2927 (
NAME(
"zaFromDeltat" ),
2929 "Calculates the zenith angles for a LEO-LEO cross-link.\n"
2931 "The function calculates the zenith angles corresponding to a \n"
2932 "LEO-LEO cross-link for an occultation between two altitudes and \n"
2933 "the given time increment. The LEOs are supposed to be moving \n"
2934 "in opposite directions in identical orbits (but not colliding!).\n"
2935 " The time window where the LEOs are interacting is defined by \n"
2936 "a start and stop tangent altitudes.\n"
2937 " The function uses REFR to determine if refraction shall be \n"
2938 "considered or not. \n"
2940 "Generic output: \n"
2941 " Vector : Return vector for the zenith angles. The normal \n"
2942 " options are ZA_PENCIL and ZA_SENSOR. \n"
2945 " delta_t : Time increment between observations.\n"
2946 " z_tan_lim : Vector with start and stop tangent altitudes." ),
2952 KEYWORDS(
"delta_t",
"z_tan_lim" ),
2957 (
NAME(
"r_geoidStd"),
2959 "Sets the geoid radius to the standard Earth radius defined in \n"
2970 (
NAME(
"r_geoidWGS84"),
2972 "Sets the geoid radius according to WGS-84. \n"
2974 "The function is based on Section 9.4.1 in the Rodgers book. \n"
2975 "The observation direction is given as the angle to the meridian \n" "plane (that is, S=N=0, W=E=90).\n"
2978 " latitude : Latitude at the measurement.\n"
2979 " obsdirection : Observation direction (see above)."),
2984 KEYWORDS(
"latitude",
"obsdirection" ),
2989 (
NAME(
"groundOff"),
2991 "Sets dummy values to the ground variables. \n"
2993 "The ground altitude is set to the first element of 'z_abs'.\n"
2994 "The ground temperature (t_ground) is set to 0. \n"
2995 "The ground emission vector (e_ground) is set to be empty.\n"
2996 " If there is a ground intersection and only this function is\n"
2997 "used to set the ground variables, there will be error messages."),
3007 (
NAME(
"groundSet"),
3009 "Sets the ground altitude and emission to the specified values,\n"
3010 "and selects a ground temperature.\n"
3012 "The emission is set to be identical for all frequencies. \n"
3013 "The ground temperature is obtained by interpolating *t_abs*.\n"
3016 " z : Altitude above the geoid of the ground.\n"
3017 " e : Ground emission factor."),
3027 (
NAME(
"groundAtBottom"),
3029 "Sets the ground emission to the specified value, and sets ground \n"
3030 "altitude and temperature to the first values of z_abs and t_abs.\n"
3032 "The emission is set to be identical for all frequencies. \n"
3035 " e : Ground emission factor."),
3045 (
NAME(
"groundFlatSea"),
3047 "Models the emission from a flat sea. \n"
3049 "The method sets the ground variables to match the properties of \n"
3050 "the sea, without wind effects. The emissivity is calculated from\n"
3051 "the dielectric constant by the Fresnel equations.\n"
3053 "The altitude is set to 0 m. The skin temperature is set by the\n"
3054 "keyword argument *t_skin*. If this argument is set to be <= 0,\n"
3055 "the temperature is obtained by interpolating *t_abs*. \n"
3057 "The incident angle (of reflection) is calculated for max of \n"
3058 "*za_pencil*. Refraction is considered or not, depending on value \n"
3059 "of *refr*. This means that *refrCalc* must be called before this \n"
3060 "method if refraction is considered. The emissivity depends on the\n"
3061 "selected polarisation. The refractive index of air is set to 1.\n"
3063 "The relative dielectric constant is calculated following\n"
3064 "Liebe et al. 1991 Int. J. IR+mm Waves 12(12), 659-675. \n"
3065 "The method does not consider salinity and is restricted to the\n"
3066 "range 5 - 1000 GHz (below 5 GHz salinity must be considered).\n"
3069 " pol : Polarisation. Calid options are \"v\" or \"h\".\n"
3070 " t_skin : Skin temperature. "),
3081 (
NAME(
"emissionOn"),
3083 "Turns on emission by setting the emission flag to 1. \n"),
3093 (
NAME(
"emissionOff"),
3095 "Turns off emission by setting the emission flag to 0."),
3107 "Calculates the line-of-sight (LOS).\n"
3109 "See AUG for details about the calculations."),
3120 (
NAME(
"sourceCalc"),
3122 "Calculates source function values valid between the points "
3125 "No scattering and local thermodynamic equilibrium are assumed,\n"
3126 "that is, the source function equals the Planck function.\n"
3127 "The source function is set to the mean of the Planck function at\n"
3128 "the two LOS points limiting the steps. The temperature at the LOS\n"
3129 "points is obtained by linear interpolation.\n"
3130 " If emission is neglected (emission=0), the WSV source is set \n"
3141 (
NAME(
"transCalc"),
3143 "Calculates the transmission between the points of the LOS.\n"
3145 "The absorption is assumed to vary linear between the LOS points."
3146 "The absorption at the LOS points is obtained by linear\n"
3147 "interpolation of *abs*."),
3157 (
NAME(
"y_spaceStd"),
3159 "Standard choices for the radiation entering the atmosphere at\n"
3160 "the top of the atmosphere. \n"
3162 "The selections are:\n"
3163 " zero : no radiation\n"
3164 " cbgr : cosmic background radiation (planck for COSMIC_BG_TEMP)\n"
3165 " sun : solar radiation (planck for SUN_TEMP)\n"
3167 "COSMIC_BG_TEMP and SUN_TEMP are global variables, defined in\n"
3171 " choice : Selection String (see above)."),
3183 "Performs the integration of the radiative transfer equation\n"
3184 "along the LOS, with or without emission.\n"
3186 "If emission is considered (emission=1) the outout unit is \n"
3187 "intensity, while without emission (emission=0) optical \n"
3188 "thicknesses are returned. "),
3199 (
NAME(
"sourcetransyCalcSaveMemory"),
3201 "Combines:\nsourceCalc\ntransCalc\nyCalc\n\n"
3202 "Calculation is performed in frequency chunks thus allowing\n"
3203 "larger jobs to run. This means you cannot use it if you want \n"
3204 "to calculate Jacobians later on. "),
3215 (
NAME(
"CoolingRates"),
3217 "Calculates cooling rates due to exchange of longwave radiation.\n"
3219 "This function applies a straightforward algorith to obtain cooling \n"
3220 "rates. The algorithm is described in AUG. The basic idea is to \n"
3221 "calculate incoming radiation from all directions (by using yCalc), \n"
3222 "instead of follow the vertical flux through the atmosphere as usually \n"
3223 "done. No assumptions on a flat Earth is made.\n"
3225 "The atmosphere is described in usual way and absorption shall be pre- \n"
3226 "calculated. Emission is always activated (of course) and *y_space* is \n"
3227 "set to cosmic background radiation by calling *y_spaceStd*. Refraction\n"
3228 "follows corresponding WSV. \n"
3230 "The zenith angle grid is set by *Za_pencil*, where the vector must \n"
3231 "start with 0 and end with 180. \n"
3233 "The WSV *l_step* is here treated to give the radiative step length for\n"
3234 "the zenith and nadir directions. The step length is scaled by \n"
3235 "abs( 1/cos(za) ), where za is the zenith angle, for other directions. \n"
3236 "The keyword argument *lstep_limit* sets an upper limit for *l_step*. \n"
3237 "For example, for za=90, the expression above gives infinity for \n"
3240 "The function returns the spectral cooling rate (by *coolrate*).\n"
3243 " lstep_limit : Upper limit on l_step for off-zenith/nadir angles."),
3257 "Converts a radiance spectrum to Planck brightness temperatures.\n"
3259 "The conversion is done by the Planck expression.\n"
3260 " The frequency of each value of *y* is determined by *f_mono* \n"
3273 "Converts a radiance matrix to Planck brightness temperatures.\n"
3275 "Applies the function yTB on each column of the matrix. \n"
3278 " Matrix : Any matrix, but typically *ybatch* or a WF matrix.\n"
3280 "Generic output: \n"
3281 " Matrix : Any matrix, but typically the same as the input \n"
3294 "Converts a radiance spectrum to Rayleigh-Jean temperatures.\n"
3296 "The conversion is done by the Rayleigh-Jean approximation of the\n"
3297 "Planck expression.\n"
3298 " The frequency of each value of *y* is determined by *f_mono* \n"
3309 (
NAME(
"MatrixTRJ"),
3311 "Converts a radiance matrix to Rayleigh-Jean temperatures.\n"
3313 "Applies the function yTRJ on each column of the matrix. \n"
3316 " Matrix : Any matrix, but typically *ybatch* or a WF matrix.\n"
3318 "Generic output: \n"
3319 " Matrix : Any matrix, but typically the same as the input \n"
3336 (
NAME(
"wfs_tgsDefine"),
3338 "Set up the list of tag groups for which weighting functions will \n"
3341 "The *wfs_tgs* are specified exactly as *tgs* (see tgsDefine). \n"
3342 "The selected tag groups must be a subgroup of the absorption \n"
3344 " See the functions abs_per_tgReduce and kSpecies for some more \n"
3345 "information around *wfs_tgs*. \n"
3348 " wfs_tgs : String with tag groups."),
3358 (
NAME(
"wfss_tgsDefine"),
3360 "Set up the list of tag groups for which weighting functions will \n"
3363 "The *wfs_tgs* are specified exactly as *tgs* (see tgsDefine). \n"
3364 "The selected tag groups must be a subgroup of the absorption \n"
3366 " See the functions abs_per_tgReduce and kSpecies for some more \n"
3367 "information around *wfs_tgs*. \n"
3370 " wfss_tgs : String with tag groups."),
3380 (
NAME(
"absloswfsCalc"),
3382 "Calculates absorption line of sight weighting functions (LOS WFs)\n"
3384 "These WFs are the derivative of the spectra with respect to the \n"
3385 "absorption at the LOS points. See AUG for more detailed \n"
3386 "definition and details about the calculations."),
3399 "Calculates species weighting functions (WFs) for all *wfs_tgs*.\n"
3401 "This function is the simplest option if a single retrieval grid \n"
3402 "and a single retrieval unit are used for all species. If this is \n"
3403 "not the case, the function kSpeciesSingle must be used.\n"
3404 " The WFs are calculated by (semi-)analytical expressions, where\n"
3405 "it is assumed that there is a linear relationship between the \n"
3406 "amount of the species and the absorption, and that the LOS is not\n"
3407 "affected by changes of the species. These assumtions should be\n"
3408 "valid generally for observations above the tropopause (as long \n"
3409 "LTE applies), but is not true for tropospheric water vapor. \n"
3410 "See AUG for details about the calculations. \n"
3411 " The WFs for the different tag groups in *wfs_tgs* are appended\n"
3412 "to form a single matrix. The absorption array (*abs_per_tg*) must\n"
3413 "have been reduced to match *wfs_tags* (by using the function \n"
3414 "abs_per_tgReduce). The unit of the returned WFs are described \n"
3417 "The avaliable units are\n"
3418 " frac : fractions of linearisation profile \n"
3419 " vmr : volume mixing ratio \n"
3420 " nd : number density\n"
3423 " unit : Retrieval unit string (see above)."),
3434 (
NAME(
"kSpeciesSingle"),
3436 "Calculates species weighting functions (WFs) for a single tag \n"
3439 "The tag group is selected by the giving the full name. This \n"
3440 "string must match exactly the string in *wfs_tgs* (and then the \n"
3441 "string in *tgs*). Otherwise as the function kSpecies (this \n"
3442 "including units). \n"
3445 " tg : Tag group string.\n"
3446 " unit : Retrieval unit string (see kSpecies)."),
3459 "Calculates weighting functions (WFs) for polynomial fit of \n"
3460 "continuum absorption. \n"
3462 "The continuum is fitted by determining an off-set at a number of \n"
3463 "points (order+1) that are evenly spread between the lowest and \n"
3464 "upper frequency limit. See AUG for more details.\n"
3465 " If the limits are set to be negative, *f_low* is set to the \n"
3466 "first value of *f_mono*, and *f_high* to the last value of \n"
3467 "*f_mono*. The frequency limits cannot be outside the range of \n"
3469 " The WFs can be calculated for different length units, selected\n"
3470 "by the keyword *l_unit*. For example, if *l_unit* is set to \n"
3471 "\"km\", the WFs corresponds to an absorpion with unit [1/km]. \n"
3472 " The WFs for each frequency point are kept together, and the \n"
3473 "WF matrix for the different frequency points are appended. \n"
3476 " order : Polynomial order (>=0). \n"
3477 " f_low : Frequency of first fit point. \n"
3478 " f_high : Frequency of last fit point. \n"
3479 " l_unit : Length unit. Avaliable units are \"m\" and \"km\"." ),
3484 KEYWORDS(
"order",
"f_low",
"f_high",
"l_unit" ),
3491 "Calculates temperature weighting functions (WFs).\n"
3493 "The calculations can be performed both with and without \n"
3494 "hydrostatic equilibrium (HSE). \n"
3495 " If HSE is not considered (hse=0), the WFs are obtained by \n"
3496 "semi-analytical expressions and the calculations are relatively \n"
3497 "fast. See AUG for details. \n"
3498 " If HSE is considered (hse=1), perturbation calculations are \n"
3499 "done. If the keyword *fast* is set to 0, the absorption is re-\n"
3500 "calculated for each temperature disturbance and the calculations\n"
3501 "are slow. With fast=1, it is assumed that the absorption is \n"
3502 "linear with temparature between the present state and 1K higher \n"
3503 "temperature, and the new absorption is calculated once, that \n"
3504 "decreases the total calculation time considerbly. The accuracy of\n"
3505 "the latter option should suffice normally. \n"
3506 " Note that the keyword *hse* here is not the workspace variable\n"
3507 "*hse*. If the keyword *hse* is set to 1, a constraint is that \n"
3508 "HSE is considered generally, that is, that the do-field of the \n"
3509 "variable 'hse* is turned on. The data to calculate assure HSE is\n"
3510 "of course taken from the workspace variable *hse*. \n"
3511 " The fast keyword has no importance if the keyword hse is set \n"
3515 " hse : Flag for hydrostatic eq. 0=no HSE, 1=HSE. \n"
3516 " fast : Flag to perform fast calculations with hse=1. " ),
3533 "Calculates the spectroscopic parameters weighting functions (WFs).\n"
3535 "The calculation can be performed for the intensity, line position, pressure \n"
3536 "broadening parameters and pressure shift.\n"
3537 "For each parameter a do flag has to be specified.\n"
3540 "do_intens: Flag for calculating the weighting function for"
3541 "the intensity do_intens=1. \n"
3542 "do_position: flag for line possition. \n"
3543 "do_agam: flag for agam. \n"
3544 "do_sgam: flag for sgam. \n"
3545 "do_nair: flag for temperature dependence of agam. \n"
3546 "do_nself: flag for temperature dependence of sgam. \n"
3547 "do_pSift: flag for pressure shift .\n" ),
3554 KEYWORDS(
"do_intens",
"do_position",
"do_agam",
3555 "do_sgam",
"do_nair",
"do_nself",
"do_pSift"),
3560 (
NAME(
"kFrequencyOffSet"),
3562 "Calculates the weighting function (WF) for a frequency off-set.\n"
3564 "The Wf is simply the difference between *y* and the spectrum \n"
3565 "obtained when adding *delta* to *f_mono*, diveded by *delta*.\n"
3566 "That is, a pure perturbation calculation is performed. \n"
3568 " The WF can be calculated for different frequency units,\n"
3569 "selected by the keyword *f_unit*.\n"
3572 " delta : Size of frequency perturbation (in units of *l_unit*).\n"
3573 " l_unit : Frequency unit. Avaliable units are \"Hz\", \"kHz\"\n"
3587 (
NAME(
"kPointingOffSet"),
3589 "Calculates the WF for a pointing off-set.\n"
3591 "The Wf is simply the difference between *y* and the spectrum \n"
3592 "obtained when adding *delta* to *za_pencil*, diveded by *delta*.\n"
3593 "That is, a pure perturbation calculation is performed. \n"
3596 " delta : Size of zenith angle perturbation."),
3608 (
NAME(
"kEground" ),
3610 "Calculates the WF(s) for ground emission coefficent(s).\n"
3612 "The ground emission WF(s) are calculated by semi-analytical\n"
3613 "expressions (see AUG). With single_e=0, a WF is returned for \n"
3614 "the emission coefficient of each monochromatic frequency. \n"
3615 "On the other hand, when single_e=1, the ground emission is \n"
3616 "treated as a single varaible (that is, no frequency dependency) \n"
3617 "and there is only a single WF to be calculated. The latter \n"
3618 "option requieres that all elements of E_GROUND are set to the \n"
3622 " single_e : Boolean to treat the ground emission as a single\n"
3623 " variable. See further above." ),
3634 (
NAME(
"kCalibration"),
3636 "Calculates the WF for a proportional calibration error. \n"
3638 "The WF is simply : k = y - y0 where y0 is the specified \n"
3639 "vector. The y0-vector shhould typically be the radiance (or TB) \n"
3640 "of the load used for load switching. For example: \n"
3641 " VectorPlanck(y0,f_mono){temp=2.7} \n"
3642 " kCalibration(y0){} \n"
3645 " Vector : A vector with spectrum for calibration reference \n"
3646 " point. This vector should typically be *y0*. "),
3658 "Calculates a weighting function using y and y0.\n"
3660 "The weighting function is calculated as: k = (y-y0)/delta\n"
3661 "That is, delta is the magnitude of the perturbation done.\n"
3664 " name : Name on retrieval/error identity.\n"
3665 " delta : Magnitude of perturbation.\n"
3666 " grid : Grid point value.\n"
3667 " apriori : A priori value."),
3672 KEYWORDS(
"name",
"delta",
"grid",
"apriori" ),
3679 "Initializes Kx weighting function matrix and help variables\n"
3680 "(kx_names, kx_lengths and kx_aux).\n"
3682 "Use this function before the WF calculations are started and\n"
3683 "together with kxAppend."),
3695 "Initializes Kb weighting function matrix and help variables\n"
3696 "(kb_names, kb_lengths and kb_aux).\n"
3698 "Use this function before the WF calculations are started and\n"
3699 "together with kbAppend."),
3711 "Appends the K matrix to Kx and handles additional data\n"
3712 "correspondingly. \n"
3714 "All the data are reallocated to make space for the new data.\n"
3715 "This function is accordingly slow for large data sizes,\n"
3716 "and it can be better to use kxAllocate and kxPutInK."),
3728 "Appends the K matrix to Kb and handles additional data\n"
3729 "correspondingly. \n"
3731 "All the data are reallocated to make space for the new data.\n"
3732 "This function is accordingly slow for large data sizes,\n"
3733 "and it can be better to use kbAllocate and kbPutInK."),
3743 (
NAME(
"kxAllocate"),
3745 "Allocates memory for kx and help variables (kx_names, kx_lengths \n"
3748 "The total number of frequencies is taken from the length \n"
3749 "of the given vector (typically y).\n"
3750 " Use this function before the WF calculations are started and\n"
3751 "together with kxPutInK.\n"
3754 " Vector : A vector with same length as the appended spectra.\n"
3755 " The typical choice is *y*.\n"
3758 " ni : Number of retrieval identities (species profiles,\n"
3759 " pointing off-set etc.).\n"
3760 " nx : Final length of x."),
3770 (
NAME(
"kbAllocate"),
3772 "Allocates memory for kx and help variables (kb_names, kb_lengths \n"
3775 "The total number of frequencies is taken from the length \n"
3776 "of the given vector (typically y).\n"
3777 " Use this function before the WF calculations are started and\n"
3778 "together with kbPutInK.\n"
3781 " Vector : A vector with same length as the appended spectra.\n"
3782 " The typical choice is *y*.\n"
3785 " ni : Number of retrieval identities (species profiles,\n"
3786 " pointing off-set etc.).\n"
3787 " nb : Final length of b."),
3799 "Puts K in Kx and handles additional data correspondingly.\n"
3801 "K is placed in the first free columns of Kx.\n"
3802 " No reallocation is performed (in contrast to kxAppend) and an\n"
3803 "error message is given if k does not fit into kx. The kx-data are\n"
3804 "allocated by the function kxAllocate."),
3816 "Puts K in Kb and handles additional data correspondingly.\n"
3818 "K is placed in the first free columns of Kb.\n"
3819 " No reallocation is performed (in contrast to kbAppend) and an\n"
3820 "error message is given if k does not fit into kb. The kb-data are\n"
3821 "allocated by the function kbAllocate."),
3837 (
NAME(
"ybatchCalc"),
3839 "Calculates a batch of spectra from a set of profiles and\n"
3840 "frequency and viewing angle grids.\n"
3841 "The following workspace methods are used:\n"
3847 "and all the workspace variables needed by these functions must be\n"
3848 "set before starting this method.\n"
3849 "The refractive index is kept constant for all spectra.\n"
3850 "The values of the workspace variables are used as defaults when\n"
3851 "appropiate. For example, if temperature profiles are not read\n"
3852 "from a file (do_t=0), then the values of t_abs are used for all\n"
3854 "All input files shall be readable by MatrixReadBinary.\n"
3855 "The profiles and grids are stored as columns in the file matrix.\n"
3856 "When a filename is empty (""), filenames are created as:\n"
3857 " batchname.XXX.ab \n"
3859 " t_abs : For temperature profiles.\n"
3860 " z_abs : For vertical altitude grids.\n"
3861 " f_mono : For frequency grids.\n"
3862 " za_pencil : For zenith angle grids.\n"
3863 "For species XXX is the molecule name, e.g. H2O and O3.\n"
3864 "If a filename is given, batchname is ignored.\n"
3865 "When a flag is 0, the corresponding filename is of no importance.\n"
3866 "The length of profiles (t, z and species) must match p_abs (no\n"
3867 "interpolation is performed).\n"
3870 " ncalc : The number of spectra to calculate. The files can\n"
3871 " contain data for more spectra (but not less).\n"
3872 " do_t : Temperature flag (0/1).\n"
3873 " t_file : Filename for temperature data.\n"
3874 " do_z : Vertical altitude flag (0/1).\n"
3875 " z_file : Filename for vertical grid data.\n"
3876 " do_f : Frequency flag (0/1).\n"
3877 " f_file : Filename for frequency data.\n"
3878 " do_za : Zenith angle flag (0/1).\n"
3879 " za_file : Filename for zenith angle data.\n"
3880 " do_tags : This String array gives the tags for which profiles\n"
3881 " shall be read from a file, e.g. [\"H2O\",\"O3\"].\n"
3882 " These tags must match some tag in tags.\n"
3883 " tag_files : Filenames for species data."),
3898 KEYWORDS(
"ncalc",
"do_t",
"t_file",
"do_z",
"z_file",
3899 "do_tags",
"tag_files",
3900 "do_f",
"f_file",
"do_za",
"za_file"),
3908 (
NAME(
"ybatchFromRadiosonde"),
3910 (
"Calculate spectra for a batch of radiosonde data."
3912 " We set the oxygen and nitrogen VMR to constant values of 0.209 and\n"
3913 "0.782, respectively. Some other methods are called implicitly by this\n"
3914 "method. Specifically:\n"
3924 " finegrid : Flag for a fine *p_abs* grid, 0 = Radiosonde levels, 1 = finer grid. \n"
3926 "If the keyword finegrid is set to 0 (finegrid = 0),\n"
3927 "absorption coeff. are calculated on the same grid as in the radiosonde launch.\n"
3928 "It does not check whether the launch has reached up to a certain height. \n"
3930 "If finegrid = 1, the absorption is calculated on a very fine grid (about 15 m)\n"
3931 "which is finer than the high resolution radiosonde levels (about 60 m). In this\n"
3932 "case *p_abs* grid is only up to 100 hPa so that we assume there is no atmosphere\n"
3933 "above this pressure level. The RT calculation is not done for any profile which\n"
3934 "do not fly up to 100 hPa. In this case we put -1 as the Tbs for all the frequencies.\n"
3935 "Planck brightness temperature is calculated for all the launches those reach 100 hPa.\n"
3936 "Note that *l_step* which is given by the user in the control file should be less than\n"
3937 "15 m, may be 5 m.\n"
3939 " interp_rh : Flag for interpolation of H2O profile in RH\n"
3940 " 0 = Normal ARTS interpolation in VMRs\n"
3941 " 1 = Interpolation in RH.\n"
3943 " za_per_profile : Flag for giving separate za_pencils for each profile\n"
3945 " 0 = As before, za_pencil(s) will be same for all profiles\n"
3946 " 1 = separate za_pencil for each profile\n"
3947 "If this keyword is set to 1, please make sure that the number of elements\n"
3948 "in the za_pencil and the number of radiosonde profiles are the same. The\n"
3949 "function now assumes that first element of the za_pencil is for the first\n"
3950 "radiosonde profile and the second element of the za_pencil is for the second\n"
3951 "radiosonde profile and so on.\n"
3953 " e_ground_per_profile : Flag for giving separate e_ground for each profile\n"
3955 "This assumes that same emissivity is used for all the given frequencies.\n"
3957 "calc_abs: Flag for storing the absorption coefficients.\n"
3959 "calc_jac: Flag for calculating Jacobian(only for H2O).\n"),
3975 KEYWORDS(
"finegrid",
"interp_rh",
"za_per_profile",
"e_ground_per_profile",
"calc_abs",
"calc_jac"),
3980 (
NAME(
"ybatchFromRadiosondeGlobal"),
3982 (
"Calculate spectra for a batch of Global radiosonde data."
3984 "This method is almost similar to #ybatchFromRadiosonde#. Since the pressure \n"
3985 "grid in the global radiosonde data is coarse it is to be interpolated in a \n"
3988 " We set the oxygen and nitrogen VMR to constant values of 0.209 and\n"
3989 "0.782, respectively. Some other methods are called implicitly by this\n"
3990 "method. Specifically:\n"
4021 (
NAME(
"MethodListDefine"),
4023 (
"Set up a method list.\n"
4025 "A method list just contains indices (in md_data) of methods\n"
4026 "intended for sequential execution. Only methods without keyword\n"
4027 "arguments are allowed. It is the task of this method to\n"
4028 "set this up. For example, it must be checked, whether the given\n"
4029 "names really correspond to methods.\n"
4032 " ArrayOfIndex : The newly generated method list.\n"
4035 " methods : An array of names of methods." ),
@ cont_description_parameters_
Defines the enum type that acts as a handle for workspace variables groups.
@ cont_description_models_
This can be used to make arrays out of anything.
void define_md_data()
Define the lookup data for the workspace methods.
Array< MdRecord > md_data
The lookup information for the workspace methods.
This class contains all information for one workspace method.
@ cont_description_names_
Declaration of the class MdRecord.
Declares the enum type that acts as a handle for workspace variables. Also declares the workspace its...
The global header file for ARTS.