From dfd061f9d80e8273533fa835fa9d415055dc99b7 Mon Sep 17 00:00:00 2001 From: <> Date: Mon, 7 Aug 2023 19:25:36 +0000 Subject: [PATCH] Update documentation --- contributing/contributing.html | 18 +- examples/balanced_field/balanced_field.html | 62 +++---- .../balanced_field_funccomp.html | 40 +++-- examples/brachistochrone/brachistochrone.html | 48 ++--- .../brachistochrone_tandem_phases.html | 14 +- .../brachistochrone_upstream_controls.html | 13 +- ...ochrone_upstream_init_duration_states.html | 14 +- .../brachistochrone_upstream_states.html | 15 +- examples/bryson_denham/bryson_denham.html | 80 ++++----- .../cannonball_implicit_duration.html | 31 ++-- examples/cart_pole/cart_pole.html | 35 ++-- .../commercial_aircraft.html | 75 ++++---- .../double_integrator/double_integrator.html | 29 +-- .../finite_burn_orbit_raise.html | 29 +-- examples/hull/hull_problem.html | 44 ++--- examples/hypersensitive/hypersensitive.html | 165 +++++++++--------- .../length_constrained_brachistochrone.html | 13 +- examples/min_time_climb/min_time_climb.html | 31 ++-- examples/mountain_car/mountain_car.html | 95 +++++----- .../multi_phase_cannonball.html | 57 +++--- .../multibranch_trajectory.html | 8 +- examples/racecar/racecar.html | 11 +- examples/reentry/reentry.html | 38 ++-- .../robertson_problem/robertson_problem.html | 8 +- examples/ssto_earth/ssto_earth.html | 61 ++++--- .../ssto_moon_linear_tangent.html | 16 +- .../ssto_moon_polynomial_controls.html | 20 +-- examples/vanderpol/vanderpol.html | 101 +++++------ examples/water_rocket/water_rocket.html | 52 ++++-- faq/connect_scalar_parameters_to_ode.html | 9 +- faq/debugging.html | 1 + faq/tandem_phases.html | 24 +-- faq/use_partial_coloring.html | 78 +++++---- features/phases/analytic_phases.html | 24 ++- features/phases/constraints.html | 8 +- features/phases/phases.html | 8 +- features/trajectories/trajectories.html | 4 +- getting_started/collocation.html | 24 +-- getting_started/defining_odes.html | 4 +- getting_started/intro_to_dymos/intro_ivp.html | 8 +- .../intro_to_dymos/intro_segments.html | 5 +- getting_started/optimal_control.html | 12 +- searchindex.js | 2 +- 43 files changed, 737 insertions(+), 697 deletions(-) diff --git a/contributing/contributing.html b/contributing/contributing.html index ac50be169..82aee075b 100644 --- a/contributing/contributing.html +++ b/contributing/contributing.html @@ -561,6 +561,7 @@

Notebook Creation#

Both sets of equations of motion have common aerodynamic models.

First, the lift coefficient is computed using a model which assumes linearity in lift wrt the angle of attack.

-
-(21)#\[\begin{align} +
+(21)#\[\begin{align} C_L &= C_{L0} + \frac{\alpha}{\alpha_{max}} \left(C_{L-max} - C_{L0}\right) \end{align}\]

Next, the drag-due-to-lift factor is computed (Equations 12.48 and 12.61 in Raymer[@raymer2012aircraft]).

-
-(22)#\[\begin{align} +
+(22)#\[\begin{align} K_{nom} &= \frac{1}{ \pi AR e} \\ b &= \frac{span}{2} \\ K &= 33 K_{nom} \frac{ \left(\frac{h + h_w}{b} \right) ^{\frac{3}{2}}}{1.0 + 33 \left( \frac{h + h_w}{b}\right) ^{\frac{3}{2}}} @@ -591,8 +591,8 @@

The Aerodynamic Model

Finally, the lift and drag are computed after computing the dynamic pressure.

-
-(23)#\[\begin{align} +
+(23)#\[\begin{align} q &= 0.5 \rho v^2 \\ L &= q S C_L \\ D &= q S \left( C_{D0} + K C_{L}^2 \right) @@ -603,8 +603,8 @@

Stall Speed\(\frac{v}{v_{stall}}\)). This constraint is used to trigger the beginning of rotation and is used as a boundary constraint at the end of the initial climb. Stall speed is given by Equation 5.6 in Raymer[@raymer2012aircraft].

