390 lines
18 KiB
Bash
390 lines
18 KiB
Bash
#!/bin/bash
|
|
set -e
|
|
PROJECT_ROOT="c:/Users/fmq/Documents/astro/SpectraRust"
|
|
m_dir="$PROJECT_ROOT/src/tlusty/math"
|
|
dst_dir="$PROJECT_ROOT/src/tlusty"
|
|
|
|
dust"
|
|
new_dir="$m_dir/physics"
|
|
new_dir="$m_dir/equilibrium"
|
|
new_dir="$m_dir/linearization"
|
|
new_dir="$m_dir/acceleration"
|
|
new_dir="$m_dir/atmosphere"
|
|
new_dir="$m_dir/spectral"
|
|
new_dir="$m_dir/model_init"
|
|
new_dir="$m_dir/io"
|
|
new_dir="$m_dir/utils"
|
|
mkdir -p "$m_dir/math/special"
|
|
mkdir -p "$m_dir/math/solvers"
|
|
mkdir -p "$m_dir/math/interpolate"
|
|
mkdir -p "$m_dir/physics/opacity"
|
|
mkdir -p "$m_dir/physics/collision"
|
|
mkdir -p "$m_dir/physics/line_profile"
|
|
mkdir -p "$m_dir/physics/radiative"
|
|
mkdir -p "$m_dir/physics/thermodynamics"
|
|
mkdir -p "$m_dir/physics/hydrogen"
|
|
mkdir -p "$m_dir/equilibrium/statistical"
|
|
mkdir -p "$m_dir/equilibrium/partition"
|
|
mkdir -p "$m_dir/linearization/matrix"
|
|
mkdir -p "$m_dir/linearization/solver"
|
|
mkdir -p "$m_dir/linearization/rybicki"
|
|
mkdir -p "$m_dir/acceleration/ali"
|
|
mkdir -p "$m_dir/acceleration/convergence"
|
|
mkdir -p "$m_dir/atmosphere/convection"
|
|
mkdir -p "$m_dir/atmosphere/temperature"
|
|
mkdir -p "$m_dir/atmosphere/depth"
|
|
mkdir -p "$m_dir/atmosphere/hydrostatic"
|
|
mkdir -p "$m_dir/atmosphere/grey"
|
|
mkdir - p "$m_dir/atmosphere/odf"
|
|
mkdir -p "$m_dir/spectral"
|
|
mkdir -p "$m_dir/model_init"
|
|
mkdir -p "$m_dir/io"
|
|
mkdir -p "$m_dir/utils"
|
|
|
|
echo "Created directories"
|
|
|
|
# ============================================================
|
|
# Function to move a module
|
|
# ============================================================
|
|
move_module() {
|
|
local src="$1"
|
|
local dst="$2"
|
|
if [ -f "$src" ]; then
|
|
mkdir -p "$dst"
|
|
mv "$src" "$dst"
|
|
echo "Moved: $src -> $dst"
|
|
else
|
|
echo "Skip: $src (not found)"
|
|
fi
|
|
}
|
|
|
|
# ============================================================
|
|
# math/special
|
|
# ============================================================
|
|
move_module "expo.rs" "$m_dir/math/special"
|
|
move_module "expint.rs" "$m_dir/math/special"
|
|
move_module "expinx.rs" "$m_dir/math/special"
|
|
move_module "erfcx.rs" "$m_dir/math/special"
|
|
move_module "gauleg.rs" "$m_dir/math/special"
|
|
# ============================================================
|
|
# math/solvers
|
|
# ============================================================
|
|
move_module "tridag.rs" "$m_dir/math/solvers"
|
|
move_module "lineqs.rs" "$m_dir/math/solvers"
|
|
move_module "minv3.rs" "$m_dir/math/solvers"
|
|
move_module "matinv.rs" "$m_dir/math/solvers"
|
|
move_module "cubic.rs" "$m_dir/math/solvers"
|
|
move_module "quartc.rs" "$m_dir/math/solvers" move_module "solve.rs" "$m_dir/math/solvers" move_module "solves.rs" "$m_dir/math/solvers" move_module "laguer.rs" "$m_dir/math/solvers"
|
|
move_module "ubeta.rs" "$m_dir/math/solvers" move_module "psolve.rs" "$m_dir/math/solvers" move_module "levsol.rs" "$m_dir/math/solvers"
|
|
# ============================================================
|
|
# math/interpolate
|
|
# ============================================================
|
|
move_module "lagran.rs" "$m_dir/math/interpolate"
|
|
move_module "yint.rs" "$m_dir/math/interpolate"
|
|
move_module "ylintp.rs" "$m_dir/math/interpolate"
|
|
move_module "interpolate.rs" "$m_dir/math/interpolate"
|
|
move_module "tabint.rs" "$m_dir/math/interpolate"
|
|
move_module "locate.rs" "$m_dir/math/interpolate"
|
|
move_module "indexx.rs" "$m_dir/math/interpolate"
|
|
# ============================================================
|
|
# physics/opacity
|
|
# ============================================================
|
|
move_module "opacf0.rs" "$m_dir/physics/opacity"
|
|
move_module "opacf1.rs" "$m_dir/physics/opacity"
|
|
move_module "opacfa.rs" "$m_dir/physics/opacity"
|
|
move_module "opacfd.rs" "$m_dir/physics/opacity"
|
|
move_module "opacfl.rs" "$m_dir/physics/opacity"
|
|
move_module "opadd.rs" "$m_dir/physics/opacity"
|
|
move_module "opadd0.rs" "$m_dir/physics/opacity"
|
|
move_module "opahst.rs" "$m_dir/physics/opacity"
|
|
move_module "opaini.rs" "$m_dir/physics/opacity"
|
|
move_module "opctab.rs" "$m_dir/physics/opacity"
|
|
move_module "opdata.rs" "$m_dir/physics/opacity"
|
|
move_module "opfrac.rs" "$m_dir/physics/opacity"
|
|
move_module "traini.rs" "$m_dir/physics/opacity"
|
|
move_module "opact1.rs" "$m_dir/physics/opacity"
|
|
move_module "opactd.rs" "$m_dir/physics/opacity"
|
|
move_module "opactr.rs" "$m_dir/physics/opacity"
|
|
move_module "meanop.rs" "$m_dir/physics/opacity"
|
|
move_module "meanopt.rs" "$m_dir/physics/opacity"
|
|
# ============================================================
|
|
# physics/collision
|
|
# ============================================================
|
|
move_module "colh.rs" "$m_dir/physics/collision"
|
|
move_module "colhe.rs" "$m_dir/physics/collision"
|
|
move_module "colis.rs" "$m_dir/physics/collision"
|
|
move_module "collhe.rs" "$m_dir/physics/collision"
|
|
move_module "butler.rs" "$m_dir/physics/collision"
|
|
move_module "ceh12.rs" "$m_dir/physics/collision"
|
|
move_module "cheav.rs" "$m_dir/physics/collision"
|
|
move_module "cheavj.rs" "$m_dir/physics/collision"
|
|
move_module "cspec.rs" "$m_dir/physics/collision"
|
|
move_module "cion.rs" "$m_dir/physics/collision"
|
|
move_module "irc.rs" "$m_dir/physics/collision"
|
|
move_module "szirc.rs" "$m_dir/physics/collision"
|
|
move_module "dielrc.rs" "$m_dir/physics/collision"
|
|
move_module "dietot.rs" "$m_dir/physics/collision"
|
|
move_module "ctdata.rs" "$m_dir/physics/collision"
|
|
# ============================================================
|
|
# physics/line_profile
|
|
# ============================================================
|
|
move_module "voigt.rs" "$m_dir/physics/line_profile"
|
|
move_module "voigte.rs" "$m_dir/physics/line_profile"
|
|
move_module "profil.rs" "$m_dir/physics/line_profile"
|
|
move_module "profsp.rs" "$m_dir/physics/line_profile"
|
|
move_module "xk2dop.rs" "$m_dir/physics/line_profile"
|
|
move_module "stark0.rs" "$m_dir/physics/line_profile"
|
|
move_module "starka.rs" "$m_dir/physics/line_profile"
|
|
move_module "divstr.rs" "$m_dir/physics/line_profile"
|
|
move_module "inthyd.rs" "$m_dir/physics/line_profile"
|
|
move_module "intlem.rs" "$m_dir/physics/line_profile"
|
|
move_module "intxen.rs" "$m_dir/physics/line_profile"
|
|
move_module "lemini.rs" "$m_dir/physics/line_profile"
|
|
move_module "gomini.rs" "$m_dir/physics/line_profile"
|
|
move_module "allard.rs" "$m_dir/physics/line_profile"
|
|
move_module "allardt.rs" "$m_dir/physics/line_profile"
|
|
move_module "quasim.rs" "$m_dir/physics/line_profile"
|
|
move_module "dopgam.rs" "$m_dir/physics/line_profile"
|
|
move_module "gami.rs" "$m_dir/physics/line_profile"
|
|
move_module "gamsp.rs" "$m_dir/physics/line_profile"
|
|
move_module "gvdw.rs" "$m_dir/physics/line_profile"
|
|
# ============================================================
|
|
# physics/radiative
|
|
# ============================================================
|
|
move_module "rteang.rs" "$m_dir/physics/radiative"
|
|
move_module "rtecf0.rs" "$m_dir/physics/radiative"
|
|
move_module "rtecf1.rs" "$m_dir/physics/radiative"
|
|
move_module "rtedf1.rs" "$m_dir/physics/radiative"
|
|
move_module "rtedf2.rs" "$m_dir/physics/radiative"
|
|
move_module "rtefe2.rs" "$m_dir/physics/radiative"
|
|
move_module "rtefr1.rs" "$m_dir/physics/radiative"
|
|
move_module "rteint.rs" "$m_dir/physics/radiative"
|
|
move_module "rtesol.rs" "$m_dir/physics/radiative"
|
|
move_module "rte_sc.rs" "$m_dir/physics/radiative"
|
|
move_module "compt0.rs" "$m_dir/physics/radiative"
|
|
move_module "comset.rs" "$m_dir/physics/radiative"
|
|
move_module "angset.rs" "$m_dir/physics/radiative"
|
|
move_module "inicom.rs" "$m_dir/physics/radiative"
|
|
move_module "rtecmc.rs" "$m_dir/physics/radiative"
|
|
move_module "rtecmu.rs" "$m_dir/physics/radiative"
|
|
move_module "rtecom.rs" "$m_dir/physics/radiative"
|
|
move_module "prd.rs" "$m_dir/physics/radiative"
|
|
move_module "prdin.rs" "$m_dir/physics/radiative"
|
|
move_module "prdini.rs" "$m_dir/physics/radiative"
|
|
move_module "radtot.rs" "$m_dir/physics/radiative"
|
|
move_module "radpre.rs" "$m_dir/physics/radiative"
|
|
# ============================================================
|
|
# physics/thermodynamics
|
|
# ============================================================
|
|
move_module "state.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "rhoeos.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "rhonen.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "eldens.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "elcor.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "eldenc.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "entene.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "trmder.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "trmdrt.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "setdrt.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "prsent.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "pgset.rs" "$m_dir/physics/thermodynamics"
|
|
move_module "betah.rs" "$m_dir/physics/thermodynamics"
|
|
# ============================================================
|
|
# physics/hydrogen
|
|
# ============================================================
|
|
move_module "wn.rs" "$m_dir/physics/hydrogen"
|
|
move_module "wnstor.rs" "$m_dir/physics/hydrogen"
|
|
move_module "lymlin.rs" "$m_dir/physics/hydrogen"
|
|
move_module "ghydop.rs" "$m_dir/physics/hydrogen"
|
|
# ============================================================
|
|
# equilibrium/statistical
|
|
# ============================================================
|
|
move_module "rates1.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "ratmat.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "ratmal.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "ratsp1.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "steqeq.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "reflev.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "sabolf.rs" "$m_dir/equilibrium/statistical"
|
|
move_module "newpop.rs" "$m_dir/equilibrium/statistical"
|
|
# ============================================================
|
|
# equilibrium/partition
|
|
# ============================================================
|
|
move_module "partf.rs" "$m_dir/equilibrium/partition"
|
|
move_module "mpartf.rs" "$m_dir/equilibrium/partition"
|
|
move_module "pfcno.rs" "$m_dir/equilibrium/partition"
|
|
move_module "pffe.rs" "$m_dir/equilibrium/partition"
|
|
move_module "pfheav.rs" "$m_dir/equilibrium/partition"
|
|
move_module "pfni.rs" "$m_dir/equilibrium/partition"
|
|
move_module "pfspec.rs" "$m_dir/equilibrium/partition"
|
|
move_module "tiopf.rs" "$m_dir/equilibrium/partition"
|
|
# ============================================================
|
|
# linearization/matrix
|
|
# ============================================================
|
|
move_module "bhe.rs" "$m_dir/linearization/matrix"
|
|
move_module "bre.rs" "$m_dir/linearization/matrix"
|
|
move_module "brez.rs" "$m_dir/linearization/matrix"
|
|
move_module "brte.rs" "$m_dir/linearization/matrix"
|
|
move_module "brtez.rs" "$m_dir/linearization/matrix"
|
|
move_module "bpop.rs" "$m_dir/linearization/matrix"
|
|
move_module "bpopc.rs" "$m_dir/linearization/matrix"
|
|
move_module "bpope.rs" "$m_dir/linearization/matrix"
|
|
move_module "bpopf.rs" "$m_dir/linearization/matrix"
|
|
move_module "bpopt.rs" "$m_dir/linearization/matrix"
|
|
move_module "emat.rs" "$m_dir/linearization/matrix"
|
|
move_module "matcon.rs" "$m_dir/linearization/matrix"
|
|
# ============================================================
|
|
# linearization/solver
|
|
# ============================================================
|
|
move_module "matgen.rs" "$m_dir/linearization/solver"
|
|
move_module "matinv.rs" "$m_dir/linearization/solver"
|
|
move_module "rhsgen.rs" "$m_dir/linearization/solver"
|
|
move_module "solve.rs" "$m_dir/linearization/solver"
|
|
move_module "solves.rs" "$m_dir/linearization/solver"
|
|
move_module "levsol.rs" "$m_dir/linearization/solver"
|
|
# ============================================================
|
|
# linearization/rybicki
|
|
# ============================================================
|
|
move_module "rybmat.rs" "$m_dir/linearization/rybicki"
|
|
move_module "rybheq.rs" "$m_dir/linearization/rybicki"
|
|
move_module "rybene.rs" "$m_dir/linearization/rybicki"
|
|
move_module "rybchn.rs" "$m_dir/linearization/rybicki"
|
|
move_module "rybsol.rs" "$m_dir/linearization/rybicki"
|
|
# ============================================================
|
|
# acceleration/ali
|
|
# ============================================================
|
|
move_module "alifr1.rs" "$m_dir/acceleration/ali"
|
|
move_module "alifr3.rs" "$m_dir/acceleration/ali"
|
|
move_module "alifr6.rs" "$m_dir/acceleration/ali"
|
|
move_module "alifrk.rs" "$m_dir/acceleration/ali"
|
|
move_module "alisk1.rs" "$m_dir/acceleration/ali"
|
|
move_module "alisk2.rs" "$m_dir/acceleration/ali"
|
|
move_module "alist1.rs" "$m_dir/acceleration/ali"
|
|
move_module "alist2.rs" "$m_dir/acceleration/ali"
|
|
move_module "ijali2.rs" "$m_dir/acceleration/ali"
|
|
move_module "ijalis.rs" "$m_dir/acceleration/ali"
|
|
move_module "getlal.rs" "$m_dir/acceleration/ali"
|
|
move_module "taufr1.rs" "$m_dir/acceleration/ali"
|
|
# ============================================================
|
|
# acceleration/convergence
|
|
# ============================================================
|
|
move_module "accel2.rs" "$m_dir/acceleration/convergence"
|
|
move_module "accelp.rs" "$m_dir/acceleration/convergence"
|
|
move_module "osccor.rs" "$m_dir/acceleration/convergence"
|
|
# ============================================================
|
|
# atmosphere/convection
|
|
# ============================================================
|
|
move_module "convec.rs" "$m_dir/atmosphere/convection"
|
|
move_module "concor.rs" "$m_dir/atmosphere/convection"
|
|
move_module "conout.rs" "$m_dir/atmosphere/convection"
|
|
move_module "conref.rs" "$m_dir/atmosphere/convection"
|
|
move_module "contmd.rs" "$m_dir/atmosphere/convection"
|
|
move_module "contmp.rs" "$m_dir/atmosphere/convection"
|
|
# ============================================================
|
|
# atmosphere/temperature
|
|
# ============================================================
|
|
move_module "temper.rs" "$m_dir/atmosphere/temperature"
|
|
move_module "temcor.rs" "$m_dir/atmosphere/temperature"
|
|
move_module "tlocal.rs" "$m_dir/atmosphere/temperature"
|
|
move_module "lucy.rs" "$m_dir/atmosphere/temperature"
|
|
move_module "tdpini.rs" "$m_dir/atmosphere/temperature"
|
|
# ============================================================
|
|
# atmosphere/depth
|
|
# ============================================================
|
|
move_module "newdm.rs" "$m_dir/atmosphere/depth"
|
|
move_module "newdmt.rs" "$m_dir/atmosphere/depth"
|
|
move_module "dmder.rs" "$m_dir/atmosphere/depth"
|
|
move_module "dmeval.rs" "$m_dir/atmosphere/depth"
|
|
move_module "zmrho.rs" "$m_dir/atmosphere/depth"
|
|
move_module "column.rs" "$m_dir/atmosphere/depth"
|
|
move_module "gridp.rs" "$m_dir/atmosphere/depth"
|
|
# ============================================================
|
|
# atmosphere/hydrostatic
|
|
# ============================================================
|
|
move_module "hesolv.rs" "$m_dir/atmosphere/hydrostatic"
|
|
move_module "hesol6.rs" "$m_dir/atmosphere/hydrostatic"
|
|
# ============================================================
|
|
# atmosphere/grey
|
|
# ============================================================
|
|
move_module "greyd.rs" "$m_dir/atmosphere/grey"
|
|
# ============================================================
|
|
# atmosphere/odf
|
|
# ============================================================
|
|
move_module "odf1.rs" "$m_dir/atmosphere/odf"
|
|
move_module "odffr.rs" "$m_dir/atmosphere/odf"
|
|
move_module "odfhst.rs" "$m_dir/atmosphere/odf"
|
|
move_module "odfhyd.rs" "$m_dir/atmosphere/odf"
|
|
move_module "odfhys.rs" "$m_dir/atmosphere/odf"
|
|
move_module "odfmer.rs" "$m_dir/atmosphere/odf"
|
|
# ============================================================
|
|
# spectral
|
|
# ============================================================
|
|
move_module "linpro.rs" "$m_dir/spectral"
|
|
move_module "linsel.rs" "$m_dir/spectral"
|
|
move_module "linspl.rs" "$m_dir/spectral"
|
|
move_module "linfrq.rs" "$m_dir/spectral"
|
|
move_module "linovr.rs" "$m_dir/spectral"
|
|
move_module "linfxd.rs" "$m_dir/spectral"
|
|
move_module "sigmar.rs" "$m_dir/spectral"
|
|
move_module "sigave.rs" "$m_dir/spectral"
|
|
move_module "sigk.rs" "$m_dir/spectral"
|
|
move_module "rossop.rs" "$m_dir/spectral"
|
|
move_module "rosstd.rs" "$m_dir/spectral"
|
|
move_module "radpre.rs" "$m_dir/spectral"
|
|
move_module "radtot.rs" "$m_dir/spectral"
|
|
move_module "meanop.rs" "$m_dir/spectral"
|
|
move_module "meanopt.rs" "$m_dir/spectral"
|
|
# ============================================================
|
|
# model_init
|
|
# ============================================================
|
|
move_module "inilam.rs" "$m_dir/model_init"
|
|
move_module "inifrc.rs" "$m_dir/model_init"
|
|
move_module "inifrs.rs" "$m_dir/model_init"
|
|
move_module "inifrt.rs" "$m_dir/model_init"
|
|
move_module "inpdis.rs" "$m_dir/model_init"
|
|
move_module "change.rs" "$m_dir/model_init"
|
|
move_module "hedif.rs" "$m_dir/model_init"
|
|
move_module "chctab.rs" "$m_dir/model_init"
|
|
move_module "dwnfr.rs" "$m_dir/model_init"
|
|
move_module "dwnfr0.rs" "$m_dir/model_init"
|
|
move_module "dwnfr1.rs" "$m_dir/model_init"
|
|
move_module "levset.rs" "$m_dir/model_init"
|
|
move_module "levgrp.rs" "$m_dir/model_init"
|
|
move_module "visini.rs" "$m_dir/model_init"
|
|
move_module "grcor.rs" "$m_dir/model_init"
|
|
move_module "rap.rs" "$m_dir/model_init"
|
|
# ============================================================
|
|
# io
|
|
# ============================================================
|
|
move_module "output.rs" "$m_dir/io"
|
|
move_module "rdata.rs" "$m_dir/io"
|
|
move_module "rdatax.rs" "$m_dir/io"
|
|
move_module "readbf.rs" "$m_dir/io"
|
|
move_module "inkul.rs" "$m_dir/io"
|
|
move_module "timing.rs" "$m_dir/io"
|
|
move_module "getwrd.rs" "$m_dir/io"
|
|
move_module "quit.rs" "$m_dir/io"
|
|
move_module "prchan.rs" "$m_dir/io"
|
|
move_module "princ.rs" "$m_dir/io"
|
|
move_module "prnt.rs" "$m_dir/io"
|
|
# ============================================================
|
|
# utils
|
|
# ============================================================
|
|
move_module "pzert.rs" "$m_dir/utils"
|
|
move_module "pzevld.rs" "$m_dir/utils"
|
|
move_module "pzeval.rs" "$m_dir/utils"
|
|
move_module "corrwm.rs" "$m_dir/utils"
|
|
move_module "coolrt.rs" "$m_dir/utils"
|
|
move_module "rechck.rs" "$m_dir/utils"
|
|
move_module "russel.rs" "$m_dir/utils"
|
|
move_module "moleq.rs" "$m_dir/utils"
|
|
move_module "rhonen.rs" "$m_dir/utils"
|
|
move_module "rhoeos.rs" "$m_dir/utils"
|
|
move_module "radpre.rs" "$m_dir/utils"
|
|
move_module "radtot.rs" "$m_dir/utils"
|
|
move_module "raph.rs" "$m_dir/utils"
|
|
move_module "brte.rs" "$m_dir/utils"
|
|
move_module "brtez.rs" "$m_dir/utils"
|
|
|
|
echo "Done"
|