From f7b90d7e965c1184448c11163769be11ebc0ed6d Mon Sep 17 00:00:00 2001 From: David A Minton Date: Wed, 7 Jul 2021 08:31:15 -0400 Subject: [PATCH] Fixed bugs in helio and changed example for one similar to the WHM example --- .../1pl_1tp_encounter/.idea/.gitignore | 3 - .../1pl_1tp_encounter/cb.swiftest.in | Bin 64 -> 0 bytes .../1pl_1tp_encounter/check_init_cond.ipynb | 929 ------------------ .../1pl_1tp_encounter/init_cond.py | 228 ----- .../1pl_1tp_encounter/param.swifter.in | 26 - .../1pl_1tp_encounter/param.swiftest.in | 29 - .../1pl_1tp_encounter/pl.swifter.in | 8 - .../1pl_1tp_encounter/pl.swiftest.in | Bin 160 -> 0 bytes .../swiftest_vs_swifter.ipynb | 145 --- .../1pl_1tp_encounter/tp.swifter.in | 4 - .../1pl_1tp_encounter/tp.swiftest.in | Bin 128 -> 0 bytes .../9pl_18tp_encounters/.idea/.gitignore | 3 - .../9pl_18tp_encounters/cb.swiftest.in | 4 - .../9pl_18tp_encounters/init_cond.py | 184 ---- .../9pl_18tp_encounters/param.swifter.in | 26 - .../9pl_18tp_encounters/param.swiftest.in | 29 - .../9pl_18tp_encounters/pl.swifter.in | 40 - .../9pl_18tp_encounters/pl.swiftest.in | 37 - .../swiftest_rmvs_vs_swifter_rmvs.ipynb | 697 ------------- .../9pl_18tp_encounters/tp.in | 55 -- .../helio_swifter_comparison/Untitled.ipynb | 169 ++++ .../helio_swifter_comparison/cb.swiftest.in | Bin 0 -> 64 bytes .../helio_swifter_comparison/init_cond.py | 323 ++++++ .../mars_ejecta/.idea/.gitignore | 3 - .../mars_ejecta/cb.swiftest.in | 4 - .../mars_ejecta/config.swiftest.in | 33 - .../mars_ejecta/param.swifter.in | 30 - .../mars_ejecta/pl.swifter.in | 36 - .../mars_ejecta/pl.swiftest.in | 33 - .../mars_ejecta/profmaker.sh | 2 - .../mars_ejecta/profswifter.sh | 2 - .../mars_ejecta/start.in | 1 - .../swiftest_rmvs_vs_swifter_rmvs.ipynb | 241 ----- .../mars_ejecta/tp.in | 601 ----------- .../helio_swifter_comparison/param.swifter.in | 26 + .../param.swiftest.in | 29 + .../helio_swifter_comparison/pl.swifter.in | 40 + .../helio_swifter_comparison/pl.swiftest.in | Bin 0 -> 700 bytes .../swiftest_vs_swifter.ipynb | 363 +++++++ .../helio_swifter_comparison/tp.swifter.in | 13 + .../helio_swifter_comparison/tp.swiftest.in | Bin 0 -> 280 bytes src/helio/helio_drift.f90 | 9 +- src/main/swiftest_driver.f90 | 3 - 43 files changed, 966 insertions(+), 3442 deletions(-) delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/.idea/.gitignore delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/cb.swiftest.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/check_init_cond.ipynb delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/init_cond.py delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/param.swifter.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/param.swiftest.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swifter.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swiftest.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/swiftest_vs_swifter.ipynb delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swifter.in delete mode 100644 examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swiftest.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/.idea/.gitignore delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/cb.swiftest.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/init_cond.py delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/param.swifter.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/param.swiftest.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swifter.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swiftest.in delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/swiftest_rmvs_vs_swifter_rmvs.ipynb delete mode 100644 examples/helio_swifter_comparison/9pl_18tp_encounters/tp.in create mode 100644 examples/helio_swifter_comparison/Untitled.ipynb create mode 100644 examples/helio_swifter_comparison/cb.swiftest.in create mode 100644 examples/helio_swifter_comparison/init_cond.py delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/.idea/.gitignore delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/cb.swiftest.in delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/config.swiftest.in delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/param.swifter.in delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/pl.swifter.in delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/pl.swiftest.in delete mode 100755 examples/helio_swifter_comparison/mars_ejecta/profmaker.sh delete mode 100755 examples/helio_swifter_comparison/mars_ejecta/profswifter.sh delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/start.in delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/swiftest_rmvs_vs_swifter_rmvs.ipynb delete mode 100644 examples/helio_swifter_comparison/mars_ejecta/tp.in create mode 100644 examples/helio_swifter_comparison/param.swifter.in create mode 100644 examples/helio_swifter_comparison/param.swiftest.in create mode 100644 examples/helio_swifter_comparison/pl.swifter.in create mode 100644 examples/helio_swifter_comparison/pl.swiftest.in create mode 100644 examples/helio_swifter_comparison/swiftest_vs_swifter.ipynb create mode 100644 examples/helio_swifter_comparison/tp.swifter.in create mode 100644 examples/helio_swifter_comparison/tp.swiftest.in diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/.idea/.gitignore b/examples/helio_swifter_comparison/1pl_1tp_encounter/.idea/.gitignore deleted file mode 100644 index 26d33521a..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/cb.swiftest.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/cb.swiftest.in deleted file mode 100644 index 2386b53c8a2bcee968968e01db63bf30bc75c07a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 64 zcmd;JU|=xH*zksXud@ROkPX6j{SWxW@f6#``25D)QG73^*uwa(zDpQecDd{U@d2$e B4EX>6 diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/check_init_cond.ipynb b/examples/helio_swifter_comparison/1pl_1tp_encounter/check_init_cond.ipynb deleted file mode 100644 index b8794b9f0..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/check_init_cond.ipynb +++ /dev/null @@ -1,929 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import swiftestio as swio\n", - "import matplotlib.pyplot as plt" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swifter file param.swifter.in\n" - ] - } - ], - "source": [ - "inparfile = 'param.swifter.in'\n", - "paramgr = swio.read_swifter_param(inparfile)\n", - "swifterdat = swio.swifter2xr(paramgr)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[,\n", - " ]" - ] - }, - "execution_count": 3, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "swifterdat.plot.scatter(x='px', y='py', hue='id', hue_style=\"discrete\", marker='.')" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swiftest file param.swiftest.in\n" - ] - } - ], - "source": [ - "param_file_name = 'param.swiftest.in'\n", - "config = swio.read_swiftest_config(param_file_name)\n", - "swiftestdat = swio.swiftest2xr(config)" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[,\n", - " ,\n", - " ]" - ] - }, - "execution_count": 5, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "swiftestdat.plot.scatter(x='px', y='py', hue='id', hue_style=\"discrete\", marker='.')" - ] - }, - { - "cell_type": "code", - "execution_count": 21, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.Dataset>\n",
-       "Dimensions:   (id: 2, time: 41)\n",
-       "Coordinates:\n",
-       "  * id        (id) int64 2 100\n",
-       "    time (y)  (time) float64 0.0 0.0006845 0.001369 ... 0.02601 0.02669 0.02738\n",
-       "Dimensions without coordinates: time\n",
-       "Data variables:\n",
-       "    Mass      (time, id) float64 0.0 nan 0.0 nan 0.0 nan ... nan 0.0 nan 0.0 nan\n",
-       "    Radius    (time, id) float64 0.0 nan 0.0 nan 0.0 nan ... nan 0.0 nan 0.0 nan\n",
-       "    delta x   (time, id) float64 0.0 0.0 0.0 0.0 ... -4.108e-15 0.0 -4.441e-15\n",
-       "    delta y   (time, id) float64 0.0 0.0 0.0 0.0 ... -3.886e-16 0.0 -3.886e-16\n",
-       "    pz        (time, id) float64 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0\n",
-       "    vx        (time, id) float64 0.0 0.0 0.0 ... -2.984e-13 0.0 -3.062e-13\n",
-       "    vy        (time, id) float64 0.0 0.0 0.0 0.0 ... -3.553e-14 0.0 -3.73e-14\n",
-       "    vz        (time, id) float64 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0
" - ], - "text/plain": [ - "\n", - "Dimensions: (id: 2, time: 41)\n", - "Coordinates:\n", - " * id (id) int64 2 100\n", - " time (y) (time) float64 0.0 0.0006845 0.001369 ... 0.02601 0.02669 0.02738\n", - "Dimensions without coordinates: time\n", - "Data variables:\n", - " Mass (time, id) float64 0.0 nan 0.0 nan 0.0 nan ... nan 0.0 nan 0.0 nan\n", - " Radius (time, id) float64 0.0 nan 0.0 nan 0.0 nan ... nan 0.0 nan 0.0 nan\n", - " delta x (time, id) float64 0.0 0.0 0.0 0.0 ... -4.108e-15 0.0 -4.441e-15\n", - " delta y (time, id) float64 0.0 0.0 0.0 0.0 ... -3.886e-16 0.0 -3.886e-16\n", - " pz (time, id) float64 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0\n", - " vx (time, id) float64 0.0 0.0 0.0 ... -2.984e-13 0.0 -3.062e-13\n", - " vy (time, id) float64 0.0 0.0 0.0 0.0 ... -3.553e-14 0.0 -3.73e-14\n", - " vz (time, id) float64 0.0 0.0 0.0 0.0 0.0 0.0 ... 0.0 0.0 0.0 0.0 0.0" - ] - }, - "execution_count": 21, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "swiftdiff = swiftestdat - swifterdat\n", - "swiftdiff = swiftdiff.rename_vars({'time' : 'time (y)','px' : 'delta x','py' : 'delta y'})\n", - "swiftdiff" - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "[,\n", - " ]" - ] - }, - "execution_count": 23, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "swiftdiff.plot.scatter(x='delta x', y='delta y', hue='id', hue_style=\"discrete\", marker='.')" - ] - }, - { - "cell_type": "code", - "execution_count": 25, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "
" - ] - }, - "metadata": {}, - "output_type": "display_data" - } - ], - "source": [ - "plt.savefig('rmvsdiff.png')" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.6" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/init_cond.py b/examples/helio_swifter_comparison/1pl_1tp_encounter/init_cond.py deleted file mode 100644 index 5b5f5e76e..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/init_cond.py +++ /dev/null @@ -1,228 +0,0 @@ -""" -For testing RMVS, the code generates clones of test particles based on one that is fated to impact Mercury. -To use the script, modify the variables just after the "if __name__ == '__main__':" line -""" -import numpy as np -from astroquery.jplhorizons import Horizons -import astropy.constants as const -import swiftestio as swio -from scipy.io import FortranFile -import sys - -#Values from JPL Horizons -AU2M = np.longdouble(const.au.value) -GMSunSI = np.longdouble(const.GM_sun.value) -Rsun = np.longdouble(const.R_sun.value) -GC = np.longdouble(const.G.value) -JD = 86400 -year = np.longdouble(365.25 * JD) -c = np.longdouble(299792458.0) -MSun_over_Mpl = np.array([6023600.0, - 408523.71, - 328900.56, - 3098708., - 1047.3486, - 3497.898, - 22902.98, - 19412.24, - 1.35e8], dtype=np.longdouble) - -MU2KG = np.longdouble(GMSunSI / GC) #Conversion from mass unit to kg -DU2M = np.longdouble(AU2M) #Conversion from radius unit to centimeters -TU2S = np.longdouble(year) #Conversion from time unit to seconds -GU = np.longdouble(GC / (DU2M**3 / (MU2KG * TU2S**2))) -GMSun = np.longdouble(GMSunSI / (DU2M**3 / TU2S**2)) - -# Solar oblatenes values: From Mecheri et al. (2004), using Corbard (b) 2002 values (Table II) -J2 = np.longdouble(2.198e-7) * (Rsun / DU2M)**2 -J4 = np.longdouble(-4.805e-9) * (Rsun / DU2M)**4 - -#Planet Msun/M ratio -MSun_over_Mpl = { - 'mercury' : np.longdouble(6023600.0), - 'venus' : np.longdouble(408523.71), - 'earthmoon' : np.longdouble(328900.56), - 'mars' : np.longdouble(3098708.), - 'jupiter' : np.longdouble(1047.3486), - 'saturn' : np.longdouble(3497.898), - 'uranus' : np.longdouble(22902.98), - 'neptune' : np.longdouble(19412.24), - 'plutocharon' : np.longdouble(1.35e8) -} - -#Planet radii in meters -Rpl = { - 'mercury' : np.longdouble(2439.4e3), - 'venus' : np.longdouble(6051.8e3), - 'earthmoon' : np.longdouble(6371.0084e3), # Earth only for radius - 'mars' : np.longdouble(3389.50e3), - 'jupiter' : np.longdouble(69911e3), - 'saturn' : np.longdouble(58232.0e3), - 'uranus' : np.longdouble(25362.e3), - 'neptune' : np.longdouble(24622.e3), - 'plutocharon' : np.longdouble(1188.3e3) -} - -THIRDLONG = np.longdouble(1.0) / np.longdouble(3.0) - -swifter_input = "param.swifter.in" -swifter_pl = "pl.swifter.in" -swifter_tp = "tp.swifter.in" -swifter_bin = "bin.swifter.dat" -swifter_enc = "enc.swifter.dat" - -swiftest_input = "param.swiftest.in" -swiftest_pl = "pl.swiftest.in" -swiftest_tp = "tp.swiftest.in" -swiftest_cb = "cb.swiftest.in" -swiftest_bin = "bin.swiftest.dat" -swiftest_enc = "enc.swiftest.dat" - -# Simple initial conditions of a circular planet with one test particle in a close encounter state -# Simulation start, stop, and output cadence times -t_0 = 0 # simulation start time -deltaT = 0.25 * JD / TU2S # simulation step size -end_sim = year / TU2S #10 * JD / TU2S # simulation end time -t_print = deltaT #output interval to print results - -iout = int(np.ceil(t_print / deltaT)) -rmin = Rsun / DU2M -rmax = 1000.0 - -npl = 1 -plid = 2 -tpid = 100 - -radius = np.double(Rpl['earthmoon'] / DU2M) -mass = np.double(GMSun * MSun_over_Mpl['earthmoon']**-1) -apl = np.longdouble(1.0) -atp = np.longdouble(1.01) -vpl = np.longdouble(2 * np.pi) -vtp = np.longdouble(2 * np.pi / np.sqrt(atp)) - -p_pl = np.array([apl, 0.0, 0.0], dtype=np.double) -v_pl = np.array([0.0, vpl, 0.0], dtype=np.double) - -p_tp = np.array([atp, 0.0, 0.0], dtype=np.double) -v_tp = np.array([0.0, vtp, 0.0], dtype=np.double) - -Rhill = apl * ((3 * MSun_over_Mpl['earthmoon'])**(-THIRDLONG)) - -#Make Swifter files -plfile = open(swifter_pl, 'w') -print(npl+1, f'! Planet input file generated using init_cond.py',file=plfile) -print(1,GMSun,file=plfile) -print('0.0 0.0 0.0',file=plfile) -print('0.0 0.0 0.0',file=plfile) -print(plid,"{:.23g}".format(mass),Rhill, file=plfile) -print(radius, file=plfile) -print(*p_pl, file=plfile) -print(*v_pl, file=plfile) -plfile.close() - -tpfile = open(swifter_tp, 'w') -print(1,file=tpfile) -print(tpid, file=tpfile) -print(*p_tp, file=tpfile) -print(*v_tp, file=tpfile) -tpfile.close() - -sys.stdout = open(swifter_input, "w") -print(f'! Swifter input file generated using init_cond.py') -print(f'T0 {t_0} ') -print(f'TSTOP {end_sim}') -print(f'DT {deltaT}') -print(f'PL_IN {swifter_pl}') -print(f'TP_IN {swifter_tp}') -print(f'IN_TYPE ASCII') -print(f'ISTEP_OUT {iout:d}') -print(f'ISTEP_DUMP {iout:d}') -print(f'BIN_OUT {swifter_bin}') -print(f'OUT_TYPE REAL8') -print(f'OUT_FORM XV') -print(f'OUT_STAT NEW') -print(f'J2 {J2}') -print(f'J4 {J4}') -print(f'CHK_CLOSE yes') -print(f'CHK_RMIN {rmin}') -print(f'CHK_RMAX {rmax}') -print(f'CHK_EJECT {rmax}') -print(f'CHK_QMIN {rmin}') -print(f'CHK_QMIN_COORD HELIO') -print(f'CHK_QMIN_RANGE {rmin} {rmax}') -print(f'ENC_OUT {swifter_enc}') -print(f'EXTRA_FORCE no') -print(f'BIG_DISCARD no') -print(f'RHILL_PRESENT yes') -sys.stdout = sys.__stdout__ - -#Now make Swiftest files -cbfile = FortranFile(swiftest_cb, 'w') -Msun = np.double(1.0) -cbfile.write_record(np.double(GMSun)) -cbfile.write_record(np.double(rmin)) -cbfile.write_record(np.double(J2)) -cbfile.write_record(np.double(J4)) -cbfile.close() - -plfile = FortranFile(swiftest_pl, 'w') -plfile.write_record(npl) - -plfile.write_record(plid) -plfile.write_record(p_pl[0]) -plfile.write_record(p_pl[1]) -plfile.write_record(p_pl[2]) -plfile.write_record(v_pl[0]) -plfile.write_record(v_pl[1]) -plfile.write_record(v_pl[2]) -plfile.write_record(mass) -plfile.write_record(radius) -plfile.close() -tpfile = FortranFile(swiftest_tp, 'w') -ntp = 1 -tpfile.write_record(ntp) -tpfile.write_record(tpid) -tpfile.write_record(p_tp[0]) -tpfile.write_record(p_tp[1]) -tpfile.write_record(p_tp[2]) -tpfile.write_record(v_tp[0]) -tpfile.write_record(v_tp[1]) -tpfile.write_record(v_tp[2]) - -tpfile.close() - -sys.stdout = open(swiftest_input, "w") -print(f'! Swiftest input file generated using init_cond.py') -print(f'T0 {t_0} ') -print(f'TSTOP {end_sim}') -print(f'DT {deltaT}') -print(f'CB_IN {swiftest_cb}') -print(f'PL_IN {swiftest_pl}') -print(f'TP_IN {swiftest_tp}') -print(f'IN_TYPE REAL8') -print(f'ISTEP_OUT {iout:d}') -print(f'ISTEP_DUMP {iout:d}') -print(f'BIN_OUT {swiftest_bin}') -print(f'OUT_TYPE REAL8') -print(f'OUT_FORM XV') -print(f'OUT_STAT REPLACE') -print(f'CHK_CLOSE yes') -print(f'CHK_RMIN {rmin}') -print(f'CHK_RMAX {rmax}') -print(f'CHK_EJECT {rmax}') -print(f'CHK_QMIN {rmin}') -print(f'CHK_QMIN_COORD HELIO') -print(f'CHK_QMIN_RANGE {rmin} {rmax}') -print(f'ENC_OUT {swiftest_enc}') -print(f'EXTRA_FORCE no') -print(f'BIG_DISCARD no') -print(f'ROTATION no') -print(f'GR no') -print(f'MU2KG {MU2KG}') -print(f'DU2M {DU2M}') -print(f'TU2S {TU2S}') - - - - - diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swifter.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swifter.in deleted file mode 100644 index 40cedba41..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swifter.in +++ /dev/null @@ -1,26 +0,0 @@ -! Swifter input file generated using init_cond.py -T0 0 -TSTOP 0.2 -DT 0.00034223134839151266 -PL_IN pl.swifter.in -TP_IN tp.swifter.in -IN_TYPE ASCII -ISTEP_OUT 1 -ISTEP_DUMP 1 -BIN_OUT bin.swifter.dat -OUT_TYPE REAL8 -OUT_FORM XV -OUT_STAT UNKNOWN -J2 4.7535806948127355e-12 -J4 -2.2473967953572827e-18 -CHK_CLOSE yes -CHK_RMIN 0.004650467260962157 -CHK_RMAX 1000.0 -CHK_EJECT 1000.0 -CHK_QMIN 0.004650467260962157 -CHK_QMIN_COORD HELIO -CHK_QMIN_RANGE 0.004650467260962157 1000.0 -ENC_OUT enc.swifter.dat -EXTRA_FORCE no -BIG_DISCARD no -RHILL_PRESENT yes diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swiftest.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swiftest.in deleted file mode 100644 index 914af3324..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/param.swiftest.in +++ /dev/null @@ -1,29 +0,0 @@ -! Swiftest input file generated using init_cond.py -T0 0 -TSTOP 0.2 -DT 0.00034223134839151266 -CB_IN cb.swiftest.in -PL_IN pl.swiftest.in -TP_IN tp.swiftest.in -IN_TYPE REAL8 -ISTEP_OUT 1 -ISTEP_DUMP 1 -BIN_OUT bin.swiftest.dat -OUT_TYPE REAL8 -OUT_FORM XV -OUT_STAT REPLACE -CHK_CLOSE yes -CHK_RMIN 0.004650467260962157 -CHK_RMAX 1000.0 -CHK_EJECT 1000.0 -CHK_QMIN 0.004650467260962157 -CHK_QMIN_COORD HELIO -CHK_QMIN_RANGE 0.004650467260962157 1000.0 -ENC_OUT enc.swiftest.dat -EXTRA_FORCE no -BIG_DISCARD no -ROTATION no -GR no -MU2KG 1.988409870698051e+30 -DU2M 149597870700.0 -TU2S 31557600.0 diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swifter.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swifter.in deleted file mode 100644 index 6f91ef4c9..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swifter.in +++ /dev/null @@ -1,8 +0,0 @@ -2 ! Planet input file generated using init_cond.py -1 39.47692640889762629 -0.0 0.0 0.0 -0.0 0.0 0.0 -2 0.00012002693582795246295385 0.010044724833237895015 -4.25875607065041e-05 -1.0 0.0 0.0 -0.0 6.283185307179586 0.0 diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swiftest.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/pl.swiftest.in deleted file mode 100644 index d3786c3df574e6b225dbd22bfec2c4995b86dd25..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160 zcmd;JU|?VbVi4efVkR&T!G~}^*u&(Z(s1>J_!7D,\n", - " ]" - ] - }, - "execution_count": 6, - "metadata": {}, - "output_type": "execute_result" - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "swiftdiff['px'].plot.line(x=\"time (y)\")" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "swiftestOOF", - "language": "python", - "name": "swiftestoof" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.10" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swifter.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swifter.in deleted file mode 100644 index 9c026369e..000000000 --- a/examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swifter.in +++ /dev/null @@ -1,4 +0,0 @@ -1 -100 -1.01 0.0 0.0 -0.0 6.252003053624663 0.0 diff --git a/examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swiftest.in b/examples/helio_swifter_comparison/1pl_1tp_encounter/tp.swiftest.in deleted file mode 100644 index e1506974ae338f098f33af16f09e91ed31946bbc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 128 wcmd;JU|?VbVi4ef;uJ6s!PkuGKlD}OgFQ?hDh*dph~H?tT#T1V(gB-(0O>IX>i_@% diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/.idea/.gitignore b/examples/helio_swifter_comparison/9pl_18tp_encounters/.idea/.gitignore deleted file mode 100644 index 26d33521a..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/cb.swiftest.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/cb.swiftest.in deleted file mode 100644 index 689d47628..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/cb.swiftest.in +++ /dev/null @@ -1,4 +0,0 @@ -0.0002959122081920778 -0.004650467260962157 -4.7535806948127355e-12 --2.2473967953572827e-18 diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/init_cond.py b/examples/helio_swifter_comparison/9pl_18tp_encounters/init_cond.py deleted file mode 100644 index 314e59420..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/init_cond.py +++ /dev/null @@ -1,184 +0,0 @@ -import numpy as np -import swiftest.io as swio -import astropy.constants as const -import sys -import xarray as xr - -# Both codes use the same tp input file -tpin = "tp.in" - -swifter_input = "param.swifter.in" -swifter_pl = "pl.swifter.in" -swifter_bin = "bin.swifter.dat" -swifter_enc = "enc.swifter.dat" - -swiftest_input = "param.swiftest.in" -swiftest_pl = "pl.swiftest.in" -swiftest_cb = "cb.swiftest.in" -swiftest_bin = "bin.swiftest.dat" -swiftest_enc = "enc.swiftest.dat" - -#Values from JPL Horizons -AU2M = np.longdouble(const.au.value) -GMSunSI = np.longdouble(const.GM_sun.value) -Rsun = np.longdouble(const.R_sun.value) -GC = np.longdouble(const.G.value) -JD = 86400 -year = np.longdouble(365.25 * JD) -c = np.longdouble(299792458.0) - -MU2KG = np.longdouble(GMSunSI / GC) #Conversion from mass unit to kg -DU2M = np.longdouble(AU2M) #Conversion from radius unit to centimeters -TU2S = np.longdouble(JD) #Conversion from time unit to seconds -GU = np.longdouble(GC / (DU2M**3 / (MU2KG * TU2S**2))) -GMSun = np.longdouble(GMSunSI / (DU2M**3 / TU2S**2)) - -t_0 = 0 # simulation start time -deltaT = 1.00 * JD / TU2S # simulation step size -end_sim = year / TU2S # simulation end time -t_print = deltaT #output interval to print results - -iout = int(np.ceil(t_print / deltaT)) -rmin = Rsun / DU2M -rmax = 1000.0 - -sys.stdout = open(swiftest_input, "w") -print(f'! VERSION Swiftest input file generated using init_cond.py') -print(f'T0 {t_0} ') -print(f'TSTOP {end_sim}') -print(f'DT {deltaT}') -print(f'CB_IN {swiftest_cb}') -print(f'PL_IN {swiftest_pl}') -print(f'TP_IN {tpin}') -print(f'IN_TYPE ASCII') -print(f'ISTEP_OUT {iout:d}') -print(f'ISTEP_DUMP {iout:d}') -print(f'BIN_OUT {swiftest_bin}') -print(f'OUT_TYPE REAL8') -print(f'OUT_FORM XV') -print(f'OUT_STAT REPLACE') -print(f'CHK_CLOSE yes') -print(f'CHK_RMIN {rmin}') -print(f'CHK_RMAX {rmax}') -print(f'CHK_EJECT {rmax}') -print(f'CHK_QMIN {rmin}') -print(f'CHK_QMIN_COORD HELIO') -print(f'CHK_QMIN_RANGE {rmin} {rmax}') -print(f'ENC_OUT {swiftest_enc}') -print(f'EXTRA_FORCE no') -print(f'BIG_DISCARD no') -print(f'ROTATION no') -print(f'GR no') -print(f'MU2KG {MU2KG}') -print(f'DU2M {DU2M}') -print(f'TU2S {TU2S}') -sys.stdout = sys.__stdout__ -param = swio.read_swiftest_param(swiftest_input) - -# Dates to fetch planet ephemerides from JPL Horizons -tstart = '2021-06-15' -ds = swio.solar_system_pl(param, tstart) -cb = ds.sel(id=0) -pl = ds.where(ds.id > 0, drop=True) -npl = pl.id.size - -ntp = 18 -dims = ['time', 'id', 'vec'] -tp = [] -t = np.array([0.0]) -clab, plab, tlab = swio.make_swiftest_labels(param) - -# For each planet, we will initialize a pair of test particles. One on its way in, and one on its way out. We will also initialize two additional particles that don't encounter anything -tpnames = np.arange(101, 101 + ntp) -tpxv1 = np.empty((6)) -tpxv2 = np.empty((6)) - -p1 = [] -p2 = [] -p3 = [] -p4 = [] -p5 = [] -p6 = [] - -for i in pl.id: - pli = pl.sel(id=i) - rstart = 2 * np.double(pli['Radius']) # Start the test particles at a multiple of the planet radius away - vstart = 1.5 * np.sqrt(2 * np.double(pli['Mass']) / rstart) # Start the test particle velocities at a multiple of the escape speed - xvstart = np.array([rstart / np.sqrt(2.0), rstart / np.sqrt(2.0), 0.0, vstart, 0.0, 0.0]) - # The positions and velocities of each pair of test particles will be in reference to a planet - plvec = np.array([np.double(pli['px']), - np.double(pli['py']), - np.double(pli['pz']), - np.double(pli['vx']), - np.double(pli['vy']), - np.double(pli['vz'])]) - tpxv1 = plvec + xvstart - tpxv2 = plvec - xvstart - p1.append(tpxv1[0]) - p1.append(tpxv2[0]) - p2.append(tpxv1[1]) - p2.append(tpxv2[1]) - p3.append(tpxv1[2]) - p3.append(tpxv2[2]) - p4.append(tpxv1[3]) - p4.append(tpxv2[3]) - p5.append(tpxv1[4]) - p5.append(tpxv2[4]) - p6.append(tpxv1[5]) - p6.append(tpxv2[5]) - -tvec = np.vstack([p1, p2, p3, p4, p5, p6]) -tpframe = np.expand_dims(tvec.T, axis=0) -tpxr = xr.DataArray(tpframe, dims = dims, coords = {'time' : t, 'id' : tpnames, 'vec' : tlab}) - -tp = [tpxr] -tpda = xr.concat(tp,dim='time') -tpds = tpda.to_dataset(dim = 'vec') - -ds = xr.combine_by_coords([ds, tpds]) -swio.swiftest_xr2infile(ds, param) - -# Swifter PL file -plfile = open(swifter_pl, 'w') -print(npl + 1, file=plfile) -print(0,GMSun,file=plfile) -print('0.0 0.0 0.0',file=plfile) -print('0.0 0.0 0.0',file=plfile) -for i in pl.id: - pli = pl.sel(id=i) - print(f"{int(i)} {pli['Mass'].values[0]} {pli['Rhill'].values[0]}", file=plfile) - print(f"{pli['Radius'].values[0]}", file=plfile) - print(f"{pli['px'].values[0]} {pli['py'].values[0]} {pli['pz'].values[0]}", file=plfile) - print(f"{pli['vx'].values[0]} {pli['vy'].values[0]} {pli['vz'].values[0]}", file=plfile) -plfile.close() - -# Swifter parameter file -sys.stdout = open(swifter_input, "w") -print(f"! VERSION Swifter input file generated using init_cond.py") -print(f"T0 {t_0} ") -print(f"TSTOP {end_sim}") -print(f"DT {deltaT}") -print(f"PL_IN {swifter_pl}") -print(f"TP_IN {tpin}") -print(f"IN_TYPE ASCII") -print(f"ISTEP_OUT {iout:d}") -print(f"ISTEP_DUMP {iout:d}") -print(f"BIN_OUT {swifter_bin}") -print(f"OUT_TYPE REAL8") -print(f"OUT_FORM XV") -print(f"OUT_STAT UNKNOWN") -print(f"J2 {param['J2']}") -print(f"J4 {param['J4']}") -print(f"CHK_CLOSE yes") -print(f"CHK_RMIN {rmin}") -print(f"CHK_RMAX {rmax}") -print(f"CHK_EJECT {rmax}") -print(f"CHK_QMIN {rmin}") -print(f"CHK_QMIN_COORD HELIO") -print(f"CHK_QMIN_RANGE {rmin} {rmax}") -print(f"ENC_OUT {swifter_enc}") -print(f"EXTRA_FORCE no") -print(f"BIG_DISCARD no") -print(f"RHILL_PRESENT yes") -sys.stdout = sys.__stdout__ - diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swifter.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swifter.in deleted file mode 100644 index ec31caa63..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swifter.in +++ /dev/null @@ -1,26 +0,0 @@ -! Swifter input file generated using init_cond.py -T0 0 -TSTOP 365.25 -DT 1.0 -PL_IN pl.swifter.in -TP_IN tp.in -IN_TYPE ASCII -ISTEP_OUT 1 -ISTEP_DUMP 1 -BIN_OUT bin.swifter.dat -OUT_TYPE REAL8 -OUT_FORM XV -OUT_STAT UNKNOWN -J2 4.7535806948127355e-12 -J4 -2.2473967953572827e-18 -CHK_CLOSE yes -CHK_RMIN 0.004650467260962157 -CHK_RMAX 1000.0 -CHK_EJECT 1000.0 -CHK_QMIN 0.004650467260962157 -CHK_QMIN_COORD HELIO -CHK_QMIN_RANGE 0.004650467260962157 1000.0 -ENC_OUT enc.swifter.dat -EXTRA_FORCE no -BIG_DISCARD no -RHILL_PRESENT yes diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swiftest.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swiftest.in deleted file mode 100644 index fff05bacf..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/param.swiftest.in +++ /dev/null @@ -1,29 +0,0 @@ -! VERSION Swiftest input file generated using init_cond.py -T0 0 -TSTOP 365.25 -DT 1.0 -CB_IN cb.swiftest.in -PL_IN pl.swiftest.in -TP_IN tp.in -IN_TYPE ASCII -ISTEP_OUT 1 -ISTEP_DUMP 1 -BIN_OUT bin.swiftest.dat -OUT_TYPE REAL8 -OUT_FORM XV -OUT_STAT REPLACE -CHK_CLOSE yes -CHK_RMIN 0.004650467260962157 -CHK_RMAX 1000.0 -CHK_EJECT 1000.0 -CHK_QMIN 0.004650467260962157 -CHK_QMIN_COORD HELIO -CHK_QMIN_RANGE 0.004650467260962157 1000.0 -ENC_OUT enc.swiftest.dat -EXTRA_FORCE no -BIG_DISCARD no -ROTATION no -GR no -MU2KG 1.988409870698051e+30 -DU2M 149597870700.0 -TU2S 86400.0 diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swifter.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swifter.in deleted file mode 100644 index f02f6bc6f..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swifter.in +++ /dev/null @@ -1,40 +0,0 @@ -10 -0 0.00029591220819207776388 -0.0 0.0 0.0 -0.0 0.0 0.0 -1 4.9125474498983625e-11 0.0014751258227142052 -1.6306381826061646e-05 -0.008059842448018334 -0.4616051037329109 -0.03846017738329229 -0.02248719132054853 0.001934639213990692 -0.001904656977422976 -2 7.243452483873647e-10 0.006759134232034941 -4.0453784346544176e-05 --0.5115875215389065 0.5030818749037324 0.03642547299277956 --0.01425515725454357 -0.01452868630179309 0.0006232072038298823 -3 8.997011382166019e-10 0.010044625087011915 -4.25875607065041e-05 --0.1090020607540907 -1.009893805009766 4.823302918632528e-05 -0.01682491922568941 -0.001910549762056979 3.992660742687128e-08 -4 9.549535102761465e-11 0.0072467897902424765 -2.2657408050928896e-05 --1.342897929331636 0.9778655112682739 0.05343398538723887 --0.007712315645393206 -0.01011917844182223 -2.287744801261131e-05 -5 2.825345908631355e-07 0.3552720805286442 -0.0004673261703049093 -3.923184193414315 -3.168419770483168 -0.0746147877972047 -0.004655552638985802 0.006232623300954468 -0.0001300429201057457 -6 8.459715183006416e-08 0.4376460836930155 -0.00038925687730393614 -6.185794462795267 -7.804174837804826 -0.110498432926239 -0.004066833203985018 0.003458637040736611 -0.0002219310939327014 -7 1.2920249163736674e-08 0.46946272948265794 -0.00016953449859497232 -14.9290976575471 12.92949673572929 -0.1454099139559955 --0.002599557960646664 0.002795888198858545 4.391864857782088e-05 -8 1.5243589003230834e-08 0.78119478483336 -0.00016458790412449367 -29.54416169025338 -4.716921603714237 -0.5838030174427992 -0.0004792636209523189 0.00312573757291745 -7.53264045199501e-05 -9 2.1919422829042796e-12 0.05379680851617536 -7.943294877391593e-06 -14.54448346259197 -31.05223519593471 -0.8828000265625595 -0.002923077617691739 0.0006625916902153526 -0.0009142553677224461 diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swiftest.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swiftest.in deleted file mode 100644 index 0920f9b2e..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/pl.swiftest.in +++ /dev/null @@ -1,37 +0,0 @@ -9 -1 4.9125474498983625056e-11 -1.6306381826061645943e-05 -0.008059842448018333591 -0.46160510373291091524 -0.038460177383292291908 -0.02248719132054852949 0.0019346392139906921279 -0.0019046569774229759606 -2 7.243452483873647106e-10 -4.0453784346544178454e-05 --0.51158752153890652004 0.5030818749037323512 0.036425472992779560355 --0.01425515725454356988 -0.014528686301793089943 0.00062320720382988232425 -3 8.997011382166018993e-10 -4.25875607065040958e-05 --0.109002060754090704386 -1.0098938050097661101 4.8233029186325282966e-05 -0.016824919225689409317 -0.0019105497620569790936 3.9926607426871282392e-08 -4 9.549535102761465872e-11 -2.265740805092889601e-05 --1.3428979293316360977 0.97786551126827392366 0.053433985387238869258 --0.007712315645393206092 -0.0101191784418222296525 -2.2877448012611311785e-05 -5 2.8253459086313549713e-07 -0.00046732617030490929307 -3.923184193414314791 -3.1684197704831680298 -0.07461478779720470689 -0.0046555526389858022113 0.006232623300954467766 -0.00013004292010574569365 -6 8.45971518300641563e-08 -0.00038925687730393611812 -6.1857944627952665684 -7.804174837804826126 -0.11049843292623899582 -0.0040668332039850179674 0.0034586370407366113193 -0.00022193109393270141328 -7 1.2920249163736673984e-08 -0.00016953449859497231466 -14.929097657547099942 12.9294967357292893695 -0.14540991395599550673 --0.0025995579606466640267 0.0027958881988585450113 4.391864857782088156e-05 -8 1.5243589003230834746e-08 -0.000164587904124493665 -29.544161690253378794 -4.7169216037142369657 -0.58380301744279916587 -0.00047926362095231893815 0.00312573757291745008 -7.532640451995010825e-05 -9 2.1919422829042797324e-12 -7.943294877391593783e-06 -14.544483462591969669 -31.052235195934709822 -0.88280002656255951443 -0.0029230776176917390448 0.0006625916902153525834 -0.0009142553677224461557 diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/swiftest_rmvs_vs_swifter_rmvs.ipynb b/examples/helio_swifter_comparison/9pl_18tp_encounters/swiftest_rmvs_vs_swifter_rmvs.ipynb deleted file mode 100644 index 0a95cb75e..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/swiftest_rmvs_vs_swifter_rmvs.ipynb +++ /dev/null @@ -1,697 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import xarray as xr\n", - "import swiftest\n", - "import matplotlib.pyplot as plt" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swifter file param.swifter.in\n", - "Reading in time 3.660e+02\n", - "Creating Dataset\n", - "Successfully converted 367 output frames.\n", - "Swifter simulation data stored as xarray DataSet .ds\n" - ] - } - ], - "source": [ - "inparfile = 'param.swifter.in'\n", - "swiftersim = swiftest.Simulation(param_file=inparfile, codename=\"Swifter\")\n", - "swiftersim.bin2xr()\n", - "swifterdat = swiftersim.ds" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swiftest file param.swiftest.in\n", - "Reading in time 3.660e+02\n", - "Creating Dataset\n", - "Successfully converted 367 output frames.\n", - "Swiftest simulation data stored as xarray DataSet .ds\n" - ] - } - ], - "source": [ - "inparfile = 'param.swiftest.in'\n", - "swiftestsim = swiftest.Simulation(param_file=inparfile)\n", - "swiftestsim.bin2xr()\n", - "swiftestdat = swiftestsim.ds" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff = swiftestdat - swifterdat" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff = swiftdiff.rename({'time' : 'time (d)'})" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff['rmag'] = np.sqrt(swiftdiff['px']**2 + swiftdiff['py']**2 + swiftdiff['pz']**2)\n", - "swiftdiff['vmag'] = np.sqrt(swiftdiff['vx']**2 + swiftdiff['vy']**2 + swiftdiff['vz']**2)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "plidx = swiftdiff.id.values[swiftdiff.id.values < 10]\n", - "tpidx = swiftdiff.id.values[swiftdiff.id.values > 10]" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "text/html": [ - "
\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "\n", - "
<xarray.DataArray 'px' (time (d): 367)>\n",
-       "array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n",
-       "       0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])\n",
-       "Coordinates:\n",
-       "    id        int64 4\n",
-       "  * time (d)  (time (d)) float64 0.0 1.0 2.0 3.0 4.0 ... 363.0 364.0 365.0 366.0
" - ], - "text/plain": [ - "\n", - "array([0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.,\n", - " 0., 0., 0., 0., 0., 0., 0., 0., 0., 0.])\n", - "Coordinates:\n", - " id int64 4\n", - " * time (d) (time (d)) float64 0.0 1.0 2.0 3.0 4.0 ... 363.0 364.0 365.0 366.0" - ] - }, - "execution_count": 8, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "swiftdiff['px'].sel(id=4)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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28LyI4HB6WMi8NsaxGRmGWtsQqr3pqQ8qVliiIhHgXdaWGUccF0kngR6S9q5NtGZWVbqvcaQR3nqfN4FWFDwvCGd9yGSJkqaIWnGkiVLahKcmbUPdz7nT54SQ6nztEp+UiLiyogYExFj+vTp085hmVl72tiU5BpDbuQpMTQA/Que9wMWZhSLmVndylNimAqcosQBwN8jYlHWQZlZ+3JTUv7ULDFIugl4AthTUoOkCZLOkHRGuso04FVgHnAV8K1axWZm2XFTUmW+9rWvscMOOzBixIeuAihbza5jiIjxm1gewLdrFI6Z5UTjGElODOU59dRTOfPMMznllFOqVmaempLMrI7V+yB65TrooIPYdtttq1qmh8Qws0xtrCl08ArDBXfM5sWFy6ta5rC+W/Ojzw+vapmt4RqDmWXKfQz54xqDmWWqs1z5nMUv+/biGoOZZcqnq+aPE4OZZcpNSZUZP348H//4x5k7dy79+vXj97//fcVluinJzKwDu+mmm6pepmsMZpYpD7udP04MZpapztL53Jk4MZhZptz5nD9ODGaWKXc+548Tg5llyk1J+ePEYGaZ2tiE5LyQG04MZpapxprCBjyIXlstWLCAQw89lKFDhzJ8+HAmT55clXJ9HYOZZcqnq5ava9eu/OpXv2LUqFGsWLGC0aNHc/jhhzNs2LCKynWNwcwy5T6G8u28886MGjUKgF69ejF06FDeeOONist1jcHMcqHDJ4a7z4U3X6humTvtBUde1KpVX3vtNZ577jn233//infrGoOZZcqdz5VbuXIlxx13HJdccglbb711xeW5xmBmmeo0TUmt/GVfbWvXruW4447jpJNO4thjj61Kma4xmFmmfOVz+SKCCRMmMHToUH7wgx9UrVwnBjPLlK98Lt/06dO5/vrreeihhxg5ciQjR45k2rRpFZfrpiQzy1SnaUrKwIEHHtguNS3XGMwsF9yUlB9ODGaWqQ3hK57zxonBzDLlPob8cWIws0z5rKT8cWIws0xtHETPTUq54cRgZtlyRSF3apoYJI2VNFfSPEnnlli+jaQ7JD0vabak02oZn5nVnk9XLd/q1avZb7/92GeffRg+fDg/+tGPqlJuza5jkNQFuAw4HGgAnpY0NSJeLFjt28CLEfF5SX2AuZJujIg1tYrTzGrLfQzl23zzzXnooYfo2bMna9eu5cADD+TI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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['rmag'].sel(id=plidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{r}_{swiftest} - \\mathbf{r}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric position differences \\n Planets only\")\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-planets-rmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['vmag'].sel(id=plidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{v}_{swiftest} - \\mathbf{v}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric velocity differences \\n Planets only\")\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-planets-vmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 11, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "No handles with labels found to put in legend.\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['rmag'].sel(id=tpidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{r}_{swiftest} - \\mathbf{r}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric position differences \\n Test Particles only\")\n", - "legend = ax.legend()\n", - "legend.remove()\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-testparticles-rmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 12, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "No handles with labels found to put in legend.\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['vmag'].sel(id=tpidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{v}_{swiftest} - \\mathbf{v}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric velocity differences \\n Test Particles only\")\n", - "legend = ax.legend()\n", - "legend.remove()\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-testparticles-vmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "swiftestOOF", - "language": "python", - "name": "swiftestoof" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.7.10" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/examples/helio_swifter_comparison/9pl_18tp_encounters/tp.in b/examples/helio_swifter_comparison/9pl_18tp_encounters/tp.in deleted file mode 100644 index 6ae12da23..000000000 --- a/examples/helio_swifter_comparison/9pl_18tp_encounters/tp.in +++ /dev/null @@ -1,55 +0,0 @@ -18 -101 -0.0080829031543499848395 -0.46158204302657929174 -0.038460177383292291908 -0.025090740792557679473 0.00193463921399069207 -0.0019046569774229759036 -102 -0.008036781741686682343 -0.46162816443924253873 -0.038460177383292291908 -0.01988364184853937816 0.00193463921399069207 -0.0019046569774229759036 -103 --0.51153031124843428845 0.50313908519420458276 0.036425472992779560355 --0.007907923549198175514 -0.014528686301793089508 0.0006232072038298823056 -104 --0.5116447318293787516 0.5030246646132601196 0.036425472992779560355 --0.020602390959888965127 -0.014528686301793089508 0.0006232072038298823056 -105 --0.10894183284815117663 -1.0098335771038264852 4.8233029186325282966e-05 -0.023719359459963285097 -0.0019105497620569790364 3.9926607426871281197e-08 -106 --0.109062288660030232146 -1.009954032915705735 4.8233029186325282966e-05 -0.00993047899141553253 -0.0019105497620569790364 3.9926607426871281197e-08 -107 --1.3428658869178822233 0.97789755368202779806 0.053433985387238869258 --0.0046328365471693128824 -0.01011917844182222935 -2.28774480126113111e-05 -108 --1.3429299717453899721 0.97783346885452004926 0.053433985387238869258 --0.0107917947436170988396 -0.01011917844182222935 -2.28774480126113111e-05 -109 -3.9238450924224119731 -3.1677588714750708476 -0.07461478779720470689 -0.041537769840633231855 0.0062326233009544675795 -0.00013004292010574568976 -110 -3.9225232944062176088 -3.169080669491265212 -0.07461478779720470689 --0.03222666456266162771 0.0062326233009544675795 -0.00013004292010574568976 -111 -6.1863449551503970625 -7.8036243454496956318 -0.11049843292623899582 -0.026180002087518607773 0.0034586370407366112158 -0.00022193109393270140663 -112 -6.1852439704401360743 -7.80472533015995662 -0.11049843292623899582 --0.018046335679548570347 0.0034586370407366112158 -0.00022193109393270140663 -113 -14.92933741553430238 12.9297364937164918075 -0.14540991395599550673 -0.010495205578015229936 0.0027958881988585449277 4.3918648577820880246e-05 -114 -14.928857899559897504 12.9292569777420869315 -0.14540991395599550673 --0.015694321499308556966 0.0027958881988585449277 4.3918648577820880246e-05 -115 -29.544394452699595632 -4.7166888412680219034 -0.58380301744279916587 -0.014914899434230450767 0.0031257375729174499863 -7.532640451995010599e-05 -116 -29.543928927807161955 -4.717154366160452028 -0.58380301744279916587 --0.013956372192325811402 0.0031257375729174499863 -7.532640451995010599e-05 -117 -14.544494696107316045 -31.052223962419365222 -0.88280002656255951443 -0.0037110399802695879026 0.00066259169021535256356 -0.0009142553677224461283 -118 -14.544472229076623293 -31.052246429450054421 -0.88280002656255951443 -0.002135115255113890012 0.00066259169021535256356 -0.0009142553677224461283 diff --git a/examples/helio_swifter_comparison/Untitled.ipynb b/examples/helio_swifter_comparison/Untitled.ipynb new file mode 100644 index 000000000..7d5a299df --- /dev/null +++ b/examples/helio_swifter_comparison/Untitled.ipynb @@ -0,0 +1,169 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import astropy.constants as const" + ] + }, + { + "cell_type": "code", + "execution_count": 31, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "6.6743e-11\n" + ] + } + ], + "source": [ + "AU2M = np.longdouble(const.au.value)\n", + "GMSunSI = np.longdouble(const.GM_sun.value)\n", + "print(const.G.value)\n", + "Rsun = np.longdouble(const.R_sun.value)\n", + "GC = np.longdouble(const.G.value)\n", + "JD = 86400\n", + "year = np.longdouble(365.25 * JD)\n", + "c = np.longdouble(299792458.0)\n", + "MSun_over_Mpl = np.array([6023600.0,\n", + " 408523.71,\n", + " 328900.56,\n", + " 3098708.,\n", + " 1047.3486,\n", + " 3497.898,\n", + " 22902.98,\n", + " 19412.24,\n", + " 1.35e8], dtype=np.longdouble)\n", + "\n", + "MU2KG = np.longdouble(GMSunSI / GC) #Conversion from mass unit to kg\n", + "DU2M = np.longdouble(AU2M) #Conversion from radius unit to centimeters\n", + "TU2S = np.longdouble(year) #Conversion from time unit to seconds\n", + "GU = np.longdouble(GC / (DU2M**3 / (MU2KG * TU2S**2)))\n", + "\n", + "GMSun = np.longdouble(GMSunSI / (DU2M**3 / TU2S**2))" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "int" + ] + }, + "execution_count": 34, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "type(JD)" + ] + }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "array([6.0236000000000000000e+06, 4.0852371000000002095e+05,\n", + " 3.2890055999999999767e+05, 3.0987080000000000000e+06,\n", + " 1.0473486000000000331e+03, 3.4978980000000001382e+03,\n", + " 2.2902979999999999563e+04, 1.9412240000000001601e+04,\n", + " 1.3500000000000000000e+08], dtype=float128)" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "MSun_over_Mpl" + ] + }, + { + "cell_type": "code", + "execution_count": 54, + "metadata": {}, + "outputs": [], + "source": [ + "np.set_printoptions(threshold = np.inf, precision=23)" + ] + }, + { + "cell_type": "code", + "execution_count": 59, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "39.476926408897626292\n" + ] + } + ], + "source": [ + "print(GU)" + ] + }, + { + "cell_type": "code", + "execution_count": 60, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "39.47692640889762571987376\n" + ] + } + ], + "source": [ + "print(\"{:.23f}\".format(GU))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.6" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/examples/helio_swifter_comparison/cb.swiftest.in b/examples/helio_swifter_comparison/cb.swiftest.in new file mode 100644 index 0000000000000000000000000000000000000000..7e13534c0bc881a8cc6e551b3a47dbfdd785d49e GIT binary patch literal 64 ncmd;JU|=xH*zksXud@ROkPX6j{SWxW@f6#`_&^~rz{UpvSndZF literal 0 HcmV?d00001 diff --git a/examples/helio_swifter_comparison/init_cond.py b/examples/helio_swifter_comparison/init_cond.py new file mode 100644 index 000000000..289f14f75 --- /dev/null +++ b/examples/helio_swifter_comparison/init_cond.py @@ -0,0 +1,323 @@ +import numpy as np +import sys +from astroquery.jplhorizons import Horizons +import astropy.constants as const +from scipy.io import FortranFile + +#Values from JPL Horizons +AU2M = np.longdouble(const.au.value) +GMSunSI = np.longdouble(const.GM_sun.value) +Rsun = np.longdouble(const.R_sun.value) +GC = np.longdouble(const.G.value) +JD = 86400 +year = np.longdouble(365.25 * JD) +c = np.longdouble(299792458.0) +MSun_over_Mpl = np.array([6023600.0, + 408523.71, + 328900.56, + 3098708., + 1047.3486, + 3497.898, + 22902.98, + 19412.24, + 1.35e8], dtype=np.longdouble) + +MU2KG = np.longdouble(GMSunSI / GC) #Conversion from mass unit to kg +DU2M = np.longdouble(AU2M) #Conversion from radius unit to centimeters +TU2S = np.longdouble(year) #Conversion from time unit to seconds +GU = np.longdouble(GC / (DU2M**3 / (MU2KG * TU2S**2))) + +GMSun = np.longdouble(GMSunSI / (DU2M**3 / TU2S**2)) + +# Simulation start, stop, and output cadence times +t_0 = 0 # simulation start time +deltaT = 0.25 * JD / TU2S # simulation step size +end_sim = 1 * year / TU2S # simulation end time +t_print = deltaT #year / TU2S #output interval to print results + + +# Solar oblatenes values: From Mecheri et al. (2004), using Corbard (b) 2002 values (Table II) +J2 = 0.0 #np.longdouble(2.198e-7) * (Rsun / DU2M)**2 +J4 = 0.0 #np.longdouble(-4.805e-9) * (Rsun / DU2M)**4 + +tstart = '2021-01-28' +tend = '2021-01-29' +tstep = '1d' +planetid = { + 'mercury' : '1', + 'venus' : '2', + 'earthmoon' : '3', + 'mars' : '4', + 'jupiter' : '5', + 'saturn' : '6', + 'uranus' : '7', + 'neptune' : '8', + 'plutocharon' : '9' +} +npl = 9 + +#Planet Msun/M ratio +MSun_over_Mpl = { + 'mercury' : np.longdouble(6023600.0), + 'venus' : np.longdouble(408523.71), + 'earthmoon' : np.longdouble(328900.56), + 'mars' : np.longdouble(3098708.), + 'jupiter' : np.longdouble(1047.3486), + 'saturn' : np.longdouble(3497.898), + 'uranus' : np.longdouble(22902.98), + 'neptune' : np.longdouble(19412.24), + 'plutocharon' : np.longdouble(1.35e8) +} + +#Planet radii in meters +Rpl = { + 'mercury' : np.longdouble(2439.4e3), + 'venus' : np.longdouble(6051.8e3), + 'earthmoon' : np.longdouble(6371.0084e3), # Earth only for radius + 'mars' : np.longdouble(3389.50e3), + 'jupiter' : np.longdouble(69911e3), + 'saturn' : np.longdouble(58232.0e3), + 'uranus' : np.longdouble(25362.e3), + 'neptune' : np.longdouble(24622.e3), + 'plutocharon' : np.longdouble(1188.3e3) +} + +pdata = {} +plvec = {} +Rhill = {} +THIRDLONG = np.longdouble(1.0) / np.longdouble(3.0) + +for key,val in planetid.items(): + pdata[key] = Horizons(id=val, id_type='majorbody',location='@sun', + epochs={'start': tstart, 'stop': tend, + 'step': tstep}) + plvec[key] = np.array([pdata[key].vectors()['x'][0], + pdata[key].vectors()['y'][0], + pdata[key].vectors()['z'][0], + pdata[key].vectors()['vx'][0], + pdata[key].vectors()['vy'][0], + pdata[key].vectors()['vz'][0] + ]) + + Rhill[key] = np.longdouble(pdata[key].elements()['a'][0]) * (3 * MSun_over_Mpl[key])**(-THIRDLONG) + +asteroidid = { + '100001' : 'Ceres', + '100002' : 'Pallas', + '100003' : 'Juno', + '100004' : 'Vesta' +} +ntp = 4 + +tdata = {} +tpvec = {} +for key,val in asteroidid.items(): + tdata[key] = Horizons(id=val, id_type='smallbody', location='@sun', + epochs={'start': tstart, 'stop': tend, + 'step': tstep}) + tpvec[key] = np.array([tdata[key].vectors()['x'][0], + tdata[key].vectors()['y'][0], + tdata[key].vectors()['z'][0], + tdata[key].vectors()['vx'][0], + tdata[key].vectors()['vy'][0], + tdata[key].vectors()['vz'][0] + ]) + + +if __name__ == '__main__': + # Convert from AU-day to AU-year just because I find it easier to keep track of the sim progress + for plid in plvec: + plvec[plid][3:] *= year / JD + + for tpid in tpvec: + tpvec[tpid][3:] *= year / JD + + # Names of all output files + swifter_input = "param.swifter.in" + swifter_pl = "pl.swifter.in" + swifter_tp = "tp.swifter.in" + swifter_bin = "bin.swifter.dat" + swifter_enc = "enc.swifter.dat" + + swiftest_input = "param.swiftest.in" + swiftest_pl = "pl.swiftest.in" + swiftest_tp = "tp.swiftest.in" + swiftest_cb = "cb.swiftest.in" + swiftest_bin = "bin.swiftest.dat" + swiftest_enc = "enc.swiftest.dat" + + iout = int(np.ceil(t_print / deltaT)) + rmin = Rsun / DU2M + rmax = np.longdouble(1000.0) + #Make Swifter files + + plfile = open(swifter_pl, 'w') + print(npl+1, f'! Planet input file generated using init_cond.py using JPL Horizons data for the major planets (and Pluto) for epoch {tstart}' ,file=plfile) + print(1,GMSun,file=plfile) + print('0.0 0.0 0.0',file=plfile) + print('0.0 0.0 0.0',file=plfile) + for i, plid in enumerate(plvec): + print(i + 2,"{:.23g}".format(GMSun * MSun_over_Mpl[plid]**-1),Rhill[plid], file=plfile) + print(Rpl[plid] / DU2M, file=plfile) + print(plvec[plid][0],plvec[plid][1],plvec[plid][2], file=plfile) + print(plvec[plid][3],plvec[plid][4],plvec[plid][5], file=plfile) + plfile.close() + + tpfile = open(swifter_tp, 'w') + print(ntp,file=tpfile) + for tpid, tp in tpvec.items(): + print(tpid, file=tpfile) + print(tp[0],tp[1],tp[2], file=tpfile) + print(tp[3],tp[4],tp[5], file=tpfile) + tpfile.close() + + sys.stdout = open(swifter_input, "w") + print('! Swifter input file generated using init_cond.py') + print('T0 ',t_0) + print('TSTOP ',end_sim) + print('DT ',deltaT) + print('PL_IN ',swifter_pl) + print('TP_IN ',swifter_tp) + print('IN_TYPE ASCII') + print('ISTEP_OUT ',iout) + print('ISTEP_DUMP ',iout) + print('BIN_OUT ',swifter_bin) + print('OUT_TYPE REAL8') + print('OUT_FORM XV') + print('OUT_STAT NEW') + print('J2 ',J2) + print('J4 ',J4) + print('CHK_CLOSE yes') + print('CHK_RMIN ',rmin) + print('CHK_RMAX ',rmax) + print('CHK_EJECT ',rmax) + print('CHK_QMIN ',rmin) + print('CHK_QMIN_COORD HELIO') + print('CHK_QMIN_RANGE ',rmin,rmax) + print('ENC_OUT ',swifter_enc) + print('EXTRA_FORCE no') + print('BIG_DISCARD no') + print('RHILL_PRESENT yes') + + sys.stdout = sys.__stdout__ + #Now make Swiftest files + #cbfile = open(swiftest_cb, 'w') + cbfile = FortranFile(swiftest_cb, 'w') + #print(1.0,file=cbfile) + #print(rmin,file=cbfile) + #print(J2,file=cbfile) + #print(J4,file=cbfile) + Msun = np.double(1.0) + cbfile.write_record(np.double(GMSun)) + cbfile.write_record(np.double(rmin)) + cbfile.write_record(np.double(J2)) + cbfile.write_record(np.double(J4)) + cbfile.close() + + #plfile = open(swiftest_pl, 'w') + plfile = FortranFile(swiftest_pl, 'w') + #print(npl,file=plfile) + plfile.write_record(npl) + + name = np.empty(npl, dtype=np.int32) + px = np.empty(npl, dtype=np.double) + py = np.empty(npl, dtype=np.double) + pz = np.empty(npl, dtype=np.double) + vx = np.empty(npl, dtype=np.double) + vy = np.empty(npl, dtype=np.double) + vz = np.empty(npl, dtype=np.double) + mass = np.empty(npl, dtype=np.double) + Gmass = np.empty(npl, dtype=np.double) + radius = np.empty(npl, dtype=np.double) + for i, plid in enumerate(plvec): + name[i] = i + 2 + px[i] = plvec[plid][0] + py[i] = plvec[plid][1] + pz[i] = plvec[plid][2] + vx[i] = plvec[plid][3] + vy[i] = plvec[plid][4] + vz[i] = plvec[plid][5] + Gmass[i] = GMSun * MSun_over_Mpl[plid]**-1 + radius[i] = Rpl[plid] / DU2M + plfile.write_record(name.T) + plfile.write_record(px.T) + plfile.write_record(py.T) + plfile.write_record(pz.T) + plfile.write_record(vx.T) + plfile.write_record(vy.T) + plfile.write_record(vz.T) + plfile.write_record(Gmass.T) + plfile.write_record(radius.T) + #for i, plid in enumerate(plvec): + # print(i + 2,"{:.23g}".format(np.longdouble(MSun_over_Mpl[plid]**-1)), file=plfile) + # print(Rpl[plid] / DU2M, file=plfile) + # print(plvec[plid][0], plvec[plid][1], plvec[plid][2], file=plfile) + # print(plvec[plid][3], plvec[plid][4], plvec[plid][5], file=plfile) + plfile.close() + #tpfile = open(swiftest_tp, 'w') + tpfile = FortranFile(swiftest_tp, 'w') + #print(ntp,file=tpfile) + tpfile.write_record(ntp) + #for tpid, tp in tpvec.items(): + # print(tpid, file=tpfile) + # print(tp[0],tp[1],tp[2], file=tpfile) + # print(tp[3],tp[4],tp[5], file=tpfile) + + name = np.empty(ntp, dtype=np.int32) + px = np.empty(ntp, dtype=np.double) + py = np.empty(ntp, dtype=np.double) + pz = np.empty(ntp, dtype=np.double) + vx = np.empty(ntp, dtype=np.double) + vy = np.empty(ntp, dtype=np.double) + vz = np.empty(ntp, dtype=np.double) + for i, tpid in enumerate(tpvec): + name[i] = int(tpid) + px[i] = tpvec[tpid][0] + py[i] = tpvec[tpid][1] + pz[i] = tpvec[tpid][2] + vx[i] = tpvec[tpid][3] + vy[i] = tpvec[tpid][4] + vz[i] = tpvec[tpid][5] + tpfile.write_record(name.T) + tpfile.write_record(px.T) + tpfile.write_record(py.T) + tpfile.write_record(pz.T) + tpfile.write_record(vx.T) + tpfile.write_record(vy.T) + tpfile.write_record(vz.T) + + tpfile.close() + + sys.stdout = open(swiftest_input, "w") + print('! Swiftest input file generated using init_cond.py') + print('T0 ',t_0) + print('TSTOP ',end_sim) + print('DT ',deltaT) + print('CB_IN ',swiftest_cb) + print('PL_IN ',swiftest_pl) + print('TP_IN ',swiftest_tp) + print('IN_TYPE REAL8') + print('ISTEP_OUT ',iout) + print('ISTEP_DUMP ',iout) + print('BIN_OUT ',swiftest_bin) + print('OUT_TYPE REAL8') + print('OUT_FORM XV') + print('OUT_STAT REPLACE') + print('CHK_CLOSE yes') + print('CHK_RMIN ',rmin) + print('CHK_RMAX ',rmax) + print('CHK_EJECT ',rmax) + print('CHK_QMIN ',rmin) + print('CHK_QMIN_COORD HELIO') + print('CHK_QMIN_RANGE ',rmin,rmax) + print('ENC_OUT ',swiftest_enc) + print('EXTRA_FORCE no') + print('BIG_DISCARD no') + print('ROTATION no') + print('GR no') + print('MU2KG ',MU2KG) + print('DU2M ',DU2M) + print('TU2S ',TU2S) + + + sys.stdout = sys.__stdout__ diff --git a/examples/helio_swifter_comparison/mars_ejecta/.idea/.gitignore b/examples/helio_swifter_comparison/mars_ejecta/.idea/.gitignore deleted file mode 100644 index 26d33521a..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/.idea/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# Default ignored files -/shelf/ -/workspace.xml diff --git a/examples/helio_swifter_comparison/mars_ejecta/cb.swiftest.in b/examples/helio_swifter_comparison/mars_ejecta/cb.swiftest.in deleted file mode 100644 index 2aafc8408..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/cb.swiftest.in +++ /dev/null @@ -1,4 +0,0 @@ -0.00029591220828563 -0.004650467260962157 -0.0 -0.0 diff --git a/examples/helio_swifter_comparison/mars_ejecta/config.swiftest.in b/examples/helio_swifter_comparison/mars_ejecta/config.swiftest.in deleted file mode 100644 index 3f459514f..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/config.swiftest.in +++ /dev/null @@ -1,33 +0,0 @@ -! -! Parameter file for the CHO run of the 4 giant planets and Pluto. -! -!NPLMAX -1 ! not used -!NTPMAX -1 ! not used -T0 0.0e0 -TSTOP 6000.000 ! simulation length in days -DT 1e0 ! stepsize in days -ISTEP_OUT 1 ! output cadence -ISTEP_DUMP 1 ! system dump cadence -CB_IN cb.swiftest.in -PL_IN pl.swiftest.in -TP_IN tp.in -IN_TYPE ASCII -BIN_OUT bin.swiftest.dat -OUT_TYPE REAL8 ! double precision real output -OUT_FORM XV ! osculating element output -OUT_STAT REPLACE -CHK_CLOSE yes ! check for planetary close encounters -CHK_RMIN 0.005e0 ! check for close solar encounters -CHK_RMAX 10000.0e0 ! discard outside of -CHK_EJECT -1.0 ! ignore this check -CHK_QMIN -1.0 ! ignore this check -!CHK_QMIN_COORD HELIO ! commented out here -!CHK_QMIN_RANGE 1.0 1000.0 ! commented out here -ENC_OUT enc.swiftest.dat -EXTRA_FORCE no ! no extra user-defined forces -BIG_DISCARD yes ! output all planets if anything discarded -ROTATION no -GR no -MU2KG 1.988409870698051e+30 -DU2M 149597870700.0 -TU2S 86400.0000 diff --git a/examples/helio_swifter_comparison/mars_ejecta/param.swifter.in b/examples/helio_swifter_comparison/mars_ejecta/param.swifter.in deleted file mode 100644 index f4035c4c0..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/param.swifter.in +++ /dev/null @@ -1,30 +0,0 @@ -! -! Parameter file for the CHO run of the 4 giant planets and Pluto. -! -!NPLMAX -1 ! not used -!NTPMAX -1 ! not used -T0 0.0e0 -TSTOP 6000.000 ! simulation length in days -DT 1e0 ! stepsize in days -ISTEP_OUT 1 ! output cadence -ISTEP_DUMP 1 ! system dump cadence -PL_IN pl.swifter.in -TP_IN tp.in -IN_TYPE ASCII -BIN_OUT bin.swifter.dat -OUT_TYPE REAL8 ! double precision real output -OUT_FORM XV ! osculating element output -OUT_STAT NEW -J2 0.0 ! no J2 term -J4 0.0 ! no J4 term -CHK_CLOSE yes ! check for planetary close encounters -CHK_RMIN 0.005 ! check for close solar encounters -CHK_RMAX 10000.0 ! discard outside of -CHK_EJECT -1.0 ! ignore this check -CHK_QMIN -1.0 ! ignore this check -!CHK_QMIN_COORD HELIO ! commented out here -!CHK_QMIN_RANGE 1.0 1000.0 ! commented out here -ENC_OUT enc.swifter.dat -EXTRA_FORCE no ! no extra user-defined forces -BIG_DISCARD yes ! output all planets if anything discarded -RHILL_PRESENT yes ! Hill's sphere radii in input file diff --git a/examples/helio_swifter_comparison/mars_ejecta/pl.swifter.in b/examples/helio_swifter_comparison/mars_ejecta/pl.swifter.in deleted file mode 100644 index ab7f6ec08..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/pl.swifter.in +++ /dev/null @@ -1,36 +0,0 @@ - 9 ! Solar system. Taken from JPL Horizons on 10-31-2012 00:00 (JD 2456231.5) - 1 2.9591220828563E-04 - .0 .0 .0 - .0 .0 .0 - 2 4.912576812862670E-11 1.475E-03 ! Mercury / Mass (Msun) / Rhill (AU) - 1.63104E-05 ! Radius (AU) - 3.347381871776144E-01 -2.106110537919978E-01 -4.792146121659843E-02 - 9.457239437449661E-03 2.510612575783642E-02 1.183593414707043E-03 - 3 7.243495778974390E-10 6.758E-03 ! Venus - 4.04538E-05 - -4.641166544325086E-01 5.473160240817795E-01 3.428518329144122E-02 - -1.549753193570599E-02 -1.319081534035637E-02 7.136685719563098E-04 - 4 8.997065158526820E-10 1.004E-02 ! Earth + Moon - 4.2587571E-05 - 7.844742229036105E-01 6.083466458892074E-01 -1.996912082982283E-05 - -1.081828010368904E-02 1.352675083743791E-02 2.330162751015549E-07 - 5 9.549592181631700E-11 7.246E-03 ! Mars - 2.26601E-05 - 3.248808297463504E-01 -1.392041319192106E+00 -3.714224198825128E-02 - 1.415678377567019E-02 4.380992498628390E-03 -2.558013868476858E-04 - 6 2.825362796108150E-07 0.3553 ! Jupiter - 4.67326E-04 - 1.873343037544675E+00 4.683322528183729E+00 -6.137078942429344E-02 - -7.104028854569467E-03 3.164193073442964E-03 1.458211211387848E-04 - 7 8.459765747874750E-08 0.4356 ! Saturn - 3.89257E-04 - -8.251865479985982E+00 -5.225008639958182E+00 4.193935221241906E-01 - 2.677374423933877E-03 -4.723961471952217E-03 -2.458643348128228E-05 - 8 1.292032638982330E-08 0.4686 ! Uranus - 1.69534E-04 - 1.992234896320000E+01 2.342619564376139E+00 -2.493547557095487E-01 - -4.936420700174518E-04 3.724868172847281E-03 2.027439791557233E-05 - 9 1.524368011623570E-08 0.7757 ! Neptune - 1.64601E-04 - 2.647158936403647E+01 -1.409652133490650E+01 -3.196444184043846E-01 - 1.449117851099529E-03 2.791630281764020E-03 -9.063088654405710E-05 diff --git a/examples/helio_swifter_comparison/mars_ejecta/pl.swiftest.in b/examples/helio_swifter_comparison/mars_ejecta/pl.swiftest.in deleted file mode 100644 index e1931fc7f..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/pl.swiftest.in +++ /dev/null @@ -1,33 +0,0 @@ -8 -2 4.91257681286267e-11 -1.63104e-05 -0.3347381871776144 -0.2106110537919978 -0.04792146121659843 -0.00945723943744966 0.02510612575783642 0.001183593414707043 -3 7.24349577897439e-10 -4.04538e-05 --0.4641166544325086 0.5473160240817795 0.03428518329144122 --0.01549753193570599 -0.01319081534035637 0.0007136685719563098 -4 8.99706515852682e-10 -4.2587571e-05 -0.7844742229036105 0.6083466458892074 -1.996912082982283e-05 --0.01081828010368904 0.01352675083743791 2.330162751015549e-07 -5 9.5495921816317e-11 -2.26601e-05 -0.3248808297463504 -1.392041319192106 -0.03714224198825128 -0.01415678377567019 0.00438099249862839 -0.0002558013868476858 -6 2.82536279610815e-07 -0.000467326 -1.873343037544675 4.683322528183729 -0.06137078942429344 --0.007104028854569467 0.003164193073442964 0.0001458211211387848 -7 8.45976574787475e-08 -0.000389257 --8.251865479985982 -5.225008639958182 0.4193935221241906 -0.002677374423933877 -0.004723961471952217 -2.458643348128228e-05 -8 1.29203263898233e-08 -0.000169534 -19.9223489632 2.342619564376139 -0.2493547557095487 --0.0004936420700174518 0.003724868172847281 2.027439791557233e-05 -9 1.52436801162357e-08 -0.000164601 -26.47158936403647 -14.0965213349065 -0.3196444184043846 -0.001449117851099529 0.00279163028176402 -9.06308865440571e-05 diff --git a/examples/helio_swifter_comparison/mars_ejecta/profmaker.sh b/examples/helio_swifter_comparison/mars_ejecta/profmaker.sh deleted file mode 100755 index 9b1adcd8c..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/profmaker.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -gprof ./swiftest_driver | /home/daminton/git/gprof2dot/gprof2dot.py | dot -Tpng -o swiftest_profile.png diff --git a/examples/helio_swifter_comparison/mars_ejecta/profswifter.sh b/examples/helio_swifter_comparison/mars_ejecta/profswifter.sh deleted file mode 100755 index a03493f54..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/profswifter.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/bash -gprof ./swifter_rmvs | /home/daminton/git/gprof2dot/gprof2dot.py | dot -Tpng -o swifter_profile.png diff --git a/examples/helio_swifter_comparison/mars_ejecta/start.in b/examples/helio_swifter_comparison/mars_ejecta/start.in deleted file mode 100644 index d6d7c3850..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/start.in +++ /dev/null @@ -1 +0,0 @@ -param.in diff --git a/examples/helio_swifter_comparison/mars_ejecta/swiftest_rmvs_vs_swifter_rmvs.ipynb b/examples/helio_swifter_comparison/mars_ejecta/swiftest_rmvs_vs_swifter_rmvs.ipynb deleted file mode 100644 index 2ef9e28a5..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/swiftest_rmvs_vs_swifter_rmvs.ipynb +++ /dev/null @@ -1,241 +0,0 @@ -{ - "cells": [ - { - "cell_type": "code", - "execution_count": 1, - "metadata": {}, - "outputs": [], - "source": [ - "import numpy as np\n", - "import swiftestio as swio\n", - "import matplotlib.pyplot as plt" - ] - }, - { - "cell_type": "code", - "execution_count": 2, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swifter file param.swifter.in\n" - ] - } - ], - "source": [ - "inparfile = 'param.swifter.in'\n", - "param = swio.read_swifter_param(inparfile)\n", - "swifterdat = swio.swifter2xr(param)" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "Reading Swiftest file param.swiftest.in\n" - ] - } - ], - "source": [ - "param_file_name = 'param.swiftest.in'\n", - "config = swio.read_swiftest_config(param_file_name)\n", - "swiftestdat = swio.swiftest2xr(config)" - ] - }, - { - "cell_type": "code", - "execution_count": 4, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff = swiftestdat - swifterdat" - ] - }, - { - "cell_type": "code", - "execution_count": 5, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff = swiftdiff.rename({'time' : 'time (d)'})" - ] - }, - { - "cell_type": "code", - "execution_count": 6, - "metadata": {}, - "outputs": [], - "source": [ - "swiftdiff['rmag'] = np.sqrt(swiftdiff['px']**2 + swiftdiff['py']**2 + swiftdiff['pz']**2)\n", - "swiftdiff['vmag'] = np.sqrt(swiftdiff['vx']**2 + swiftdiff['vy']**2 + swiftdiff['vz']**2)" - ] - }, - { - "cell_type": "code", - "execution_count": 7, - "metadata": {}, - "outputs": [], - "source": [ - "plidx = swiftdiff.id.values[swiftdiff.id.values < 10]\n", - "tpidx = swiftdiff.id.values[swiftdiff.id.values > 10]" - ] - }, - { - "cell_type": "code", - "execution_count": 8, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['rmag'].sel(id=plidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{r}_{swiftest} - \\mathbf{r}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric position differences \\n Planets only\")\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-planets-rmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['vmag'].sel(id=plidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{v}_{swiftest} - \\mathbf{v}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric velocity differences \\n Planets only\")\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-planets-vmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 14, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "No handles with labels found to put in legend.\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['rmag'].sel(id=tpidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{r}_{swiftest} - \\mathbf{r}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric position differences \\n Test Particles only\")\n", - "legend = ax.legend()\n", - "legend.remove()\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-testparticles-rmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": 15, - "metadata": {}, - "outputs": [ - { - "name": "stderr", - "output_type": "stream", - "text": [ - "No handles with labels found to put in legend.\n" - ] - }, - { - "data": { - "image/png": "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\n", - "text/plain": [ - "
" - ] - }, - "metadata": { - "needs_background": "light" - }, - "output_type": "display_data" - } - ], - "source": [ - "fig, ax = plt.subplots()\n", - "swiftdiff['vmag'].sel(id=tpidx).plot.line(ax=ax, x=\"time (d)\")\n", - "ax.set_ylabel(\"$|\\mathbf{v}_{swiftest} - \\mathbf{v}_{swifter}|$\")\n", - "ax.set_title(\"Heliocentric velocity differences \\n Test Particles only\")\n", - "legend = ax.legend()\n", - "legend.remove()\n", - "fig.savefig(\"rmvs_swifter_comparison-mars_ejecta-testparticles-vmag.png\", facecolor='white', transparent=False, dpi=300)" - ] - }, - { - "cell_type": "code", - "execution_count": null, - "metadata": {}, - "outputs": [], - "source": [] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.8.6" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/examples/helio_swifter_comparison/mars_ejecta/tp.in b/examples/helio_swifter_comparison/mars_ejecta/tp.in deleted file mode 100644 index d5eb0e3f8..000000000 --- a/examples/helio_swifter_comparison/mars_ejecta/tp.in +++ /dev/null @@ -1,601 +0,0 @@ - 200 - 6000200 - 0.321794727714005 -1.39371227734394 -3.555372224179648E-002 - 1.263074812292130E-002 3.554726326213714E-003 5.297001107625803E-004 - 6000201 - 0.327226184487893 -1.39016803345029 -3.472777857996821E-002 - 1.531652992677778E-002 5.307306923696688E-003 9.381180638637231E-004 - 6000202 - 0.327531202012097 -1.39478453402311 -3.768059236489047E-002 - 1.546735696093592E-002 3.024509922426058E-003 -5.220083559665117E-004 - 6000203 - 0.322202594471783 -1.39306474804903 -3.456946701305916E-002 - 1.283243270995610E-002 3.874920791552106E-003 1.016400989319078E-003 - 6000204 - 0.323275102327213 -1.39231827262319 -4.063286630727199E-002 - 1.336277331700188E-002 4.244042778378470E-003 -1.981867830972686E-003 - 6000205 - 0.325545380653237 -1.39090814848439 -3.352094137611809E-002 - 1.448539519756952E-002 4.941330064430509E-003 1.534882714168952E-003 - 6000206 - 0.322100032022230 -1.38941601200018 -3.760532734717235E-002 - 1.278171696789352E-002 5.679171344404378E-003 -4.847908241938090E-004 - 6000207 - 0.325337949472342 -1.39379280734375 -3.374182250017822E-002 - 1.438282328833895E-002 3.514905332112549E-003 1.425659990227191E-003 - 6000208 - 0.326082121124172 -1.39530189188417 -3.547938702480286E-002 - 1.475080609012429E-002 2.768683467912135E-003 5.664578686714714E-004 - 6000209 - 0.327275685332658 -1.39441408865592 -3.527833381550945E-002 - 1.534100742400883E-002 3.207690138697890E-003 6.658759573365761E-004 - 6000210 - 0.327855145958387 -1.39318452150569 -3.930697139978061E-002 - 1.562754285445135E-002 3.815694439606817E-003 -1.326230758891795E-003 - 6000211 - 0.328078710851062 -1.39251497560023 -3.504731288890989E-002 - 1.573809266562045E-002 4.146775820637334E-003 7.801126762871974E-004 - 6000212 - 0.321277816542297 -1.39195915492794 -3.578170284173104E-002 - 1.237514255024041E-002 4.421621614318133E-003 4.169667921656008E-004 - 6000213 - 0.324665498950826 -1.39490683098100 -3.970778222771389E-002 - 1.405030561400833E-002 2.964035733299919E-003 -1.524426284193035E-003 - 6000214 - 0.324929781829885 -1.39405065211182 -4.042853272331495E-002 - 1.418098991790633E-002 3.387404586890700E-003 -1.880827641470143E-003 - 6000215 - 0.327555988964697 -1.39432357646482 -3.871524764041770E-002 - 1.547961377324917E-002 3.252447191181946E-003 -1.033631374975754E-003 - 6000216 - 0.321438220244275 -1.39139099683337 -3.554066697282077E-002 - 1.245446000814854E-002 4.702568096196656E-003 5.361557644332466E-004 - 6000217 - 0.327269239795964 -1.39111145972877 -3.426641502936644E-002 - 1.533782019342066E-002 4.840795408002274E-003 1.166256090318398E-003 - 6000218 - 0.323989604933645 -1.39344910147082 -4.061548100580529E-002 - 1.371608517771453E-002 3.684863230669170E-003 -1.973271034886913E-003 - 6000219 - 0.321638711062574 -1.39087780679511 -3.541758920393877E-002 - 1.255360000208438E-002 4.956333618793669E-003 5.970160540173710E-004 - 6000220 - 0.322548442178556 -1.38969900689356 -3.516409557966647E-002 - 1.300344971633673E-002 5.539234202882858E-003 7.223652175672305E-004 - 6000221 - 0.326425905823290 -1.38912149826721 -3.516059934460978E-002 - 1.492080296716386E-002 5.824804396075300E-003 7.240940584451341E-004 - 6000222 - 0.325686803560988 -1.39394570042399 -4.039235894274407E-002 - 1.455532690983334E-002 3.439301774920795E-003 -1.862940196963350E-003 - 6000223 - 0.327419177059503 -1.39257520407836 -3.429421078579946E-002 - 1.541196213929194E-002 4.116993654016758E-003 1.152511465264746E-003 - 6000224 - 0.324490052620445 -1.39553030085443 -3.872774571953116E-002 - 1.396354978011187E-002 2.655738325987235E-003 -1.039811505806850E-003 - 6000225 - 0.321731345032329 -1.39031854790183 -3.853949894445081E-002 - 1.259940624537157E-002 5.232879566177696E-003 -9.467260253928260E-004 - 6000226 - 0.325601002353804 -1.39413056037783 -3.398693779254160E-002 - 1.451289937508628E-002 3.347891031734538E-003 1.304453798319087E-003 - 6000227 - 0.325825665573909 -1.38837078808078 -3.783072474317082E-002 - 1.462399229429218E-002 6.196020414654821E-003 -5.962467834347196E-004 - 6000228 - 0.328007765778950 -1.39171771880483 -3.491579285982123E-002 - 1.570301128843478E-002 4.541008506865058E-003 8.451475491903844E-004 - 6000229 - 0.326038941297358 -1.38837178473418 -3.696108906496336E-002 - 1.472945425064948E-002 6.195527583046642E-003 -1.662237200565085E-004 - 6000230 - 0.324865697509285 -1.38818972404806 -3.707510223923227E-002 - 1.414930108941243E-002 6.285554126260012E-003 -2.226016903873118E-004 - 6000231 - 0.326890450931510 -1.39246034816528 -3.388258567264032E-002 - 1.515051423076515E-002 4.173788347277624E-003 1.356054508127195E-003 - 6000232 - 0.325593633813168 -1.38828971482136 -3.764909195799739E-002 - 1.450925573155059E-002 6.236110043272472E-003 -5.064318314410409E-004 - 6000233 - 0.326626976582762 -1.39216397200456 -3.371070451979964E-002 - 1.502022973415419E-002 4.320342344240131E-003 1.441047410021331E-003 - 6000234 - 0.327898875134393 -1.39098636673654 -3.929119504411583E-002 - 1.564916633966053E-002 4.902652198234570E-003 -1.318429564711382E-003 - 6000235 - 0.325772175388830 -1.39276944665725 -4.081849758657961E-002 - 1.459754212231259E-002 4.020943329837438E-003 -2.073659984154833E-003 - 6000236 - 0.325970862049605 -1.39573308065969 -3.729140206480187E-002 - 1.469578998479103E-002 2.555466459007209E-003 -3.295590242806717E-004 - 6000237 - 0.323334466127931 -1.38903625723277 -3.899099401712434E-002 - 1.339212791235488E-002 5.866954932989258E-003 -1.169984223183693E-003 - 6000238 - 0.321058043138336 -1.39159433514890 -3.730357920900053E-002 - 1.226646757888280E-002 4.602020053452453E-003 -3.355804571435673E-004 - 6000239 - 0.321631711087942 -1.39236740484015 -3.509861335813708E-002 - 1.255013860944605E-002 4.219747562605665E-003 7.547452891357343E-004 - 6000240 - 0.321306936119327 -1.39062854909901 -3.740848791004924E-002 - 1.238954178664758E-002 5.079588173238877E-003 -3.874563887900095E-004 - 6000241 - 0.322359878582366 -1.39481226441940 -3.804012263745659E-002 - 1.291020757217519E-002 3.010797617075125E-003 -6.997912057971096E-004 - 6000242 - 0.323817379375385 -1.38838475633633 -3.772374286905647E-002 - 1.363092197200557E-002 6.189113301486290E-003 -5.433456957891204E-004 - 6000243 - 0.327623726544369 -1.39464240098381 -3.788413992758530E-002 - 1.551310908886966E-002 3.094792785121600E-003 -6.226598686018013E-004 - 6000244 - 0.322826324940355 -1.38886200520861 -3.642775302359531E-002 - 1.314085897803487E-002 5.953120198633154E-003 9.750372819152632E-005 - 6000245 - 0.322612433934003 -1.39373086883468 -3.975745217634516E-002 - 1.303509277261627E-002 3.545533085870808E-003 -1.548987400995745E-003 - 6000246 - 0.321924589943174 -1.39047906318775 -3.905523030161998E-002 - 1.269496323622005E-002 5.153506931519558E-003 -1.201748195765625E-003 - 6000247 - 0.325483402999438 -1.39432969787986 -3.410254622383869E-002 - 1.445474808727309E-002 3.249420234359466E-003 1.247286994996116E-003 - 6000248 - 0.324075789932299 -1.39390925319708 -3.387081182165206E-002 - 1.375870249214517E-002 3.457324434934150E-003 1.361876517960287E-003 - 6000249 - 0.325555351421543 -1.39061734515993 -3.362701221631959E-002 - 1.449032560743936E-002 5.085128369354139E-003 1.482432120453008E-003 - 6000250 - 0.326533132333845 -1.39533418173792 -3.601686458585766E-002 - 1.497382502421540E-002 2.752716572605950E-003 3.006824950365570E-004 - 6000251 - 0.328077463583129 -1.39411605620772 -3.770484336908437E-002 - 1.573747590852224E-002 3.355063147389858E-003 -5.340001490527292E-004 - 6000252 - 0.321651628711733 -1.39378675143995 -3.597380335900138E-002 - 1.255998760462024E-002 3.517899894512744E-003 3.219756884387962E-004 - 6000253 - 0.324493522176533 -1.38860008548191 -3.882967355197441E-002 - 1.396526542860112E-002 6.082635955702965E-003 -1.090213438304715E-003 - 6000254 - 0.324521711140188 -1.39586389310030 -3.745606427432058E-002 - 1.397920448930016E-002 2.490781479023323E-003 -4.109822564850102E-004 - 6000255 - 0.323857759005521 -1.39310641830337 -4.070010820644245E-002 - 1.365088915215276E-002 3.854315415219456E-003 -2.015118039299293E-003 - 6000256 - 0.324036458712472 -1.39214287853430 -4.089940117322854E-002 - 1.373925373669473E-002 4.330772779566417E-003 -2.113665711887594E-003 - 6000257 - 0.322090781783657 -1.39468966511415 -3.693872754859708E-002 - 1.277714285021657E-002 3.071421312874804E-003 -1.551662531073200E-004 - 6000258 - 0.328092592928615 -1.39374096057231 -3.586344633457473E-002 - 1.574495716493310E-002 3.540542858309311E-003 3.765457421963371E-004 - 6000259 - 0.324548049062538 -1.39233312653552 -3.331554270885758E-002 - 1.399222823514643E-002 4.236697719935751E-003 1.636449572938168E-003 - 6000260 - 0.324887975354043 -1.39268402922437 -4.094045138727274E-002 - 1.416031718188453E-002 4.063181093387097E-003 -2.133964486694073E-003 - 6000261 - 0.321944774836254 -1.39352845277138 -3.514035858345473E-002 - 1.270494439243692E-002 3.645625087381753E-003 7.341028406686787E-004 - 6000262 - 0.327218902932329 -1.38903404006224 -3.771600840082730E-002 - 1.531292929618219E-002 5.868051293781019E-003 -5.395211060156568E-004 - 6000263 - 0.325421465012036 -1.39138633273825 -4.089966505983452E-002 - 1.442412059147267E-002 4.704874428056443E-003 -2.113796200239817E-003 - 6000264 - 0.324143614425125 -1.39411979216184 -3.398376362544507E-002 - 1.379224078514325E-002 3.353215768678313E-003 1.306023380953205E-003 - 6000265 - 0.324251383572956 -1.39481065425279 -3.453953133960193E-002 - 1.384553116897805E-002 3.011593822657939E-003 1.031203774355344E-003 - 6000266 - 0.323082300628443 -1.39404098553295 -3.438431714855358E-002 - 1.326743548852136E-002 3.392184579203928E-003 1.107955089402535E-003 - 6000267 - 0.325299655987546 -1.39040136408079 -4.060268324575995E-002 - 1.436388767880525E-002 5.191928087451827E-003 -1.966942715894272E-003 - 6000268 - 0.328389849750416 -1.39205995084950 -3.873156679977102E-002 - 1.589194663687427E-002 4.371779396419775E-003 -1.041700978227703E-003 - 6000269 - 0.325793463819930 -1.38928905744628 -3.967831695053032E-002 - 1.460806896313280E-002 5.741948651668003E-003 -1.509856103742432E-003 - 6000270 - 0.326601355314686 -1.39233804164542 -4.057608377821496E-002 - 1.500756036413905E-002 4.234267264663880E-003 -1.953789639491635E-003 - 6000271 - 0.321827451960849 -1.39213071131237 -3.479524070321862E-002 - 1.264692981972560E-002 4.336789306004781E-003 9.047589577125814E-004 - 6000272 - 0.321663381504649 -1.39142897193463 -3.917019157646589E-002 - 1.256579920152172E-002 4.683789923007624E-003 -1.258594988989431E-003 - 6000273 - 0.324648930551282 -1.39538104296497 -3.904801998382525E-002 - 1.404211276485815E-002 2.729544330582880E-003 -1.198182791282209E-003 - 6000274 - 0.321223963022878 -1.39253230185508 -3.603509083528145E-002 - 1.234851271435078E-002 4.138208222307412E-003 2.916698615769088E-004 - 6000275 - 0.321349228011334 -1.39221979031449 -3.561402108543606E-002 - 1.241045455438754E-002 4.292740946056133E-003 4.998831493500657E-004 - 6000276 - 0.324379742702741 -1.38833977818834 -3.620042042538130E-002 - 1.390900301999063E-002 6.211354386424082E-003 2.099166187150847E-004 - 6000277 - 0.321457479810322 -1.39117525342277 -3.868176372657838E-002 - 1.246398360268161E-002 4.809250290424065E-003 -1.017074033132608E-003 - 6000278 - 0.325405274076550 -1.39361725382059 -3.366648162894059E-002 - 1.441611439318668E-002 3.601714171383542E-003 1.462915030537829E-003 - 6000279 - 0.321794234123648 -1.39021314640619 -3.573859188553418E-002 - 1.263050404917571E-002 5.284999178073548E-003 4.382845760531595E-004 - 6000280 - 0.326444232064343 -1.39553980455841 -3.753707767299938E-002 - 1.492986504512957E-002 2.651038873102111E-003 -4.510422847790933E-004 - 6000281 - 0.322277249464589 -1.39203923743843 -3.998141216047151E-002 - 1.286934859267273E-002 4.382021897621130E-003 -1.659732579536102E-003 - 6000282 - 0.328312462659902 -1.39188336185765 -3.539912210963739E-002 - 1.585367976884838E-002 4.459100260935347E-003 6.061477820066648E-004 - 6000283 - 0.325347229643059 -1.39100999963996 -4.082441159349795E-002 - 1.438741220705580E-002 4.890966047611239E-003 -2.076584380468826E-003 - 6000284 - 0.325755425615411 -1.38888217640230 -3.916570950307285E-002 - 1.458925958623789E-002 5.943145816580859E-003 -1.256378664407702E-003 - 6000285 - 0.325383104362951 -1.39054381044671 -4.065574588764872E-002 - 1.440515177010779E-002 5.121490288988412E-003 -1.993181473557695E-003 - 6000286 - 0.325529431096013 -1.39548980174177 -3.555264887114687E-002 - 1.447750835756422E-002 2.675764588624088E-003 5.302308780096619E-004 - 6000287 - 0.321386839414644 -1.39364212905941 -3.740484666220886E-002 - 1.242905288386607E-002 3.589413702731343E-003 -3.856558410548179E-004 - 6000288 - 0.325609144161828 -1.39058365051225 -3.365164289696592E-002 - 1.451692538887061E-002 5.101789916224030E-003 1.470252582503900E-003 - 6000289 - 0.325746594379357 -1.39018221747378 -3.388130434928219E-002 - 1.458489265963108E-002 5.300293116209953E-003 1.356688105171851E-003 - 6000290 - 0.328670099790430 -1.39148012214160 -3.754968804313675E-002 - 1.603052648558429E-002 4.658496838509829E-003 -4.572779420004985E-004 - 6000291 - 0.327050766991314 -1.39494919091028 -3.584795596588932E-002 - 1.522978835080585E-002 2.943089322051995E-003 3.842055196892361E-004 - 6000292 - 0.324537148578145 -1.39587795189979 -3.718291882528427E-002 - 1.398683809326467E-002 2.483829593105807E-003 -2.759155317796403E-004 - 6000293 - 0.325510509540737 -1.38957080345959 -3.425440936567027E-002 - 1.446815190477895E-002 5.602629064425047E-003 1.172192728395570E-003 - 6000294 - 0.325364297568245 -1.39459990856101 -3.430333353770083E-002 - 1.439585206486989E-002 3.115804712620871E-003 1.148000388020130E-003 - 6000295 - 0.323644249841663 -1.39514928477911 -3.905298580505075E-002 - 1.354531176267529E-002 2.844145614251118E-003 -1.200638322614567E-003 - 6000296 - 0.322252155329533 -1.39173521301220 -3.994150826731383E-002 - 1.285693988279573E-002 4.532357858282674E-003 -1.640000644880718E-003 - 6000297 - 0.326793296706268 -1.39091455480311 -4.029063745626598E-002 - 1.510247278236859E-002 4.938162226599772E-003 -1.812640299750235E-003 - 6000298 - 0.328394129335298 -1.39145794911307 -3.861054959678920E-002 - 1.589406283363007E-002 4.669461100775097E-003 -9.818596105701817E-004 - 6000299 - 0.325717727002889 -1.39559209734865 -3.590486599481333E-002 - 1.457061813298568E-002 2.625180796653218E-003 3.560642812509859E-004 - 6000300 - 0.321281416206461 -1.39340867720813 -3.702359920936095E-002 - 1.237692253541057E-002 3.704852481010806E-003 -1.971341397410737E-004 - 6000301 - 0.326826923545244 -1.39251344124293 -4.043303848440993E-002 - 1.511910079875579E-002 4.147534539539541E-003 -1.883055679299622E-003 - 6000302 - 0.325221626988922 -1.39387263555342 -3.377034941755341E-002 - 1.432530339591360E-002 3.475431363727050E-003 1.411553815991447E-003 - 6000303 - 0.322406645286088 -1.39162516754770 -4.006538258520391E-002 - 1.293333307369588E-002 4.586773849880030E-003 -1.701254817159826E-003 - 6000304 - 0.327187048763822 -1.39463651865951 -3.547316576113219E-002 - 1.529717784133024E-002 3.097701514809212E-003 5.695341992875920E-004 - 6000305 - 0.327480662501029 -1.39487649003504 -3.693682090078323E-002 - 1.544236585728670E-002 2.979038920099771E-003 -1.542234415895329E-004 - 6000306 - 0.328551533470727 -1.39151193343580 -3.818397457052056E-002 - 1.597189704651028E-002 4.642766584423178E-003 -7.709240381764704E-004 - 6000307 - 0.322630404860865 -1.38945264563622 -3.538899387690294E-002 - 1.304397915252749E-002 5.661056507596596E-003 6.111560559036752E-004 - 6000308 - 0.328374974048021 -1.39213603553404 -3.876134862395392E-002 - 1.588459080353605E-002 4.334156550504728E-003 -1.056427686881741E-003 - 6000309 - 0.324324666115425 -1.38831319086554 -3.634772132746308E-002 - 1.388176839359332E-002 6.224501457414479E-003 1.370783178738140E-004 - 6000310 - 0.327780384205777 -1.39040540380995 -3.520423097607128E-002 - 1.559057418045742E-002 5.189930496106032E-003 7.025188076919263E-004 - 6000311 - 0.326421010606110 -1.39541002836368 -3.608433683151303E-002 - 1.491838234857564E-002 2.715211443533721E-003 2.673183834932795E-004 - 6000312 - 0.324795021294935 -1.39575370968382 -3.816709106533256E-002 - 1.411435265874821E-002 2.545265686000613E-003 -7.625753735535234E-004 - 6000313 - 0.325813555169143 -1.39541693890006 -3.874684061627268E-002 - 1.461800386317468E-002 2.711794276901274E-003 -1.049253673599004E-003 - 6000314 - 0.322857896534282 -1.38930726976145 -3.533330948140715E-002 - 1.315647070358410E-002 5.732942908509505E-003 6.386912352132688E-004 - 6000315 - 0.326219515200231 -1.39471810186507 -3.471690125726086E-002 - 1.481874559968870E-002 3.057359724732503E-003 9.434967526056666E-004 - 6000316 - 0.321329945274699 -1.39230542391461 -3.567221135978340E-002 - 1.240091950231233E-002 4.250396290733629E-003 4.711088468913174E-004 - 6000317 - 0.324943199595914 -1.39100652024179 -4.085233942880207E-002 - 1.418762482145983E-002 4.892686562876645E-003 -2.090394316735189E-003 - 6000318 - 0.326617044426315 -1.39248593326675 -4.055213917054404E-002 - 1.501531841732557E-002 4.161136861160018E-003 -1.941949355335786E-003 - 6000319 - 0.322850100717639 -1.38930020663682 -3.535283888796843E-002 - 1.315261577785102E-002 5.736435527964740E-003 6.290342082008193E-004 - 6000320 - 0.327167129230231 -1.39467550377465 -3.550717986735132E-002 - 1.528732790178609E-002 3.078423903439586E-003 5.527146844942592E-004 - 6000321 - 0.326175366886518 -1.39179718675643 -3.352228413895547E-002 - 1.479691485656030E-002 4.501712681218141E-003 1.534218736134025E-003 - 6000322 - 0.323968917553573 -1.39007740521288 -3.395618173788408E-002 - 1.370585554848606E-002 5.352121359507512E-003 1.319662250746563E-003 - 6000323 - 0.323157023880416 -1.38871984144043 -3.622802058959314E-002 - 1.330438512447146E-002 6.023418256348253E-003 1.962687113654486E-004 - 6000324 - 0.322467171269080 -1.39052754228481 -3.454951097363686E-002 - 1.296326235244168E-002 5.129534674689875E-003 1.026268980502423E-003 - 6000325 - 0.328300367708115 -1.39034678218645 -3.766648081609209E-002 - 1.584769897901974E-002 5.218918094875141E-003 -5.150303862311877E-004 - 6000326 - 0.327360300143949 -1.39032093899113 -3.953640998478093E-002 - 1.538284830205775E-002 5.231697204908905E-003 -1.439685031354920E-003 - 6000327 - 0.326573187554760 -1.39309481142322 -4.043854310486605E-002 - 1.499363178839726E-002 3.860054860233954E-003 -1.885777639553315E-003 - 6000328 - 0.325274808255286 -1.39252110692220 -3.334038631599733E-002 - 1.435160081177285E-002 4.143743964976811E-003 1.624164745722223E-003 - 6000329 - 0.322448036910301 -1.39211775354247 -4.012807498610159E-002 - 1.295380067120641E-002 4.343196747700902E-003 -1.732255360214964E-003 - 6000330 - 0.326810673793556 -1.38893153269665 -3.834409546944328E-002 - 1.511106551665390E-002 5.918739797571082E-003 -8.501016538046097E-004 - 6000331 - 0.326775470290585 -1.38869840010547 -3.741564841183009E-002 - 1.509365786127752E-002 6.034020706053717E-003 -3.909971599293355E-004 - 6000332 - 0.326271250871605 -1.39390875709412 -4.021126897748652E-002 - 1.484432818840653E-002 3.457569751128591E-003 -1.773393662065399E-003 - 6000333 - 0.321666944784208 -1.39307414833960 -3.528651321326542E-002 - 1.256756119499773E-002 3.870272475198349E-003 6.618313559388317E-004 - 6000334 - 0.325766832048710 -1.39507466523029 -3.493921370497112E-002 - 1.459489991300033E-002 2.881043970394314E-003 8.335662585066534E-004 - 6000335 - 0.321552673105825 -1.39151724509758 -3.527455850230447E-002 - 1.251105539788419E-002 4.640140039617423E-003 6.677427985786109E-004 - 6000336 - 0.326440517111881 -1.39496814513121 -3.518250039097470E-002 - 1.492802805145723E-002 2.933716716541827E-003 7.132642876744128E-004 - 6000337 - 0.328149349552533 -1.39379829625323 -3.817632697865712E-002 - 1.577302254667368E-002 3.512191140723280E-003 -7.671424075890959E-004 - 6000338 - 0.324135308775169 -1.38971487157048 -3.416375884586458E-002 - 1.378813375374246E-002 5.531389335037621E-003 1.217018182548996E-003 - 6000339 - 0.324286880142571 -1.38901868791716 -3.482913889326955E-002 - 1.386308374183996E-002 5.875642721572888E-003 8.879967618943014E-004 - 6000340 - 0.328695490885568 -1.39186332148561 -3.764840312220126E-002 - 1.604308203819967E-002 4.469009953454875E-003 -5.060912114703549E-004 - 6000341 - 0.326127505166542 -1.39330528092113 -3.372351078671609E-002 - 1.477324788433473E-002 3.755980544394189E-003 1.434714884496157E-003 - 6000342 - 0.323411133267291 -1.38892035601416 -3.885662321348482E-002 - 1.343003877428764E-002 5.924266515672206E-003 -1.103539680879768E-003 - 6000343 - 0.323443535356482 -1.38878773000395 -3.566309895402712E-002 - 1.344606116849591E-002 5.989848281256044E-003 4.756148081073266E-004 - 6000344 - 0.326161896812670 -1.39219123381745 -4.077210626406107E-002 - 1.479025408749908E-002 4.306861747038268E-003 -2.050720103554825E-003 - 6000345 - 0.327496529611136 -1.39347379619798 -3.470387250659136E-002 - 1.545021192830949E-002 3.672652022584027E-003 9.499392933331112E-004 - 6000346 - 0.326907660359911 -1.39442320185806 -3.939126722457996E-002 - 1.515902406000240E-002 3.203183783680173E-003 -1.367913902440976E-003 - 6000347 - 0.327627930876646 -1.39427354730877 -3.562233577430311E-002 - 1.551518807423184E-002 3.277185931186497E-003 4.957716483304529E-004 - 6000348 - 0.325119576127018 -1.39376660753008 -3.370627018966749E-002 - 1.427484062701359E-002 3.527860785085645E-003 1.443240126207252E-003 - 6000349 - 0.321582888441476 -1.39198483014723 -3.515228871706261E-002 - 1.252599647208718E-002 4.408925566155315E-003 7.282035511970817E-004 - 6000350 - 0.328649590429548 -1.39230144150209 -3.789609952169283E-002 - 1.602038488443426E-002 4.252365539779506E-003 -6.285737258914244E-004 - 6000351 - 0.325091488310059 -1.39588396719579 -3.697135848001232E-002 - 1.426095158198591E-002 2.480855110709554E-003 -1.713018066956808E-004 - 6000352 - 0.323629747250521 -1.38958719080047 -3.983511560394539E-002 - 1.353814042779786E-002 5.594525746332192E-003 -1.587390913967920E-003 - 6000353 - 0.321678639713746 -1.38999980605140 -3.649592552125010E-002 - 1.257334417924268E-002 5.390493093753963E-003 6.379335151967012E-005 - 6000354 - 0.321979789899611 -1.39044531600697 -3.911106486620910E-002 - 1.272225886697657E-002 5.170194455300030E-003 -1.229357631657783E-003 - 6000355 - 0.325389900698438 -1.39279507601704 -4.088553189135913E-002 - 1.440851246594727E-002 4.008269958578387E-003 -2.106807539867057E-003 - 6000356 - 0.325843612080240 -1.38834809342622 -3.662007773836583E-002 - 1.463286659858156E-002 6.207242613925633E-003 2.401761837715437E-006 - 6000357 - 0.321369009956186 -1.39207775902686 -3.555942305231640E-002 - 1.242023645816423E-002 4.362973493929667E-003 5.268811371797942E-004 - 6000358 - 0.325504520827021 -1.39403046328794 -4.038166123959698E-002 - 1.446519056696509E-002 3.397387686834489E-003 -1.857650327660951E-003 - 6000359 - 0.321990553923499 -1.38951059135313 -3.685720838148137E-002 - 1.272758153098724E-002 5.632403135476837E-003 -1.148561291719788E-004 - 6000360 - 0.324610041911226 -1.38980909225812 -3.401440587559276E-002 - 1.402288285910944E-002 5.484798481249997E-003 1.290871203314320E-003 - 6000361 - 0.328509070048447 -1.39256561942476 -3.832567067658864E-002 - 1.595089945937337E-002 4.121733135395790E-003 -8.409908433077421E-004 - 6000362 - 0.324576175323637 -1.39320821636194 -4.080080161764887E-002 - 1.400613629028089E-002 3.803977654144154E-003 -2.064909567216185E-003 - 6000363 - 0.322653205268223 -1.39479071554500 -3.866475003855334E-002 - 1.305525364512712E-002 3.021453243581057E-003 -1.008660994860108E-003 - 6000364 - 0.325278470241920 -1.39300006526267 -4.085198724804461E-002 - 1.435341161456094E-002 3.906905553258331E-003 -2.090220168121022E-003 - 6000365 - 0.327882444238280 -1.39058964691285 -3.907161492253900E-002 - 1.564104148409440E-002 5.098824777354270E-003 -1.209850168875113E-003 - 6000366 - 0.327925534924085 -1.39112239948916 -3.496856334495498E-002 - 1.566234924454749E-002 4.835385844669870E-003 8.190532590849669E-004 - 6000367 - 0.327291588883165 -1.38906313116244 -3.674455074075982E-002 - 1.534887151431583E-002 5.853666138781197E-003 -5.914845181920610E-005 - 6000368 - 0.326403910822977 -1.39105116007004 -3.374528293181369E-002 - 1.490992673743835E-002 4.870612772465192E-003 1.423948853656114E-003 - 6000369 - 0.328034117962957 -1.39191633393057 -3.935146673723238E-002 - 1.571604208647744E-002 4.442796017492191E-003 -1.348233100558018E-003 - 6000370 - 0.323887294249176 -1.39308506929055 -3.356970859695257E-002 - 1.366549393007587E-002 3.864872212877050E-003 1.510767984034018E-003 - 6000371 - 0.324195814984085 -1.39153924083899 -4.089966051523319E-002 - 1.381805325447577E-002 4.629263443433466E-003 -2.113793952996017E-003 - 6000372 - 0.323696388851772 -1.38910872113090 -3.494303980046445E-002 - 1.357109379693476E-002 5.831122516909043E-003 8.316743061108993E-004 - 6000373 - 0.328595123870093 -1.39262055299375 -3.630079724885421E-002 - 1.599345190855066E-002 4.094569229621872E-003 1.602816391441369E-004 - 6000374 - 0.326120765455020 -1.39220930951942 -3.349891101613327E-002 - 1.476991518827874E-002 4.297923557253797E-003 1.545776428773127E-003 - 6000375 - 0.325484317791356 -1.39317547361155 -4.077391072541323E-002 - 1.445520043948558E-002 3.820168500697788E-003 -2.051612385251454E-003 - 6000376 - 0.325938226310969 -1.39515654081679 -3.513803924942247E-002 - 1.467965205409683E-002 2.840557601902009E-003 7.352497199315036E-004 - 6000377 - 0.321076313569735 -1.39158800158611 -3.754184390774611E-002 - 1.227550205973084E-002 4.605151914460645E-003 -4.533991233011673E-004 - 6000378 - 0.322061849593275 -1.38999211007948 -3.550101842230587E-002 - 1.276283627396840E-002 5.394298647622158E-003 5.557614356104747E-004 - 6000379 - 0.328448014596534 -1.39176878090750 -3.857068065062026E-002 - 1.592070836541795E-002 4.515758988744939E-003 -9.621449567273610E-004 - 6000380 - 0.327573537859497 -1.39067587171533 -3.953481342703309E-002 - 1.548829146402245E-002 5.056187780465731E-003 -1.438895555174500E-003 - 6000381 - 0.325341975557433 -1.39322163371681 -4.078006057193613E-002 - 1.438481413288207E-002 3.797342953904623E-003 -2.054653401055379E-003 - 6000382 - 0.326945407039128 -1.39080439717213 -3.413440781683218E-002 - 1.517768928158405E-002 4.992633682997575E-003 1.231531868836375E-003 - 6000383 - 0.326864905896984 -1.38950094451344 -3.503286762493725E-002 - 1.513788255720786E-002 5.637173367032906E-003 7.872556636559166E-004 - 6000384 - 0.321872038730314 -1.39444412969432 -3.725713409567794E-002 - 1.266897737328358E-002 3.192835252123807E-003 -3.126139777195664E-004 - 6000385 - 0.325656830678744 -1.38929012479731 -3.972454209455978E-002 - 1.454050572555626E-002 5.741420861043140E-003 -1.532713811330532E-003 - 6000386 - 0.321381796697484 -1.39297273615133 -3.582742182750125E-002 - 1.242655932853529E-002 3.920419428636525E-003 3.943593729806181E-004 - 6000387 - 0.325031722246969 -1.38871352884892 -3.520767103604314E-002 - 1.423139807333841E-002 6.026539747343834E-003 7.008177446325606E-004 - 6000388 - 0.321818492658012 -1.39053648944325 -3.893028585473215E-002 - 1.264249956582932E-002 5.125110426032039E-003 -1.139964859192371E-003 - 6000389 - 0.328229706719982 -1.39063530392342 -3.842585640223736E-002 - 1.581275807751381E-002 5.076248004065306E-003 -8.905313275931080E-004 - 6000390 - 0.327031282654416 -1.39046595458131 -3.436136073991577E-002 - 1.522015361013151E-002 5.159988959845626E-003 1.119306722521987E-003 - 6000391 - 0.326576412217448 -1.39384168926042 -3.418873736070407E-002 - 1.499522634041712E-002 3.490733886441843E-003 1.204666645302896E-003 - 6000392 - 0.322057300552805 -1.39399573472489 -3.539654307306134E-002 - 1.276058683507447E-002 3.414560490852700E-003 6.074230806596391E-004 - 6000393 - 0.327117831128816 -1.39014808504543 -3.464203976347065E-002 - 1.526295065839501E-002 5.317171139694695E-003 9.805147472618755E-004 - 6000394 - 0.323831937101924 -1.38978966102672 -4.008662335125708E-002 - 1.363812057058993E-002 5.494406961976909E-003 -1.711758088260099E-003 - 6000395 - 0.323291350089045 -1.39111881770597 -4.052780949033966E-002 - 1.337080761514683E-002 4.837156987941165E-003 -1.929918658028077E-003 - 6000396 - 0.322050969058998 -1.39140096523577 -3.967628168503533E-002 - 1.275745599714884E-002 4.697638856237326E-003 -1.508849692523487E-003 - 6000397 - 0.322065436123730 -1.39461505964254 -3.660470991700977E-002 - 1.276460976469764E-002 3.108312708032919E-003 1.000094133619592E-005 - 6000398 - 0.325123972979440 -1.39448560316462 -4.010971214210824E-002 - 1.427701481097967E-002 3.172327182835760E-003 -1.723175182590891E-003 - 6000399 - 0.327666613656848 -1.39046306711613 -3.928421544112214E-002 - 1.553431618507078E-002 5.161416772263869E-003 -1.314978245571975E-003 diff --git a/examples/helio_swifter_comparison/param.swifter.in b/examples/helio_swifter_comparison/param.swifter.in new file mode 100644 index 000000000..29449bc76 --- /dev/null +++ b/examples/helio_swifter_comparison/param.swifter.in @@ -0,0 +1,26 @@ +! Swifter input file generated using init_cond.py +T0 0 +TSTOP 1.0 +DT 0.0006844626967830253251 +PL_IN pl.swifter.in +TP_IN tp.swifter.in +IN_TYPE ASCII +ISTEP_OUT 1 +ISTEP_DUMP 1 +BIN_OUT bin.swifter.dat +OUT_TYPE REAL8 +OUT_FORM XV +OUT_STAT NEW +J2 0.0 +J4 0.0 +CHK_CLOSE yes +CHK_RMIN 0.0046504672609621575315 +CHK_RMAX 1000.0 +CHK_EJECT 1000.0 +CHK_QMIN 0.0046504672609621575315 +CHK_QMIN_COORD HELIO +CHK_QMIN_RANGE 0.0046504672609621575315 1000.0 +ENC_OUT enc.swifter.dat +EXTRA_FORCE no +BIG_DISCARD no +RHILL_PRESENT yes diff --git a/examples/helio_swifter_comparison/param.swiftest.in b/examples/helio_swifter_comparison/param.swiftest.in new file mode 100644 index 000000000..c32a270f5 --- /dev/null +++ b/examples/helio_swifter_comparison/param.swiftest.in @@ -0,0 +1,29 @@ +! Swiftest input file generated using init_cond.py +T0 0 +TSTOP 1.0 +DT 0.0006844626967830253251 +CB_IN cb.swiftest.in +PL_IN pl.swiftest.in +TP_IN tp.swiftest.in +IN_TYPE REAL8 +ISTEP_OUT 1 +ISTEP_DUMP 1 +BIN_OUT bin.swiftest.dat +OUT_TYPE REAL8 +OUT_FORM XV +OUT_STAT REPLACE +CHK_CLOSE yes +CHK_RMIN 0.0046504672609621575315 +CHK_RMAX 1000.0 +CHK_EJECT 1000.0 +CHK_QMIN 0.0046504672609621575315 +CHK_QMIN_COORD HELIO +CHK_QMIN_RANGE 0.0046504672609621575315 1000.0 +ENC_OUT enc.swiftest.dat +EXTRA_FORCE no +BIG_DISCARD no +ROTATION no +GR no +MU2KG 1.988409870698050917e+30 +DU2M 149597870700.0 +TU2S 31557600.0 diff --git a/examples/helio_swifter_comparison/pl.swifter.in b/examples/helio_swifter_comparison/pl.swifter.in new file mode 100644 index 000000000..3f27a30f5 --- /dev/null +++ b/examples/helio_swifter_comparison/pl.swifter.in @@ -0,0 +1,40 @@ +10 ! Planet input file generated using init_cond.py using JPL Horizons data for the major planets (and Pluto) for epoch 2021-01-28 +1 39.476926408897625193 +0.0 0.0 0.0 +0.0 0.0 0.0 +2 6.553709809565313959502e-06 0.0014751229680878679603 +1.6306381826061645943e-05 +0.1030256871817049 0.2897796042186122 0.0142290454578165 +-11.740042086233977 3.834312447819755 1.3902497138650993 +3 9.6633133995815373809037e-05 0.0067591276497677570562 +4.0453784346544178454e-05 +0.06110217931597178 -0.7245466902000399 -0.01346904334134495 +7.311995450520371 0.5941125626853079 -0.4137913834645579 +4 0.00012002693582795244940133 0.010044756567554867971 +4.25875607065040958e-05 +-0.6061796332978544 0.7761214562175627 -3.47496925510033e-05 +-5.054824318940399 -3.891667462296022 0.0001972008358555219 +5 1.2739802010675940622175e-05 0.0072464490746761575477 +2.265740805092889601e-05 +0.2751944182282239 1.519376889861282 0.02508924669876031 +-4.835983592340031 1.3448550964716055 0.14681413009269897 +6 0.037692251088985675999687 0.35528523591470134027 +0.00046732617030490929307 +3.20013535487531 -3.953498299871184 -0.05517746960976119 +2.111393786386104 1.8660266390974023 -0.05498927104920874 +7 0.011285899820091272946487 0.43763064535027282272 +0.00038925687730393611812 +5.607382154387239 -8.258649115739544 -0.07958445350697703 +1.5748468612768933 1.1414574628814913 -0.0825033126704916 +8 0.0017236589478267731051497 0.46909694410284686372 +0.00016953449859497231466 +15.2822545079529 12.53905417292343 -0.1514152417388489 +-0.9198471609855067 1.0454391001033898 0.015745441522152032 +9 0.0020336100526728304385693 0.78071933134573728207 +0.000164587904124493665 +29.47483430798945 -5.147687601125057 -0.5733452880201296 +0.1919169794537526 1.1385109490430123 -0.027844342997168703 +10 2.9242167710294538257026e-07 0.053834666988627116535 +7.943294877391593783e-06 +14.14001068477669 -31.141412045097 -0.7565711098949569 +1.0733960936923237 0.23003153432240253 -0.3342452292632091 diff --git a/examples/helio_swifter_comparison/pl.swiftest.in b/examples/helio_swifter_comparison/pl.swiftest.in new file mode 100644 index 0000000000000000000000000000000000000000..6ee1ca38380823cc94be008e9a26b0914f75ea10 GIT binary patch literal 700 zcmd;JU|`?`Vi4c}Vih1}0%B$$W&vVWAZ7z%b|41HgVb^XF-V;U5bt;@Zu%sCm;H}j z2VS4>SZ`lcKjF%y)W`e3*-hm+Ip?DNwaxP<9U{S5LBDY21z|Sw!Ui=f*bV$fm&bFQ|a$wKroGHdC_6K0*$?0jR%c=C* zi_dpUT`{$LKj#na2sR6*{WrFn-uSm+rv00QXUi-c*6d#@CpvLy{FePW1{<-<%tkJ zpv?0oN9hTJ!xs0j`IC%(+F#_f2uRL`cB`-Y*8bKeevfZAH0`g(t=2zx>X7|6 z{>cY>)z|EwVYmC~d%3Oqzk1EsI7xnjeZV>sE34)?`?DS^O1Y(6h5Pq76C>xpn%i~@ z&s?7QAw<$%$|sudewn=eI%yBSh1*}*Jvvb(oaVFG{`qx*tNgO<_AfN=Ztk&-v2VJP zA$n>>g8f}@CgmgZC)>gNyLZlMHZ#eOb^)1YMRQGA?S;%I6f%ae*;_|!x8yza-EP+{ tvw3+7?Ckrdo$OoMWN9B0!S1-oLd`yW#(|LKlT_`au1r>HTk!yF9su;c8`b~- literal 0 HcmV?d00001 diff --git a/examples/helio_swifter_comparison/swiftest_vs_swifter.ipynb b/examples/helio_swifter_comparison/swiftest_vs_swifter.ipynb new file mode 100644 index 000000000..997defb80 --- /dev/null +++ b/examples/helio_swifter_comparison/swiftest_vs_swifter.ipynb @@ -0,0 +1,363 @@ +{ + "cells": [ + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "import pandas as pd\n", + "import swiftestio as swio\n", + "from astroquery.jplhorizons import Horizons" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading Swifter file param.swifter.in\n" + ] + } + ], + "source": [ + "inparfile = 'param.swifter.in'\n", + "param = swio.read_swifter_param(inparfile)\n", + "swifterdat = swio.swifter2xr(param)" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Reading Swiftest file param.swiftest.in\n" + ] + } + ], + "source": [ + "param_file_name = 'param.swiftest.in'\n", + "config = swio.read_swiftest_config(param_file_name)\n", + "swiftestdat = swio.swiftest2xr(config)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [], + "source": [ + "swiftdiff = swiftestdat - swifterdat" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "swiftdiff = swiftdiff.rename({'time' : 'time (y)'})" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [], + "source": [ + "swiftdiff['dr'] = np.sqrt(swiftdiff['px']**2 + swiftdiff['py']**2 + swiftdiff['pz']**2)\n", + "swiftdiff['dv'] = np.sqrt(swiftdiff['vx']**2 + swiftdiff['vy']**2 + swiftdiff['vz']**2)" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['dr'].plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[]" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['dv'].sel(id=2).plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" + ] + }, + "execution_count": 9, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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INOAIWa2ERgSW8bMcsysBCD2Ivkk4GVgPfBnd18b2/8hoBmwwMxWm9mMsDsgIlJXY8aM4aKLLmLDhg3k5eXxxBNPMGXKFBYsWEDnzp1ZsGABU6b825tST1qRvIju7hXA4DjrtwGX1VguAUritOuU1gJFRNLgmWeeibt+4cKFIVeSGvokuoiIBKIAERGRQBQgIiISiAJEREQCUYCIiEggChAREQlEASIiEpK6Tud+77330qlTJ84//3xefvnlI+vffPNNevToQadOnfjRj37E4ck4vvzyS7797W/TqVMn+vfvz+bNm4/sM2zYMJo3b84VV1yRsv4oQEREQlKX6dzXrVtHcXExa9euZf78+fzwhz/k4MGDANx4443MnDmTjRs3snHjxiPHfOKJJzj77LMpLS3lxz/+MZMnTz5ynp/+9KfMnj07pf1RgIiIhKQu07nPnTuX0aNHc/rpp9O+fXs6derEihUrKC8vZ9euXVx00UWYGWPHjj1qn8PHGjlyJAsXLjwyOhk8eDDNmjVLaX+ims5dRCQyd20s493d+1J6zO5Nm/DzznW/NdGxpnPfunUrAwYMONIuLy+PrVu30rBhQ/Ly8v5t/eF92ratnoM2KyuLr3zlK1RUVNCyZcvA/ToejUBERE5C8SYZN7Njrj/ePumiEYiIZJwgI4V0OdZ07nl5eWzZ8v/vqVdWVkZOTg55eXmUlZX92/qa++Tl5VFVVcXnn3/+b5fMUkkjEBGRCB1rOvcrr7yS4uJivvzyS95//302btxIv379yM7OplmzZixfvhx358knnzxqn8PHmjNnDoMGDUrrCAR3z5hHnz59XEQy07p166IuwUePHu1t2rTxrKwsz83N9ccff9w/+eQTHzRokHfq1MkHDRrkFRUVR9rfc8893qFDB+/SpYuXlJQcWf/GG294YWGhd+jQwW+66SY/dOiQu7vv27fPR44c6R07dvSvfvWr/t577x3Z5+KLL/aWLVt648aNPTc31+fPnx+3xng/J2Clx3lONT/2zfxOOX379vWVK1dGXYaIRGD9+vUUFBREXcZJL97PyczedPe+tdvqEpaIiASiABERkUAUICIiEogCREREAlGAiIhIIAoQEREJRAEiIhKSqKZzX716NRdddBGFhYVccMEF/OlPf0pJfxQgIiIhiWo69zPOOIMnn3zyyLFuvfVWdu7cmXR/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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['pz'].plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" + ] + }, + "execution_count": 10, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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bw/AZZddxpIlS7j66qtDryVVNAIREQlBfn4+S5cuZffu3bg7CxYsoLCwaU+togAREQnBwIEDGT16NH379qV3797s37+fiROje7BVKugSlohISKZNm8a0adOiLiNlNAIREZFAFCAiIhKIAkRERAJRgIiISCAKEBERCUQBIiIigShARERCMmPGDIqLiykqKuKee+6JupykKUBEREKwevVqHnroIZYtW8aqVat47rnnWL9+fdRlJUUBIiISgrVr1zJo0CBOPvlksrKyuPDCC3n66aejLisp+ia6iGSc559/ng8++CClx+zYsSMlJSWH3V5cXMztt99OVVUVJ510EmVlZfTv3z+lNYRNASIiEoLCwkKmTJnCsGHDaNWqFeeccw5ZWU37LbhpVy8iEsCRRgrpNGHCBCZMmADAbbfdRl5eXiR1pIoCREQkJNu2baNDhw68//77PPXUU7z66qtRl5QUBYiISEguv/xyqqqqaN68Offddx+nnXZa1CUlRQEiIhKSRYsWRV1CSuljvCIiEogCREREAlGAiIhIIAoQEREJRAEiIiKBKEBERCSQSALEzNqa2XwzWx/7M+6Hoc1shJmtM7NyM5tab/3dZvYvM3vTzJ42szahFS8iEtC3v/1tOnToQHFx8cF1H3/8McOGDaN79+4MGzaMTz75JMIKGyeqEchUYIG7dwcWxJYPYWbNgPuAEqAXMNbMesU2zweK3f1s4N/AT0KpWkQkCddeey3z5s07ZN306dMZOnQo69evZ+jQoUyfPj2i6hovqgAZCcyK/TwL+EacNgOAcnff4O7VQGlsP9z9H+5eE2u3FGjaE8qISEa44IILaNu27SHr5syZw/jx4wEYP348zzzzTASVBRPVN9HPcPdKAHevNLMOcdrkApvqLVcAA+O0+zbw59SXKCLHq3//+2d8tnNtSo/ZulUhPXr8tNH7bd26lezsbACys7PZtm1bSutKp7QFiJm9CHSMs+n2RA8RZ503OMftQA3w+BHqmAhMBMjPz0/w1CIicjRpCxB3/8/DbTOzrWaWHRt9ZAPxIrcC6FRvOQ/YUu8Y44FLgKHu7hyGu88EZgL079//sO1EJHMEGSmkyxlnnEFlZSXZ2dlUVlbSoUO8CzLHpqjugcwFxsd+Hg/MidPmNaC7mXU2sxbAmNh+mNkIYApwqbvvDqFeEZG0uPTSS5k1q+6W8KxZsxg5cmTEFSUuqgCZDgwzs/XAsNgyZpZjZmUAsZvkk4EXgLXAX9x9TWz/3wOtgflmttLMHgy7AyIijTV27FjOO+881q1bR15eHo888ghTp05l/vz5dO/enfnz5zN16hc+lHrMiuQmurtXAUPjrN8CXFRvuQwoi9OuW1oLFBFJgyeeeCLu+gULFoRcSWrom+giIhKIAkRERAJRgIiISCAKEBERCUQBIiIigShAREQkEAWIiEhIGjud+1133UW3bt0466yzeOGFFw6uf/311+nduzfdunXj+9//Pgcm4/j888/55je/Sbdu3Rg4cCAbN248uM+IESNo06YNl1xyScr6owAREQlJY6Zzf/vttyktLWXNmjXMmzePG2+8kdraWgBuuOEGZs6cyfr161m/fv3BYz7yyCOcdtpplJeX84Mf/IApU6YcPM+PfvQjZs+endL+KEBERELSmOnc58yZw5gxYzjxxBPp3Lkz3bp1Y9myZVRWVrJjxw7OO+88zIxx48Ydss+BY40ePZoFCxYcHJ0MHTqU1q1bp7Q/UU3nLiISmZ+ur2D1zj0pPWZxq5P4WffGP5rocNO5b968mUGDBh1sl5eXx+bNm2nevDl5eXlfWH9gn06d6uagzcrK4ktf+hJVVVW0a9cucL+ORCMQEZFjULxJxs3ssOuPtE+6aAQiIhknyEghXQ43nXteXh6bNv3/Z+pVVFSQk5NDXl4eFRUVX1hff5+8vDxqamr49NNPv3DJLJU0AhERidDhpnO/9NJLKS0t5fPPP+fdd99l/fr1DBgwgOzsbFq3bs3SpUtxdx599NFD9jlwrCeffJIhQ4akdQSCu2fMq1+/fi4imentt9+OugQfM2aMd+zY0bOysjw3N9cffvhh/+ijj3zIkCHerVs3HzJkiFdVVR1sf+edd3qXLl28R48eXlZWdnD9a6+95kVFRd6lSxefNGmS79+/393d9+zZ46NHj/auXbv6l7/8ZX/nnXcO7nP++ed7u3btvGXLlp6bm+vz5s2LW2O8vydgucd5TzU//MP8jjv9+/f35cuXR12GiERg7dq1FBYWRl3GMS/e35OZve7u/Ru21SUsEREJRAEiIiKBKEBERCQQBYiIiASiABERkUAUICIiEogCREQkJFFN575y5UrOO+88ioqKOPvss/nzn/+ckv4oQEREQhLVdO4nn3wyjz76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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['vx'].plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" + ] + }, + "execution_count": 11, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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RxoppMsrr7xCp06daNu2LQCXXXYZixcv5uqrrw69llTRCEREJAQdO3ZkyZIl7N69G3entLSUgoLGPbWKAkREJAQDBw5k9OjR9O3bl969e7N//34mTozuwVapoEtYIiIhueuuu7jrrruiLiNlNAIREZFAFCAiIhKIAkRERAJRgIiISCAKEBERCUQBIiIigShARERCMn36dHr16kVhYSH33Xdf1OUkTQEiIhKCVatW8cgjj7B06VJWrlzJiy++yLp166IuKykKEBGREKxZs4ZBgwZx8sknk5WVxYUXXshzzz0XdVlJ0TfRRSTjvPTSS3z88ccpPWb79u0pKio67PZevXpxxx13UFlZyUknnURJSQn9+/dPaQ1hU4CIiISgoKCAKVOmMGzYMFq0aME555xDVlbjfgtu3NWLiARwpJFCOk2YMIEJEyYAcPvtt5OXlxdJHamiABERCcnWrVtp164dH330Ec8++yxvvPFG1CUlRQEiIhKSyy+/nMrKSpo2bcqDDz7IaaedFnVJSVGAiIiEZOHChVGXkFL6GK+IiASiABERkUAUICIiEogCREREAlGAiIhIIAoQEREJJJIAMbPWZjbfzNbF/oz7YWgzG2Fma82szMym1ll/r5n9w8zeMbPnzKxVaMWLiAR0/fXX065dO3r16nVw3WeffcawYcPo1q0bw4YN4/PPP4+wwoaJagQyFSh1925AaWz5EGbWBHgQKAJ6AmPNrGds83ygl7ufDfwT+M9QqhYRScK1117LvHnzDlk3bdo0hg4dyrp16xg6dCjTpk2LqLqGiypARgKzYj/PAr4Vp80AoMzd17t7FVAc2w93/5u7V8faLQEa94QyIpIRLrjgAlq3bn3Iujlz5jB+/HgAxo8fz/PPPx9BZcFE9U30M9y9AsDdK8ysXZw2ucDGOsvlwMA47a4H/pj6EkXkePXPf/6MHTvXpPSYLVsU0L37Txu835YtW8jOzgYgOzubrVu3prSudEpbgJjZK0D7OJvuSPQQcdZ5vXPcAVQDTx2hjonARICOHTsmeGoRETmatAWIu//74baZ2RYzy46NPrKBeJFbDnSos5wHbK5zjPHAJcBQd3cOw91nAjMB+vfvf9h2IpI5gowU0uWMM86goqKC7OxsKioqaNcu3gWZY1NU90DmAuNjP48H5sRp8ybQzcw6mVkzYExsP8xsBDAFuNTdd4dQr4hIWlx66aXMmlV7S3jWrFmMHDky4ooSF1WATAOGmdk6YFhsGTPLMbMSgNhN8snAy8Aa4E/uvjq2/++AlsB8M1thZjPC7oCISEONHTuW8847j7Vr15KXl8djjz3G1KlTmT9/Pt26dWP+/PlMnfovH0o9ZkVyE93dK4GhcdZvBi6qs1wClMRp1zWtBYqIpMHTTz8dd31paWnIlaSGvokuIiKBKEBERCQQBYiIiASiABERkUAUICIiEogCREREAlGAiIiEpKHTud9zzz107dqVs846i5dffvng+rfeeovevXvTtWtXfvCDH3BgMo4vv/ySb3/723Tt2pWBAweyYcOGg/uMGDGCVq1acckll6SsPwoQEZGQNGQ69/fee4/i4mJWr17NvHnzuOmmm6ipqQHgxhtvZObMmaxbt45169YdPOZjjz3GaaedRllZGT/84Q+ZMmXKwfP8+Mc/Zvbs2SntjwJERCQkDZnOfc6cOYwZM4YTTzyRTp060bVrV5YuXUpFRQXbt2/nvPPOw8wYN27cIfscONbo0aMpLS09ODoZOnQoLVu2TGl/oprOXUQkMj9dV86qnXtSesxeLU7iZ90a/miiw03nvmnTJgYNGnSwXV5eHps2baJp06bk5eX9y/oD+3ToUDsHbVZWFl/5yleorKykTZs2gft1JBqBiIgcg+JNMm5mh11/pH3SRSMQEck4QUYK6XK46dzz8vLYuPH/P1OvvLycnJwc8vLyKC8v/5f1dffJy8ujurqaL7744l8umaWSRiAiIhE63HTul156KcXFxXz55Zd88MEHrFu3jgEDBpCdnU3Lli1ZsmQJ7s4TTzxxyD4HjvXMM88wZMiQtI5AcPeMefXr189FJDO99957UZfgY8aM8fbt23tWVpbn5ub6o48+6p9++qkPGTLEu3bt6kOGDPHKysqD7e+++27v3Lmzd+/e3UtKSg6uf/PNN72wsNA7d+7skyZN8v3797u7+549e3z06NHepUsX/+pXv+rvv//+wX3OP/98b9OmjTdv3txzc3N93rx5cWuM9/cELPM476nmh3+Y33Gnf//+vmzZsqjLEJEIrFmzhoKCgqjLOObF+3sys7fcvX/9trqEJSIigShAREQkEAWIiIgEogAREZFAFCAiIhKIAkRERAJRgIiIhCSq6dxXrFjBeeedR2FhIWeffTZ//OMfU9If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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['vy'].plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "[,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ,\n", + " ]" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + }, + { + "data": { + "image/png": "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EYiISAgKCgpYunQpu3fvxt1ZsGABRUVNe2oVBYiISAgGDhzI6NGj6du3L71792b//v1MnBjdg61SQZewRERCcuedd3LnnXdGXUbKaAQiIiKBKEBERCQQBYiIiASiABERkUAUICIiEogCREREAlGAiIiEZNq0afTq1Yvi4mLuvffeqMtJmgJERCQEq1ev5qGHHmLZsmWsWrWK5557jvXr10ddVlIUICIiIVi7di2DBg3i5JNPJisri4suuoinn3466rKSom+ii0jGef755/nggw9SeswOHTpQUlJy2O29evXi9ttvp6qqipNOOomysjL69++f0hrCpgAREQlBUVERkydPZtiwYbRq1Ypzzz2XrKym/RbctKsXEQngSCOFdJowYQITJkwA4LbbbiM/Pz+SOlJFASIiEpJt27aRnZ3N+++/z1NPPcWrr74adUlJUYCIiITkiiuuoKqqiubNm3P//fdz+umnR11SUhQgIiIhWbRoUdQlpJQ+xisiIoEoQEREJBAFiIiIBKIAERGRQBQgIiISiAJEREQCiSRAzKytmc03s/WxP+N+GNrMRpjZOjMrN7Mp9dbfY2b/MLM3zexpM2sTWvEiIgF9/etfJzs7m169eh1c9/HHHzNs2DC6devGsGHD+OSTTyKssHGiGoFMARa4ezdgQWz5EGbWDLgfKAF6AmPNrGds83ygl7ufA/wT+O9QqhYRScJ1113HvHnzDlk3depUhg4dyvr16xk6dChTp06NqLrGiypARgIzYz/PBL4Sp80AoNzdN7h7NVAa2w93/6u718TaLQWa9oQyIpIRLrzwQtq2bXvIujlz5jB+/HgAxo8fzzPPPBNBZcFE9U30M929EsDdK80sO06bPGBTveUKYGCcdl8H/pD6EkXkePXPf/6Ez3auTekxW7cqonv3HzV6v61bt5KTkwNATk4O27ZtS2ld6ZS2ADGzF4EOcTbdnugh4qzzBue4HagBnjhCHROBiQAFBQUJnlpERI4mbQHi7v9xuG1mttXMcmKjjxwgXuRWAB3rLecDW+odYzxwKTDU3Z3DcPcZwAyA/v37H7adiGSOICOFdDnzzDOprKwkJyeHyspKsrPjXZA5NkV1D2QuMD7283hgTpw2rwHdzKyTmbUAxsT2w8xGAJOBy9x9dwj1ioikxWWXXcbMmXW3hGfOnMnIkSMjrihxUQXIVGCY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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "swiftdiff['vz'].plot.line(x=\"time (y)\")" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.8.6" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/examples/helio_swifter_comparison/tp.swifter.in b/examples/helio_swifter_comparison/tp.swifter.in new file mode 100644 index 000000000..74f1cc8cb --- /dev/null +++ b/examples/helio_swifter_comparison/tp.swifter.in @@ -0,0 +1,13 @@ +4 +100001 +2.89438049451288 0.2060633440061593 -0.5267473063848516 +-0.3678177533773833 3.511709555047983 0.17870206084842993 +100002 +2.402157085583321 -2.063650726188297 1.221462218318817 +1.9929454704322658 1.7670859767767524 -1.3920312816007854 +100003 +-1.762420789095617 -2.766072787712991 0.6998178860363623 +2.5146401571141386 -1.536845348435182 0.24681698261461876 +100004 +-2.136886752000925 1.023684503224212 0.2293900119298221 +-1.391819314123066 -3.7994616469964826 0.2829665835356411 diff --git a/examples/helio_swifter_comparison/tp.swiftest.in b/examples/helio_swifter_comparison/tp.swiftest.in new file mode 100644 index 0000000000000000000000000000000000000000..5fe4b5618a2c2358d645755a4759220addef5211 GIT binary patch literal 280 zcmd;JU|?VYVi4c}VgVpt*v81P2#6O0@e&{gi75c_`sW|MZct};_*xaLG|!ybp~pvG z<$=+k{d{L`h(t&*9ssEU;nUN$%=Jh(Wgm6;mVa~;!+|v`d5*qPU_0<4Fo%IT@q;}` z4G7QKbyQ3C_JjRfR`!3F?*43Ve0gitifPaGFLUKVo}uFl9Jvog5r`u=G(%BQ3r z|F_>Fy self%nbody, xh => self%xh, status => self%status) where (status(1:ntp) == ACTIVE) - xh(1:ntp, 1) = xh(1:ntp, 1) + pt(1) * dt - xh(1:ntp, 2) = xh(1:ntp, 2) + pt(2) * dt - xh(1:ntp, 3) = xh(1:ntp, 3) + pt(3) * dt + xh(1, 1:ntp) = xh(1, 1:ntp) + pt(1) * dt + xh(2, 1:ntp) = xh(2, 1:ntp) + pt(2) * dt + xh(3, 1:ntp) = xh(3, 1:ntp) + pt(3) * dt end where end associate diff --git a/src/main/swiftest_driver.f90 b/src/main/swiftest_driver.f90 index b2384757a..bce2fd38c 100644 --- a/src/main/swiftest_driver.f90 +++ b/src/main/swiftest_driver.f90 @@ -22,7 +22,6 @@ program swiftest_driver real(DP) :: start_wall_time !! Wall clock time at start of execution real(DP) :: finish_wall_time !! Wall clock time when execution has finished integer(I4B) :: iu !! Unit number of binary file - integer(I4B) :: ntp, npl character(*),parameter :: statusfmt = '("Time = ", ES12.5, "; fraction done = ", F6.3, "; ' // & 'Number of active pl, tp = ", I5, ", ", I5)' @@ -57,8 +56,6 @@ program swiftest_driver !$ write(*,'(a,i3,/)') ' Number of threads = ', nthreads write(*, *) " *************** Main Loop *************** " do iloop = 1, LOOPMAX - ntp = nbody_system%tp%nbody - npl = nbody_system%pl%nbody !> Step the system forward in time call nbody_system%step(param, t, dt)