/

Mohammed Musharaf Hussain

BEng Hons Materials Science and Engineering

Engineering graduate with programming experience and an interest in data science, focused on sustainability and net zero. I’m passionate about hiking, volunteering and charity work, having climbed across the UK, Europe and North Africa to raise money. I love photography and take my camera everywhere.

Tools
  • Python
  • MATLAB
  • Maple
  • ANSYS
  • SolidWorks
  • CFD
  • Granta EduPack
Exploded nozzle, split by function. Throat to exit ratio is to scale (1 : 3.375).

Project log 001 / Third year design project

Third year design project · Additively manufactured rocket nozzle

Reusable rockets need parts that are cheap to make and built to survive repeated flights. The nozzle turns burning gas into thrust, so it has to be right. This project tests whether a 3D printed nozzle can match a proven engine, the SpaceX Merlin 1D.

Fig. 2. Calculated exit velocity, 2,765 m/s, against Merlin 1D's 2,770 m/s (full circle). This checks the arithmetic more than the design.

01The briefReusable rocket

Reusable rockets make spaceflight cheaper, because a rocket that flies again spreads its build cost over many launches. Rocket Lab's Rutherford engine shows what printing can do: its chamber, injectors, pumps and valves are all 3D printed, and the primary components take about a day to print. Relativity Space has developed a reusable launch vehicle that is almost entirely printed.

The nozzle is the hardest of these parts to get right. It carries the hottest gas in the engine on every flight, and printing makes internal cooling channels possible where traditional tooling cannot.

My aim was to design a de Laval nozzle and check whether a printed version can match the Merlin 1D, the benchmark for reusable rockets.

02Sizing the rocketPython, MATLAB

I wrote a Python script that turns the chamber conditions into nozzle dimensions. The inputs come from SpaceX's published Merlin 1D figures: a chamber pressure of 10.8 MPa, a chamber temperature of 3,500 K and a thrust of 845 kN. The script returns a throat diameter of 0.267 m and an exit diameter of 0.901 m, an area ratio of 11.4. The exit diameter is about 2% below the Merlin's 0.92 m.

nozzle_sizing.py
# Chamber conditions, sea-level exit
F = 981_000            # thrust, N
p0, pe = 10.8e6, 101_325
T0, k, R = 3500, 1.24, 355.4

def exit_velocity(k, R, T0, pe, p0):
    return np.sqrt((2*k)/(k-1) * R*T0
                   * (1 - (pe/p0)**((k-1)/k)))

def nozzle_area(mdot, velocity, specific_volume):
    return mdot * specific_volume / velocity

ve   = exit_velocity(k, R, T0, pe, p0)  # 2765.30 m/s
mdot = F / ve                           # 354.75 kg/s
At   = nozzle_area(mdot, vt, Vt)        # 0.0558 m²
Ae   = nozzle_area(mdot, ve, Ve)        # 0.6380 m²

Excerpt from nozzle_sizing.py. Not the full script.

Drag to rotate. Dt and De are the throat and exit diameters.

03Figuring out isentropic flowIsentropic

The throat sets the flow speed, and the diverging section takes it past Mach 1. The predicted exit velocity is 2,765 m/s, within 0.2% of the Merlin 1D's 2,770 m/s.

01 · throat temperatureT*=T0·2k+1
02 · throat velocityv*=kRT*
03 · exit velocityve=2kk−1RT0(1−pep0k−1k)
04 · exit MachMe=2k−1((p0pe)k−1k−1)
05 · area ratioAeA*=1Me[2k+1(1+k−12Me2)]k+12(k−1)
06 · area–velocitydAA=(M2−1)dvv

Gas flow coloured by Mach number, from the isentropic equations. Not CFD.

Area ratio against Mach number. The design point sits on the supersonic branch.

flow.py
# isentropic core, from the sizing script
def critical_temperature(T0, k):
    return T0 * (2 / (k + 1))

def throat_velocity(k, R, Tt):
    return np.sqrt(k * R * Tt)

def throat_specific_volume(V1, k):
    return V1 * ((k + 1) / 2) ** (1 / (k - 1))

def isentropic_expansion(px, py, Vx, k):
    Vy = Vx * (px / py) ** (1 / k)
    return Vy

# at the design point: Tt = 3125 K, vt = 1173.5 m/s, Ve = 4.97 m³/kg

Excerpt from flow.py. Not the full script.

043D printing the nozzleAnsys LPBF

I simulated the print in Ansys using laser powder bed fusion. The material is Inconel 718, a standard nozzle alloy that stays strong up to about 700 °C after heat treatment.

The simulation tracks heat build-up during the print. The peak temperature is 115.67 °C, and the rest of the nozzle stays between 99.98 °C and 112.18 °C. This near-uniform temperature points to good dimensional stability, with little residual heat stress. At the deposition rate used, the build is estimated at about three months. Raising that rate is the route to a build of a few weeks.

Fig. 3. Simulated temperature during laser powder bed fusion. Peak 115.67 °C on the top surface, the rest between 99.98 and 112.18 °C. The heat pattern is approximated, not a physical print.

05Checking the design in simulationAnsys Fluent

I ran a CFD simulation in Ansys Fluent on the SolidWorks model, using the script's inputs. The flow is inviscid, so friction is ignored, and the result shows the ideal expansion. The throat temperature of about 3,100 K matches the calculated 3,125 K, and the gas expands smoothly, with no shock waves or flow separation.

The exit velocity, read from the velocity vectors, is about 2,350 m/s. The gap to the calculated 2,765 m/s comes from losses the inviscid model leaves out, such as friction and surface roughness. Including them is the next refinement.

Exit velocity, m/s

Calculated2,765
CFD2,350
Merlin 1D2,770

Throat temperature, K

Calculated3,125
CFD3,100

Specific impulse, s

Calculated282
CFD239.6

06ConclusionSummary

The design matches the Merlin 1D on the core measures. Exit velocity is within 0.2%, the CFD confirms supersonic flow with a matching throat temperature, and the thermal simulation shows an even temperature through the build. Specific impulse, at 239.6 s against the Merlin's 282 s, sets the target for the next iteration.

Printing is what makes that next iteration worthwhile. Internal cooling channels, which machining cannot produce, are the route to higher performance and longer life. Structural analysis and physical firing come next. Together, the results support the case for printed nozzles in reusable rockets, a case Rocket Lab is already making with the Rutherford engine.

Sources: Rocket Lab, Rutherford engine release; Relativity Space (2024); Qi, Azer and Ritter (2009), Inconel 718 heat treatment; SpaceX, Merlin 1D published figures.