add transonic warning

This commit is contained in:
JoePfeiffer 2022-12-14 14:38:38 -07:00
parent c3a2552ee3
commit c9de2085f9
3 changed files with 10 additions and 2 deletions

View File

@ -1865,7 +1865,7 @@ Warning.TUBE_SEPARATION = Space between tube fins may not result in accurate sim
Warning.TUBE_OVERLAP = Overlapping tube fins may not result in accurate simulations.
Warning.EMPTY_BRANCH = Simulation branch contains no data
Warning.SEPARATION_ORDER = Stages separated in an unreasonable order
Warning.RAILBUTTON_TRANSONIC = Railbutton drag calculations may be inaccurate at transonic or supersonic speeds
! Scale dialog
ScaleDialog.lbl.scaleRocket = Entire rocket
ScaleDialog.lbl.scaleSubselection = Selection and all subcomponents

View File

@ -399,4 +399,6 @@ public abstract class Warning {
public static final Warning SEPARATION_ORDER = new Other(trans.get("Warning.SEPARATION_ORDER"));
public static final Warning EMPTY_BRANCH = new Other(trans.get("Warning.EMPTY_BRANCH"));
public static final Warning RAILBUTTON_TRANSONIC = new Other(trans.get("Warning.RAILBUTTON_TRANSONIC"));
}

View File

@ -2,6 +2,7 @@ package net.sf.openrocket.aerodynamics.barrowman;
import net.sf.openrocket.aerodynamics.AerodynamicForces;
import net.sf.openrocket.aerodynamics.FlightConditions;
import net.sf.openrocket.aerodynamics.Warning;
import net.sf.openrocket.aerodynamics.WarningSet;
import net.sf.openrocket.rocketcomponent.RailButton;
import net.sf.openrocket.rocketcomponent.RocketComponent;
@ -44,7 +45,12 @@ public class RailButtonCalc extends RocketComponentCalc {
// I expect we'll have compressibility effects having an impact well below that, so this is probably good up
// to the transonic regime.
double CDmul = 1.2;
// warn the user about accuracy if we're transonic (roughly Mach 0.8) or faster
if (conditions.getMach() > 0.8) {
warnings.add(Warning.RAILBUTTON_TRANSONIC);
}
return CDmul*stagnationCD * refArea / conditions.getRefArea();
}
}