diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/BallisticModel.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/BallisticModel.java
index ae9f874..d1da39a 100644
--- a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/BallisticModel.java
+++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/BallisticModel.java
@@ -14,6 +14,11 @@ public abstract class BallisticModel
{
this.posTarget = posTarget;
}
+ /**
+ * @return Returns a recommended starting parameter
+ */
+ public abstract P getInitParam();
+
/**
* Get an abstract velocity (in the same coordinate space as posLaunch and
* posTarget) which will pass thru
diff --git a/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/SimpleTOFBM.java b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/SimpleTOFBM.java
new file mode 100644
index 0000000..7f3c01c
--- /dev/null
+++ b/lib/src/main/java/org/fairportrobotics/frc/robolib/trajectory/ballistics/models/SimpleTOFBM.java
@@ -0,0 +1,96 @@
+package org.fairportrobotics.frc.robolib.trajectory.ballistics.models;
+
+import java.util.ArrayList;
+
+import org.fairportrobotics.frc.robolib.trajectory.Velocity3d;
+
+import edu.wpi.first.math.geometry.Translation3d;
+import edu.wpi.first.units.Units;
+import edu.wpi.first.units.measure.Angle;
+import edu.wpi.first.units.measure.Distance;
+import edu.wpi.first.units.measure.LinearAcceleration;
+import edu.wpi.first.units.measure.Time;
+
+
+public class SimpleTOFBM extends ReversableRadialBM