2013-05-16  Patrick Eriksson  <patrick.eriksson@chalmers.se>

            * arts-2-1-640

            * src/rte.cc (ext2transNEW): New version of the function below,
            with the aim of introdocing special expressions, as well as more
            asserts. Not yet used.

            (ext2trans): Discovered that the function is not used as planned.
            matrix_exp called instead. Work to do ...



git-svn-id: https://www.sat.ltu.se/svn/rt/arts/trunk@8423 aaf1aab0-4228-0410-ad68-8dceda47f409
2013-05-17  Patrick Eriksson  <patrick.eriksson@chalmers.se>

            * arts-2-1-640

            * Started to clean up conversion of extinction to transmission.
            Beside for MC, this is now only done by ext2trans. One step
            forward is that ext2trans checks all expected symmetries of
            ext_mat.

            Also tried to make it faster by using special expressions for
            "p30". In matlab the special expressions are one order of
            magnitude faster than Pade, but the overall improvement in ARTS is
            only marginal. Hence, ARTS' Pade-approximation is very fast, or
            the matrix exponential is not a calculation bootleneck.

            * src/lin_alg.cc (matrix_exp): Only Pade-approximation is now
            done. Special treatment of diagonal matrices removed, now checked
            before calling the function.

            * src/montecarlo.cc (matrix_exp_p30): Several terms calculated
            twice, now instead copied.

            * src/mc_interp.cc (interpTArray): Moved to mc_NotUsed.cc.

            * src/m_fos.cc (fos): Now using ext_mat, instead of matrix_exp.
            And also using the flag introduced below.

            * src/doit.cc (rte_step_doit): Now takes a flag telling if
            trans_mat is already calculated. Now using ext_mat, instead of
            matrix_exp.

            * src/rte.cc: Removed declaration of unused constants.

            (get_ppath_trans, get_ppath_trans2): Now using ext_mat, instead of
            matrix_exp.

            (ext2trans): Rewritten and extended. Expected symmetry of ext_mat
            now fully checked. Matrix exponential calculated in three
            different ways depending on structure of ext_mat. The three cases
            are diagonal, "p30" and general. For p30 special expressions are
            used, following matrix_exp_p30 and double-checked with a text book.



git-svn-id: https://www.sat.ltu.se/svn/rt/arts/trunk@8424 aaf1aab0-4228-0410-ad68-8dceda47f409
2013-05-17  Patrick Eriksson  <patrick.eriksson@chalmers.se>

            * arts-2-1-641

            * Work on MC, to finish changes to just use ext2trans.

            Used a calculation with 200e3 photons to check that result not
            changed. (ext2trans and matrix_exp_p30 also compared directly).
            The change made MC 1-2% slower, but MC can now handle any ext_mat
            (at least for this step, before p30 or simpler was assumed) and
            now ext_mat is asserted carefully.

            *
              controlfiles/artscomponents/montecarlo/TestMonteCarloGeneral.arts:
              Uptaed references values to 198.7 and 7.9 K, assuming that this
              file should give same result as the one below.

              * controlfiles/artscomponents/montecarlo/TestRteCalcMC.arts:
              Updated reference value to 198.7, which was the combined result
              of
              two 200k photon runs, see above.

              * src/m_general.cc (Test): Commenetd out present test code (as
              using matrix_exp_p30.

              * src/montecarlo.cc (matrix_exp_p30): Moved to mc_NotUsed.cc.

              * src/montecarlo.cc (mcPathTraceGeneral): Switched to use
              ext2trans, that required some internal changes (opp_depth_mat ->
              ext_mat).

              * src/rte.cc (ext2trans): Synced header with content. Removed old
              version of the function.



git-svn-id: https://www.sat.ltu.se/svn/rt/arts/trunk@8425 aaf1aab0-4228-0410-ad68-8dceda47f409
* arts-2-1-642

* src/m_basic_types.h: Add missing Array types for nelemGet.

git-svn-id: https://www.sat.ltu.se/svn/rt/arts/trunk@8426 aaf1aab0-4228-0410-ad68-8dceda47f409