Department of Physics and Astronomy
High School Apprenticeship Program in Computational Physics: Summer 2025
![]() Sponsored by: The United States Department of Energy “The mission of the Energy Department is to ensure America’s security and prosperity by addressing its energy, environmental and nuclear challenges through transformative science and technology solutions.” |
![]() Supported by: The National Nuclear Security Administration “Established by Congress in 2000, NNSA is a semi-autonomous agency within the U.S. Department of Energy responsible for enhancing national security through the military application of nuclear science.” |
![]() Administrated by: Oak Ridge Institute of Science Education “Supporting DOE and other federal agencies’ missions to strengthen the nation’s science education and research initiatives.” |
Special thanks to Jennifer Tyrell, STEM Workforce Development, ORISE. |
2025 Summer Program Video Coming soon |
Our FANTASTIC 2025 Summer Interns (and Mentors)! FRONT ROW Left to Right: Maxwell Wright, Dubarrie Fagout, Aubrey Underwood, Larisa Sandoval, Ryan Nair, Mandy Lam, Richard Scalettar, Ryan Larson, Riley McCullough, Aaron Swartzlander, Cesario St. John Del Valle BACK ROW Left to Right: Anais Castillo, Brielle Amadi, Torrance Yelverton, Nehemiah Wamala, Mariam Imran, Jeigh Smith-Castillo, Heri Kitenza, Isaac Fontaine, Tyler Joy |
Our students come from River City High School in West Sacramento. Our instructors coming soonWhat we do- Part 1:We learn to code in python! This program computes the trajectory of our rockets. It is the final version which includes
the variation of mass as the rocket engine burns and also the effects of air resistance!!We build Estes rockets and we test our code against real data!!! The python code works really well!!!What we do- Part 2:We build and fly rockets. This involves learning constuction techniques, basic principles of rocket engines, etc.
We then compare to codes which compute trajectories.Some launch videos (from 2023 program):
Astrocam launch
Phantom launch
Patriot launch
Andrea’s model
Another Astrocam
Yet Another AstrocamWhat we do- Part 3
We build and fly drones. This involves learning some electronics, computer interfacing, how to solder, mechanical construction, etc.What we do- Part 4:
Learning to Code in Python: We start with a code for oscillatory motion.What we do- Part 5:
Other Activities: Liquid Nitrogen, UC Davis Labs# THIS IS NEEDED TO USE ARRAYS IN PYTHON:
from array import *
# THIS IS NEEDED TO MAKE PLOTS IN PYTHON:
import matplotlib.pyplot as plt
# INPUTS
dt=float(input(‘Enter dt: ‘))
m0 =float(input(‘Enter starting mass: ‘))
y =0.001
ymax=0.
v =float(input(‘Enter v0: ‘))
g = -9.8
THR =float(input(‘Enter thrust: ‘))
tTHR =float(input(‘Enter duration of thrust: ‘))
pm =float(input(‘Enter propellant mass : ‘))
b =float(input(‘Enter air resistance: ‘))
# START OFF TIME, POSITION, VELOCITY ARRAYS
time =array(‘f’, [0.])
ysave=array(‘f’,[y])
vsave=array(‘f’,[v])
# DO THE MD AND APPEND EACH NEW TIME,
POSITION, AND VELOCITY TO ITS ARRAY
t=0.0
while y > 0:
t=t+dt
y=y+v*dt
if (y > ymax):
ymax=y
if (t < tTHR):
m=m0-pm*t/tTHR
F=THR+m*g-b*v
v=v+(F/m)*dt
else:
m=m0-pm
F=m*g-b*v
v=v+(F/m)*dt
if (abs(t-tTHR)<=dt/2):
print(‘height when engines turn off’,y)
time.append(t)
ysave.append(y)
vsave.append(v)
print(‘time of flight’,t)
print(‘apogee ‘,ymax)
plt.plot(time, ysave)
plt.xlabel(‘t’)
plt.ylabel(‘y’)
plt.show()
Athena Rocket Data comparison
with two engine typesAStrocam and Phantom Blue
Rocket Data comparisonPatriot Rocket Data comparisonAthena Rocket Data comparison
Now including air resistanceThe Teams and
all their data.Rocket ConstructionGetting ready to Launch RocketsGetting ready to Launch Rockets
Drone Construction
Attaching the motorRotors must be carefully balanced!Dale leads drone constructionNavigating the obstacle course.Learning molecular dymanicsWriting the codeEven the drones need code
Helium Recovery SystemLiquid Nitrogen ExperimentsMore Liquid Nitrogen ExperimentsProf. Taufour’s Lab