A set of Fortran programs derived from the three-degree of freedom (3DOF) reentry trajectory computer code TDOF documented in "Users Manual for the 3DOF Trajectory Computer Program" presented as reference [1].
Although the TDOF computer program was developed for, and employed in, Aerospace Nuclear Safety Program studies pertaining to issues involving launch and reentry of space vehicles containing radioactive material (i.e., see [2],[3]), it is solely used herein to generate ballistic trajectories of notional ejecta material from an hypothesized cosmic body impacting Saginaw Bay, Michigan [4],[5].
The primary motivation to hand code the TDOF program from the code listing in Appendix I of reference [1], incorporate necessary changes to make it operational and add functional features was to provide a means to generate ballistic trajectories for comparative verification of another independently developed ballistic trajectory simulation - btsim. This effort was conducted in several incremental steps to arrive at traj3D1.
- Hand code TDOF.f while maintaining line by line statement syntax match with Appendix I card deck listing.
- Incorporate changes to make TDOF.f operational, such as comment non-functional PUNCH statements, add missing PIF11 function, and add geodesy data output file OPEN and formatted WRITE statements.
- Copy TDOF.f to traj3D0.f and add functional features, such as calculation and output of geodetic geodesy data, while maintaining basic operational equivalence to TDOF.
- Copy traj3D0.f to traj3D1.f and add functional features, such as inertial or observed trajectory geodesy data output and ground range calculation using geodesic survey methods, while maintaining basic operational equivalence to traj3D0.
The repository main directory contains this README file, plain text disclaimer files and the following script files:
- Exec_TDOF - Bash script to execute ./bin/TDOF.exe with a named namelist input file
- Exec_traj3D - Bash script to execute ./bin/traj3D[0|1].exe with a named namelist input file
- create_traj_kml.py - Python script to create a KML file from a traj3D generated trajectory
The contents of each subdirectory are as follows:
- bin - 3DOF trajectory program executables (Exists only in local repository workspace)
- dat - Geodesy data files generated by 3DOF trajectory program execution
- doc - Usage documentation (e.g., Preliminary Cases)
- kml - KML files for ballistic trajectory display with Google Earth
- src - Fortran source code for 3DOF trajectory programs
- out - Standard output files written by 3DOF trajectory program execution
- txt - 3DOF trajectory program namelist input text files
The development of traj3D has been conducted on Ubuntu Linux platforms and as such, associated scripts are *nix based. Windows platform users should consider installing WSL2, MSYS2/MinGW or Cygwin to obtain GNU Fortran compiler/library suite, Python 3 release and NumPy package.
- Fortran compiler to create executables from 3DOF trajectory program source code.
- Python 3 interpreter and NumPy package to execute create_traj_kml.py
To execute TDOF using provided ./txt/sample.txt namelist input file, enter the following command
./Exec_TDOF sample
from within the ./traj3D directory. During program execution standard output will be written to ./out/TDOF_sample.out and trajectory geocentric geodesy data (longitude, latitude, altitude) will be written to ./dat/TDOF_geoc_sample.dat. Since geocentric coordinates cannot be used to accurately display paths and trajectories in Google Earth, the traj3D programs must be utilized if this capability is desired.
- Select and modify an appropriate namelist file using preferred text editor, then save as a uniquely named namelist text file of the form ./txt/{name}.txt.
- Invoke Exec_traj3D to run a ballistic trajectory simulation with the named namelist fle.
- Examine ./out/traj3D[0|1]_{name}.out file for simulation results.
- Utilize ./dat/traj3D[0|1]_{name}.dat file for trajectory presentation and/or analysis.
- Create a ./kml/traj_folder_desc_{name}.kml file corresponding to namelist filename.
- Invoke create_traj_kml.py to generate trajectory KML file.
- In Google Earth add the trajectory KML file as a Network Link.
- Impacts of TDOF modifications on validity of ablation heating and skip trajectories have not been evaluated.
- The capability of TDOF to execute multiple cases from a single namelist input file is not applicable when generating ballistic trajectories for subsequent display in Google Earth.
- Dimensions and mass of an ejecta object are limited by aerodynamic and thermodynamic formulations and the precision of I/O data field formats. The TDOF program was designed to model rocket payloads, not arbitrarily large bodies such as ice or rock boulders.
[1] Perini, L. L., "Users Manual for the 3DOF Trajectory Computer Program", JHU/APL ANSP-M-6, John Hopkins University/Applied Physics Laboratory, Sept. 1973. Web. doi:10.2172/4290244. Web available at OSTI.gov
[2] Hagan, J. C., "Reentry response of the light weight radioisotope heater unit resulting from a Venus-Earth-Earth Gravity Assist maneuver accident". United States: N. p., 1988. Web. doi:10.2172/6520642. Web available at OSTI.gov
[3] Conn, D W, and Brenza, P T., "Preliminary reentry safety assessment of the General Purpose Heat Source module for the Cassini mission: Aerospace Nuclear Safety Program". United States: N. p.,1993. Web. doi:10.2172/10103514. Web available at OSTI.gov
[4] Davias, Michael E. & Harris, Thomas H.S., "A Tale Of Two Craters: Coriolis-Aware Trajectory Analysis Correlates Two Pleistocene Impact Strewn Fields And Gives Michigan A Thumb." GSA 2105 North-Central Section Meeting At: Madison, WI Volume: Vol 47, No. 5. May 2015. PDF available at ResearchGate.net
[5] Zemora, Antonio, "The Neglected Carolina Bays: Ubiquitous Geological Evidence of a Cataclysm", 2020. Kindle edition available on Amazon.com
- See the file DISCLAIMER-APL
- See the file DISCLAIMER-GED
The WIRED article If Galileo Had Fallen to Earth (1988) by David S. F. Portree highlights concerns of critical launch or orbital failures involving the Galileo Jupiter spacecraft carrying a total of 34.4 pounds of plutonium within the General Purpose Heat Source (GPHS) modules of its two Radioisotope Thermoelectric Generators (RTGs). This article mentions "Angus McRonald, an engineer at the Jet Propulsion Laboratory (JPL) in Pasadena, California," who provided analytical evidence to support conclusions about launch failure scenarios in which aerodynamic heating effects could potentially cause RTGs to break apart, scattering and exposing GPHSs to melting conditions.
An "A. McRonald" at JPL, California Institute of Technology in Pasadena appears in the external distribution list and as an author in several referenced technical reports of reference [3] cited above. It's quite possible these A. McRonalds are one and the same!
The TDOF computer program and analytic work by L. L. Perini, A. McRonald and many others have had a notable contribution to U.S. spacecraft programs.
The following is an e-mail submitted to Johns Hopkins, Applied Physics Lab (APL) over a year ago without receiving a reply.
I'm seeking permission to upload to GitHub, with appropriate legal, copyright and disclaimer notices, the Fortran source code and sample input deck presented in Appendix I and II of "Users Manual for the 3DOF Trajectory Computer Program" by L. L. Perini available at the following link:
https://www.osti.gov/biblio/4290244
I came across this publication several years ago and selected the 3DOF (TDOF) Computer Program to use as a verification reference for a ballistic trajectory simulation I developed to run in Octave. For this purpose, I hand coded the source listing and input deck for personal use on a Linux based computer platform. I would like to provide public access to Johns Hopkins APL's original TDOF Computer Program and my modified verification version for others to utilize.
Respectfully,
G. E. Deschaines