-
-(24)#\[\begin{align} +
+(24)#\[\begin{align} W &= m g \\ v_{stall} &= \sqrt{\frac{2 * W}{\rho S C_{L-max}}} \end{align}\]
@@ -612,8 +612,8 @@

Stall Speed

Runway Equations of Motion#

The runway equations of motion are used to integrate range and speed as the vehicle rolls along the runway.

-
-(25)#\[\begin{align} +
+(25)#\[\begin{align} F_r &= mg - L \cos \alpha - T \sin \alpha \\ \dot{v} &= \frac{T \cos \alpha - D - F_r \mu_r}{m} \\ \dot{r} &= v @@ -640,8 +640,8 @@

Runway Equations of Motion

Flight Equations of Motion#

The flight equations of motion include two additional state variables: the flight-path angle (\(\gamma\)) and altitude (\(h\)).

-
-(26)#\[\begin{align} +
+(26)#\[\begin{align} \dot{v} &= \frac{T}{m} \cos \alpha - \frac{D}{m} - g \sin \gamma \\ \dot{\gamma} &= \frac{T}{m v} \sin \alpha + \frac{L}{m v} - \frac{g \cos \gamma}{v} \\ \dot{h} &= v \sin \gamma \\ @@ -1165,7 +1165,7 @@

Building and running the problem -
INFO:check_config:checking out_of_order
@@ -1426,20 +1427,19 @@ 

Building and running the problem
Coloring for 'traj.phases.rto.rhs_all' (class BalancedFieldODEComp)
+
+Coloring for 'traj.phases.rto.rhs_all' (class BalancedFieldODEComp)
 
 Jacobian shape: (132, 60)  ( 9.79% nonzero)
 FWD solves: 16   REV solves: 0
 Total colors vs. total size: 16 vs 60  (73.3% improvement)
 
 Sparsity computed using tolerance: 1e-25
-Time to compute sparsity: 0.020197 sec.
-Time to compute coloring: 0.014614 sec.
+Time to compute sparsity: 0.024386 sec.
+Time to compute coloring: 0.017943 sec.
 Memory to compute coloring: 0.000000 MB.
 
 Coloring for 'traj.phases.v1_to_vr.rhs_all' (class BalancedFieldODEComp)
@@ -1449,8 +1449,8 @@ 

Building and running the problem
Full total jacobian was computed 3 times, taking 1.429048 seconds.
+
INFO: checking out_of_order
 
-
/usr/share/miniconda/envs/test/lib/python3.10/site-packages/openmdao/recorders/sqlite_recorder.py:227: UserWarning:The existing case recorder file, dymos_solution.db, is being overwritten.
-INFO:check_config:checking out_of_order
+
INFO:check_config:checking out_of_order
 
@@ -1023,8 +1025,8 @@

Building and running the problem
Full total jacobian was computed 3 times, taking 4.719833 seconds.
+
Full total jacobian was computed 3 times, taking 6.299375 seconds.
 Total jacobian shape: (178, 166) 
 
 
@@ -1067,8 +1069,8 @@ 

Building and running the problem

System dynamics#

From the free-body diagram above, the evolution of the state variables is given by the following ordinary differential equations (ODE).

-
-(13)#\[\begin{align} +
+(13)#\[\begin{align} \frac{d x}{d t} &= v \sin(\theta) \\ \frac{d y}{d t} &= -v \cos(\theta) \\ \frac{d v}{d t} &= g \cos(\theta) @@ -556,8 +556,8 @@

The initial and final conditions -(14)#\[\begin{align} +
+(14)#\[\begin{align} x_0 &= 0 \\ y_0 &= 10 \\ v_0 &= 0 @@ -565,8 +565,8 @@

The initial and final conditions -(15)#\[\begin{align} +
+(15)#\[\begin{align} x_f &= 10 \\ y_f &= 5 \\ v_f &= \mathrm{free} @@ -732,27 +732,27 @@

Testing the ODE
Model viewer data has already been recorded for Driver.
 

-
-
-
Full total jacobian was computed 3 times, taking 0.284912 seconds.
+
Full total jacobian was computed 3 times, taking 0.340832 seconds.
 Total jacobian shape: (223, 287) 
 
@@ -691,9 +691,9 @@

Setup and run
/usr/share/miniconda/envs/test/lib/python3.10/site-packages/openmdao/visualization/opt_report/opt_report.py:634: UserWarning: Attempting to set identical low and high ylims makes transformation singular; automatically expanding.
@@ -1482,10 +1482,10 @@ 

Plots# -
+