From: Bill Kuker Date: Mon, 25 Oct 2010 15:20:47 +0000 (+0000) Subject: Moved motors X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=efccf4d47b2c4f527ed06d85c9de9b5560303b9f;p=sw%2Fmotorsim Moved motors --- diff --git a/.classpath b/.classpath index d75bd09..5bfd266 100644 --- a/.classpath +++ b/.classpath @@ -2,6 +2,7 @@ + diff --git a/motors/com/billkuker/rocketry/motorsim/motors/example/CSlot.java b/motors/com/billkuker/rocketry/motorsim/motors/example/CSlot.java new file mode 100644 index 0000000..ec8b037 --- /dev/null +++ b/motors/com/billkuker/rocketry/motorsim/motors/example/CSlot.java @@ -0,0 +1,55 @@ +package com.billkuker.rocketry.motorsim.motors.example; + +import java.awt.Shape; +import java.awt.geom.Ellipse2D; +import java.awt.geom.Rectangle2D; + +import javax.measure.unit.SI; + +import org.jscience.physics.amount.Amount; + +import com.billkuker.rocketry.motorsim.Burn; +import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; +import com.billkuker.rocketry.motorsim.CylindricalChamber; +import com.billkuker.rocketry.motorsim.Motor; +import com.billkuker.rocketry.motorsim.fuel.KNSU; +import com.billkuker.rocketry.motorsim.grain.util.ExtrudedShapeGrain; + +public class CSlot extends Motor { + public CSlot() { + setName("C-Slot"); + setFuel(new KNSU()); + + CylindricalChamber c = new CylindricalChamber(); + c.setLength(Amount.valueOf(150, SI.MILLIMETER)); + c.setID(Amount.valueOf(50, SI.MILLIMETER)); + setChamber(c); + + setGrain(new ExtrudedShapeGrain() { + { + try { + Shape outside = new Ellipse2D.Double(0, 0, 30, 30); + xsection.add(outside); + xsection.inhibit(outside); + xsection.subtract(new Rectangle2D.Double(12.5,13, 5, 30)); + setLength(Amount.valueOf(150, SI.MILLIMETER)); + setForeEndInhibited(false); + setAftEndInhibited(false); + } catch (Exception e) { + throw new Error(e); + } + } + }); + + ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); + n.setThroatDiameter(Amount.valueOf(7, SI.MILLIMETER)); + n.setExitDiameter(Amount.valueOf(10, SI.MILLIMETER)); + n.setEfficiency(.85); + setNozzle(n); + } + + public static void main(String args[]){ + new Burn(new CSlot()); + } + +} diff --git a/motors/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java b/motors/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java new file mode 100644 index 0000000..86a132b --- /dev/null +++ b/motors/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java @@ -0,0 +1,47 @@ +package com.billkuker.rocketry.motorsim.motors.example; + +import java.awt.Shape; +import java.awt.geom.Rectangle2D; + +import javax.measure.unit.SI; + +import org.jscience.physics.amount.Amount; + +import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; +import com.billkuker.rocketry.motorsim.CylindricalChamber; +import com.billkuker.rocketry.motorsim.Motor; +import com.billkuker.rocketry.motorsim.fuel.KNSU; +import com.billkuker.rocketry.motorsim.grain.util.RotatedShapeGrain; + +public class EndBurner extends Motor { + public EndBurner() { + setName("End Burner"); + setFuel(new KNSU()); + + CylindricalChamber c = new CylindricalChamber(); + c.setLength(Amount.valueOf(150, SI.MILLIMETER)); + c.setID(Amount.valueOf(50, SI.MILLIMETER)); + setChamber(c); + + setGrain(new RotatedShapeGrain() { + { + try { + Shape outside = new Rectangle2D.Double(0, 0, 15, 70); + shape.add(outside); + shape.inhibit(outside); + shape.subtract(new Rectangle2D.Double(0, 50, 5, 70)); + shape.subtract(new Rectangle2D.Double(0, 70, 15, 10)); + } catch (Exception e) { + throw new Error(e); + } + } + }); + + ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); + n.setThroatDiameter(Amount.valueOf(4, SI.MILLIMETER)); + n.setExitDiameter(Amount.valueOf(9, SI.MILLIMETER)); + n.setEfficiency(.85); + setNozzle(n); + } + +} diff --git a/motors/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java b/motors/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java new file mode 100644 index 0000000..4db73db --- /dev/null +++ b/motors/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java @@ -0,0 +1,51 @@ +package com.billkuker.rocketry.motorsim.motors.kuker; + +import java.beans.PropertyVetoException; + +import javax.measure.unit.SI; + +import org.jscience.physics.amount.Amount; + +import com.billkuker.rocketry.motorsim.Burn; +import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; +import com.billkuker.rocketry.motorsim.CylindricalChamber; +import com.billkuker.rocketry.motorsim.Motor; +import com.billkuker.rocketry.motorsim.fuel.KNSU; +import com.billkuker.rocketry.motorsim.grain.CoredCylindricalGrain; +import com.billkuker.rocketry.motorsim.grain.MultiGrain; +import com.billkuker.rocketry.motorsim.visual.BurnPanel; + +public class PVC9 extends Motor { + public PVC9(){ + setName("PVC9"); + setFuel(new KNSU()); + + CylindricalChamber c = new CylindricalChamber(); + c.setLength(Amount.valueOf(200, SI.MILLIMETER)); + c.setID(Amount.valueOf(25, SI.MILLIMETER)); + setChamber(c); + + CoredCylindricalGrain g = new CoredCylindricalGrain(); + try{ + g.setLength(Amount.valueOf(70, SI.MILLIMETER)); + g.setOD(Amount.valueOf(23.5, SI.MILLIMETER)); + g.setID(Amount.valueOf(7.9375, SI.MILLIMETER)); + } catch ( PropertyVetoException v ){ + throw new Error(v); + } + + setGrain( new MultiGrain(g, 2) ); + + ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); + n.setThroatDiameter(Amount.valueOf(7.962, SI.MILLIMETER)); + n.setExitDiameter(Amount.valueOf(13.79, SI.MILLIMETER)); + n.setEfficiency(.85); + setNozzle(n); + } + + public static void main(String args[]) throws Exception{ + PVC9 m = new PVC9(); + Burn b = new Burn(m); + new BurnPanel(b).showAsWindow(); + } +} diff --git a/motors/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java b/motors/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java new file mode 100644 index 0000000..f39c507 --- /dev/null +++ b/motors/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java @@ -0,0 +1,52 @@ +package com.billkuker.rocketry.motorsim.motors.nakka; + +import java.beans.PropertyVetoException; + +import javax.measure.unit.NonSI; + +import org.jscience.physics.amount.Amount; + +import com.billkuker.rocketry.motorsim.Burn; +import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; +import com.billkuker.rocketry.motorsim.CylindricalChamber; +import com.billkuker.rocketry.motorsim.Motor; +import com.billkuker.rocketry.motorsim.fuel.KNSB; +import com.billkuker.rocketry.motorsim.grain.CoredCylindricalGrain; +import com.billkuker.rocketry.motorsim.grain.MultiGrain; +import com.billkuker.rocketry.motorsim.visual.BurnPanel; + +public class KappaSB extends Motor{ + public KappaSB(){ + setName("Kappa-Sorbitol"); + setFuel(new KNSB()); + + CylindricalChamber c = new CylindricalChamber(); + c.setLength(Amount.valueOf(16, NonSI.INCH)); + c.setID(Amount.valueOf(2.37, NonSI.INCH)); + setChamber(c); + + CoredCylindricalGrain g = new CoredCylindricalGrain(); + try{ + g.setLength(Amount.valueOf(3.8, NonSI.INCH)); + g.setOD(Amount.valueOf(2.23, NonSI.INCH)); + g.setID(Amount.valueOf(.75, NonSI.INCH)); + } catch (PropertyVetoException v){ + throw new Error(v); + } + + setGrain( new MultiGrain(g, 4) ); + + ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); + n.setThroatDiameter(Amount.valueOf(.502, NonSI.INCH)); + n.setExitDiameter(Amount.valueOf(1.67, NonSI.INCH)); + n.setEfficiency(.87); + setNozzle(n); + } + + public static void main(String args[]) throws Exception{ + KappaSB m = new KappaSB(); + Burn b = new Burn(m); + new BurnPanel(b).showAsWindow(); + } + +} diff --git a/src/com/billkuker/rocketry/motorsim/motors/example/CSlot.java b/src/com/billkuker/rocketry/motorsim/motors/example/CSlot.java deleted file mode 100644 index ec8b037..0000000 --- a/src/com/billkuker/rocketry/motorsim/motors/example/CSlot.java +++ /dev/null @@ -1,55 +0,0 @@ -package com.billkuker.rocketry.motorsim.motors.example; - -import java.awt.Shape; -import java.awt.geom.Ellipse2D; -import java.awt.geom.Rectangle2D; - -import javax.measure.unit.SI; - -import org.jscience.physics.amount.Amount; - -import com.billkuker.rocketry.motorsim.Burn; -import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; -import com.billkuker.rocketry.motorsim.CylindricalChamber; -import com.billkuker.rocketry.motorsim.Motor; -import com.billkuker.rocketry.motorsim.fuel.KNSU; -import com.billkuker.rocketry.motorsim.grain.util.ExtrudedShapeGrain; - -public class CSlot extends Motor { - public CSlot() { - setName("C-Slot"); - setFuel(new KNSU()); - - CylindricalChamber c = new CylindricalChamber(); - c.setLength(Amount.valueOf(150, SI.MILLIMETER)); - c.setID(Amount.valueOf(50, SI.MILLIMETER)); - setChamber(c); - - setGrain(new ExtrudedShapeGrain() { - { - try { - Shape outside = new Ellipse2D.Double(0, 0, 30, 30); - xsection.add(outside); - xsection.inhibit(outside); - xsection.subtract(new Rectangle2D.Double(12.5,13, 5, 30)); - setLength(Amount.valueOf(150, SI.MILLIMETER)); - setForeEndInhibited(false); - setAftEndInhibited(false); - } catch (Exception e) { - throw new Error(e); - } - } - }); - - ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); - n.setThroatDiameter(Amount.valueOf(7, SI.MILLIMETER)); - n.setExitDiameter(Amount.valueOf(10, SI.MILLIMETER)); - n.setEfficiency(.85); - setNozzle(n); - } - - public static void main(String args[]){ - new Burn(new CSlot()); - } - -} diff --git a/src/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java b/src/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java deleted file mode 100644 index 86a132b..0000000 --- a/src/com/billkuker/rocketry/motorsim/motors/example/EndBurner.java +++ /dev/null @@ -1,47 +0,0 @@ -package com.billkuker.rocketry.motorsim.motors.example; - -import java.awt.Shape; -import java.awt.geom.Rectangle2D; - -import javax.measure.unit.SI; - -import org.jscience.physics.amount.Amount; - -import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; -import com.billkuker.rocketry.motorsim.CylindricalChamber; -import com.billkuker.rocketry.motorsim.Motor; -import com.billkuker.rocketry.motorsim.fuel.KNSU; -import com.billkuker.rocketry.motorsim.grain.util.RotatedShapeGrain; - -public class EndBurner extends Motor { - public EndBurner() { - setName("End Burner"); - setFuel(new KNSU()); - - CylindricalChamber c = new CylindricalChamber(); - c.setLength(Amount.valueOf(150, SI.MILLIMETER)); - c.setID(Amount.valueOf(50, SI.MILLIMETER)); - setChamber(c); - - setGrain(new RotatedShapeGrain() { - { - try { - Shape outside = new Rectangle2D.Double(0, 0, 15, 70); - shape.add(outside); - shape.inhibit(outside); - shape.subtract(new Rectangle2D.Double(0, 50, 5, 70)); - shape.subtract(new Rectangle2D.Double(0, 70, 15, 10)); - } catch (Exception e) { - throw new Error(e); - } - } - }); - - ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); - n.setThroatDiameter(Amount.valueOf(4, SI.MILLIMETER)); - n.setExitDiameter(Amount.valueOf(9, SI.MILLIMETER)); - n.setEfficiency(.85); - setNozzle(n); - } - -} diff --git a/src/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java b/src/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java deleted file mode 100644 index 4db73db..0000000 --- a/src/com/billkuker/rocketry/motorsim/motors/kuker/PVC9.java +++ /dev/null @@ -1,51 +0,0 @@ -package com.billkuker.rocketry.motorsim.motors.kuker; - -import java.beans.PropertyVetoException; - -import javax.measure.unit.SI; - -import org.jscience.physics.amount.Amount; - -import com.billkuker.rocketry.motorsim.Burn; -import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; -import com.billkuker.rocketry.motorsim.CylindricalChamber; -import com.billkuker.rocketry.motorsim.Motor; -import com.billkuker.rocketry.motorsim.fuel.KNSU; -import com.billkuker.rocketry.motorsim.grain.CoredCylindricalGrain; -import com.billkuker.rocketry.motorsim.grain.MultiGrain; -import com.billkuker.rocketry.motorsim.visual.BurnPanel; - -public class PVC9 extends Motor { - public PVC9(){ - setName("PVC9"); - setFuel(new KNSU()); - - CylindricalChamber c = new CylindricalChamber(); - c.setLength(Amount.valueOf(200, SI.MILLIMETER)); - c.setID(Amount.valueOf(25, SI.MILLIMETER)); - setChamber(c); - - CoredCylindricalGrain g = new CoredCylindricalGrain(); - try{ - g.setLength(Amount.valueOf(70, SI.MILLIMETER)); - g.setOD(Amount.valueOf(23.5, SI.MILLIMETER)); - g.setID(Amount.valueOf(7.9375, SI.MILLIMETER)); - } catch ( PropertyVetoException v ){ - throw new Error(v); - } - - setGrain( new MultiGrain(g, 2) ); - - ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); - n.setThroatDiameter(Amount.valueOf(7.962, SI.MILLIMETER)); - n.setExitDiameter(Amount.valueOf(13.79, SI.MILLIMETER)); - n.setEfficiency(.85); - setNozzle(n); - } - - public static void main(String args[]) throws Exception{ - PVC9 m = new PVC9(); - Burn b = new Burn(m); - new BurnPanel(b).showAsWindow(); - } -} diff --git a/src/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java b/src/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java deleted file mode 100644 index f39c507..0000000 --- a/src/com/billkuker/rocketry/motorsim/motors/nakka/KappaSB.java +++ /dev/null @@ -1,52 +0,0 @@ -package com.billkuker.rocketry.motorsim.motors.nakka; - -import java.beans.PropertyVetoException; - -import javax.measure.unit.NonSI; - -import org.jscience.physics.amount.Amount; - -import com.billkuker.rocketry.motorsim.Burn; -import com.billkuker.rocketry.motorsim.ConvergentDivergentNozzle; -import com.billkuker.rocketry.motorsim.CylindricalChamber; -import com.billkuker.rocketry.motorsim.Motor; -import com.billkuker.rocketry.motorsim.fuel.KNSB; -import com.billkuker.rocketry.motorsim.grain.CoredCylindricalGrain; -import com.billkuker.rocketry.motorsim.grain.MultiGrain; -import com.billkuker.rocketry.motorsim.visual.BurnPanel; - -public class KappaSB extends Motor{ - public KappaSB(){ - setName("Kappa-Sorbitol"); - setFuel(new KNSB()); - - CylindricalChamber c = new CylindricalChamber(); - c.setLength(Amount.valueOf(16, NonSI.INCH)); - c.setID(Amount.valueOf(2.37, NonSI.INCH)); - setChamber(c); - - CoredCylindricalGrain g = new CoredCylindricalGrain(); - try{ - g.setLength(Amount.valueOf(3.8, NonSI.INCH)); - g.setOD(Amount.valueOf(2.23, NonSI.INCH)); - g.setID(Amount.valueOf(.75, NonSI.INCH)); - } catch (PropertyVetoException v){ - throw new Error(v); - } - - setGrain( new MultiGrain(g, 4) ); - - ConvergentDivergentNozzle n = new ConvergentDivergentNozzle(); - n.setThroatDiameter(Amount.valueOf(.502, NonSI.INCH)); - n.setExitDiameter(Amount.valueOf(1.67, NonSI.INCH)); - n.setEfficiency(.87); - setNozzle(n); - } - - public static void main(String args[]) throws Exception{ - KappaSB m = new KappaSB(); - Burn b = new Burn(m); - new BurnPanel(b).showAsWindow(); - } - -}