Well, the units you choose depend on a few things (obviously metric/imperial) – if you want to minimise conversion coefficients and whatnot and keep the equations clean, then you might be using some weird units in places.

Below is a test case borrowed from Paul Kelly (from >2 decades years ago) with various descriptive, value and unit changes in places by myself:

Let’s start with a simple N2O hybrid for our design example. N2O hybrids will provide much of their energy from the decomposition of the N2O molecule and as a result will provide a nice performance plateau from O:F ratios between 5:1 to 10:1 or thereabouts. That’s where I was coming from with my comment regarding settling on a Ve or Isp 1st and designing the Mdot to satisfy your propulsion objectives. True oxidizers like LOX won't provide such a plateau, so significant more care is required designing for the Isp or or c or Ve whichever units you're basing your propulsive performance off.

Small hybrid motor with PVC fuel grain and liquid N2O

ISP=180s (or c = 1764m/s)

Pc=2.1 MPa

Average thrust=1000N

Burn Time=5s

Expansion ratio=4

You don’t need to worry too much about expansion ratios if you’re (a) running the Pc<2.5 Mpa and (b) keeping a low altitude. Let’s assume for this example we’re satisfying both.

Okay, so starting with the oxidizer requirements – we have our total impulse (1000N avg F x 5 sec = 5000Ns)

Now this is where the units start getting a little bit weird, for equation simplicity sake. We’ll use Newtons a lot for things like mass quantities.

If we divide our total impulse by our Isp (Isp is c/g) we get 5000Ns/180s = 27.78N of propellant required

Working on an O:F of 5 that provides us with 27.78 * (5/(5+1) = 23.15N of N2O

Designing a tank vent to maintain tank temperature of, say, 20 deg C will provide us with a target N2O density of =-2.90771182972311E-09*20^6 - 6.0312570866609E-07*20^5 - 0.0000432532975736404*20^4 - 0.00154440495997047*20^3 - 0.05881035796875*20^2 - 6.04812419669871*20 + 909.705602212855

= 743.83 Kg/M^3 or /1000 = 0.744 g/cc

So our bare minimum tank volume requirement would be 23.15/9.8/0.744 = 3.175 L tank

We should allow for a bit or ullage for expansion and perhaps ignition spikes but more importantly for the tank to be pressurised when the last bit of liquid is being squirted out the injectors so it takes:

Pt*V/Pa/22.4*M g of N2O to pressurise our tank where:

Pt=Tank Pressure (5.14 Mpa)

V=Tank Volume (3.5L)

Pa=Ambient Pressure (0.1 Mpa)

M=Molar Mass of gas (44g)

= 5.14*3.5/22.4/44 = 353g which takes up another 353/0.744 = 475cc of tank volume so I’d probably keep the 3.5L but maybe a touch more would be optimal. Obviously there’ll be boil off and whatnot too that’s also contributing to the tank pressure-volume.

Working downwards we come to the injector.

We need to flow 2.36Kg of N2O in 5 seconds that's a MOXdot of 0.472Kg/s

The formula for flow across a simple injector is:

MOXdot=Cfl*Ai*SQRT(2*Pox*DeltaP)

Where:

MOXdot=Oxidiser flow rate (Kg/s)

Cfl=Coefficient of flow for that injector(0.5 is a good guess for biphase flow)

Ai = Area of the injector (m^2)

Pox=The density of NOX in Kg/M^3 (744)

DeltaP =The pressure drop across the injector ie 5.14-2.1Mpa(3040000Pa)

Rearranging for Ai

Ai=Moxdot/(Cfl*sqrt(2*Pox*DeltaP)))

Plugging in our numbers:

Ai=0.472/(0.5*sqrt(2*744*3040000)))

=0.00001404m^2

or a diameter of sqrt(0.00001404 / pi) * 2 * 1000 = 4.23mm

Now for the fuel grain and what’s required based on the regression expected. This is where we utilise that regression equation mentioned earlier:

r= regression rate.

a= Burn rate coefficient (dimensionless – arguably - at least when you try to convert burn rate units)

n= Burn rate exponent (dimensionless - definitely)

Go= The oxidiser Flux rate (N/m^2/s) – again the units get weird

Designing the core/port around a reasonable value for Go of 4500 N/m^2/s we get a port area of:

4.63/4500=0.00103m^2 (4.63 is Moxdot in N)

or an approx port diameter of 36mm

“a” for PVC is about 0.0052 and “n” is about 0.65 (this will vary with grade and colour)

Thus r=0.0052*4500^0.65=1.23mm/s

So, we have a 3.6cm diam port, regressing at 0.123cm/sec. Given the density of PVC is 1.7, This will produce:

3.6*pi()*0.123*1.7=2.36g of fuel for every centimetre of fuel grain we have.

We know Moxdot is 472g/s and O/F=5:1 so we work out that we need 472/5=94.4g/s of Fuel

From which we derive a grain length of 94.4/2.36=40cm

Now, for most small HPR class applications, we can assume a constant regression for the purposes of determining the web thickness. Of course you can make a spreadsheet to model it more iteratively/dynamically if you wish.

So, 1.23mm/s * 5sec = 0.615cm of web required as a minimum.

That provides us with a min grain diameter of 3.6+(2*0.615) = 4.83cm

Nozzle:

F=Cf*At*Pc

F=Thrust (N)

Cf=Coefficient of thrust (worked out from isentropic equations) or assuming 1.4-1.5 for our Pc : Pa ratio

Pc=Chamber Pressure in Pascals

At = 1000/(1.4*2100000) = 0.00034m^2

a diameter of sqrt(0.00034 / pi) * 2 * 1000 = 20.8mm

So, we've nominated above using an expansion ratio of 4, which provides us with an exit diameter of sqrt(0.00034 *4 / pi) * 2 * 1000 = 41.6mm

note: at sea level, an expansion ratio of 4 would be ideally suited to a Pc of around 3.4 IIRC but by the time you factor in all the flight dynamics and avg altitude of operation, 4 is probably reasonable for 2.1mpa

TP

Ps: I’ve just typed all this out without checking much of it so verify the numbers and all