Class HollowCylinderGrain
java.lang.Object
com.github.jbgust.jsrm.application.motor.grain.HollowCylinderGrain
- All Implemented Interfaces:
GrainConfigutation
-
Constructor Summary
ConstructorsConstructorDescriptionHollowCylinderGrain(double outerDiameter, double coreDiameter, double segmentLength, int numberOfSegment, GrainSurface outerSurface, GrainSurface endsSurface, GrainSurface coreSurface) Create an Hollow cylindrical propellant grain -
Method Summary
Modifier and TypeMethodDescriptionvoidcheckConfiguration(SolidRocketMotor solidRocketMotor) doublegetBurningArea(double burnProgression) Compute the burning area during burndoublegetGrainEndSurface(double burnProgression) Compute the end grain surface during burndoublegetGrainVolume(double burnProgression) Compute the grain volume during burndoublegetXincp(int numberOfPoints) This method should return the length that will be remove in each computation iteration ex : for hollow cylinder grain this will be : initial web thickness / numberOfPoints
-
Constructor Details
-
HollowCylinderGrain
public HollowCylinderGrain(double outerDiameter, double coreDiameter, double segmentLength, int numberOfSegment, GrainSurface outerSurface, GrainSurface endsSurface, GrainSurface coreSurface) Create an Hollow cylindrical propellant grain- Parameters:
outerDiameter- outer grain diameter in millimetercoreDiameter- core grain diameter in millimetersegmentLength- the length of a segment gran in millimeter. Example : if using 4 grains of 34mm each, segmentLength is 34.numberOfSegment- the number of segmentouterSurface- outer surface is exposed to combustion or inhibitedendsSurface- end segments surface are exposed to combustion or inhibitedcoreSurface- core surface is exposed to combustion or inhibited
-
-
Method Details
-
getGrainEndSurface
public double getGrainEndSurface(double burnProgression) Description copied from interface:GrainConfigutationCompute the end grain surface during burn- Specified by:
getGrainEndSurfacein interfaceGrainConfigutation- Parameters:
burnProgression- (0 to 1, 0 = before burn start ; 1 = grain completly burn)- Returns:
- the end grain surface in mm^2
-
getGrainVolume
public double getGrainVolume(double burnProgression) Description copied from interface:GrainConfigutationCompute the grain volume during burn- Specified by:
getGrainVolumein interfaceGrainConfigutation- Parameters:
burnProgression- (0 to 1, 0 = before burn start ; 1 = grain completly burn)- Returns:
- the grain volume in mm^3
-
getBurningArea
public double getBurningArea(double burnProgression) Description copied from interface:GrainConfigutationCompute the burning area during burn- Specified by:
getBurningAreain interfaceGrainConfigutation- Parameters:
burnProgression- (0 to 1, 0 = before burn start ; 1 = grain completly burn)- Returns:
- the burning area mm^2
-
getXincp
public double getXincp(int numberOfPoints) Description copied from interface:GrainConfigutationThis method should return the length that will be remove in each computation iteration ex : for hollow cylinder grain this will be : initial web thickness / numberOfPoints- Specified by:
getXincpin interfaceGrainConfigutation- Parameters:
numberOfPoints- the number of iteration during the computation- Returns:
- xincp (cf. SRM_2014.xls)
-
checkConfiguration
public void checkConfiguration(SolidRocketMotor solidRocketMotor) throws InvalidMotorDesignException - Specified by:
checkConfigurationin interfaceGrainConfigutation- Throws:
InvalidMotorDesignException
-