"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. "
"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."
"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.
2023 Summer Program Video
Our FANTASTIC 2023 Summer Interns!
FRONT ROW Left to Right:
Linn Mallory, Avery Wenzel, Saraya Montgomery,
Isabella Backus, Atiana Curtis, Aubrey Tern, Jennifer Castro
BACK ROW Left to Right:
Cedric Morisseau, Jeremiah Ellison, Steven Faello, Xavier Amour, Rajat
Saini
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!!
# 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()
We build Estes rockets and we test our code against real data!!!
The python code works really well!!!
Athena Rocket Data comparison
with two engine types
AStrocam and Phantom Blue
Rocket Data comparison
Patriot Rocket Data comparison
Athena Rocket Data comparison
Now including air resistance
The Teams and
all their data.
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.
Rocket Construction
Packing parachutes in
Rockets fit nicely on your finger
Rocket Construction
Smoothing the paint
makes for better flights
Rocket Construction
Rockets can look nice too!
Rocket Construction
Rockets need fins for stable flight