Skip to content

Commit 27058cd

Browse files
authored
Merge pull request #217 from control-toolbox/auto-juliaformatter-pr
[AUTO] JuliaFormatter.jl run
2 parents 708adf3 + 5300c69 commit 27058cd

22 files changed

Lines changed: 481 additions & 491 deletions

ext/JuMPModels/balanced_field.jl

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ function OptimalControlProblems.balanced_field(
3737
span = params[:span]
3838
α_max = params[:α_max]
3939
T = params[:T]
40-
40+
4141
r_t0 = params[:r_t0]
4242
v_t0 = params[:v_t0]
4343
h_t0 = params[:h_t0]
@@ -96,16 +96,16 @@ function OptimalControlProblems.balanced_field(
9696
model,
9797
begin
9898
Δt, (tf - t0) / N
99-
99+
100100
q[i = 0:N], 0.5 * ρ * v[i]^2
101101
CL[i = 0:N], CL0 + (α[i] / α_max) * (CL_max - CL0)
102102
L[i = 0:N], q[i] * S * CL[i]
103-
103+
104104
h_eff[i = 0:N], h[i] + h_w
105105
term_h[i = 0:N], 33.0 * abs(h_eff[i] / b)^1.5
106106
K[i = 0:N], K_nom * term_h[i] / (1.0 + term_h[i])
107107
D[i = 0:N], q[i] * S * (CD0 + K[i] * CL[i]^2)
108-
108+
109109
dr[i = 0:N], v[i] * cos(γ[i])
110110
dv[i = 0:N], (T * cos(α[i]) - D[i]) / m - g * sin(γ[i])
111111
dh[i = 0:N], v[i] * sin(γ[i])

ext/JuMPModels/brachistochrone.jl

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ function OptimalControlProblems.brachistochrone(
3636

3737
# parameters
3838
params = parameters_data(:brachistochrone, parameters)
39-
g = params[:g]
39+
g = params[:g]
4040
t0 = params[:t0]
4141
x0 = params[:x0]
4242
y0 = params[:y0]
@@ -86,7 +86,7 @@ function OptimalControlProblems.brachistochrone(
8686
px[0] == x0
8787
py[0] == y0
8888
v[0] == v0
89-
89+
9090
# End
9191
px[N] == xf
9292
py[N] == yf
@@ -104,10 +104,10 @@ function OptimalControlProblems.brachistochrone(
104104
# Dynamics expressions (Dymos formulation)
105105
# dpx/dt = v * sin(u)
106106
dpx[i = 0:N], v[i] * sin(u[i])
107-
107+
108108
# dpy/dt = -v * cos(u)
109109
dpy[i = 0:N], -v[i] * cos(u[i])
110-
110+
111111
# dv/dt = g * cos(u)
112112
dv[i = 0:N], g * cos(u[i])
113113
end
@@ -127,4 +127,4 @@ function OptimalControlProblems.brachistochrone(
127127
@objective(model, Min, tf)
128128

129129
return model
130-
end
130+
end

ext/JuMPModels/bryson_denham.jl

Lines changed: 15 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -44,25 +44,28 @@ function OptimalControlProblems.bryson_denham(
4444
model[:state_components] = ["x1", "x2"]
4545
model[:control_components] = ["u"]
4646
model[:costate_components] = ["p1", "p2"]
47-
model[:variable_components] = []
47+
model[:variable_components] = []
4848

4949
N = grid_size
50-
Δt = (tf- t0) /N
50+
Δt = (tf - t0) / N
5151

5252
@variable(model, x1[0:N] <= x1_max, start = 0.0)
5353
@variable(model, x2[0:N], start = 0.0)
5454
@variable(model, u[0:N], start = 0.0)
5555

56-
@constraints(model, begin
57-
x1[0] == x1_t0
58-
x2[0] == x2_t0
59-
x1[N] == x1_tf
60-
x2[N] == x2_tf
61-
p1[i = 1:N], x1[i] == x1[i-1] + 0.5* Δt * (x2[i] + x2[i-1])
62-
p2[i = 1:N], x2[i] == x2[i-1] + 0.5 * Δt * (u[i] + u[i-1])
63-
end)
56+
@constraints(
57+
model,
58+
begin
59+
x1[0] == x1_t0
60+
x2[0] == x2_t0
61+
x1[N] == x1_tf
62+
x2[N] == x2_tf
63+
p1[i = 1:N], x1[i] == x1[i - 1] + 0.5 * Δt * (x2[i] + x2[i - 1])
64+
p2[i = 1:N], x2[i] == x2[i - 1] + 0.5 * Δt * (u[i] + u[i - 1])
65+
end
66+
)
6467

65-
@objective(model, Min, 0.5 * Δt * sum(0.5 * (u[i]^2 + u[i-1]^2) for i in 1:N))
68+
@objective(model, Min, 0.5 * Δt * sum(0.5 * (u[i]^2 + u[i - 1]^2) for i in 1:N))
6669

6770
return model
68-
end
71+
end

ext/JuMPModels/robot.jl

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ function OptimalControlProblems.robot(
133133
set_start_value(dρ[k], 0.0)
134134
set_start_value(dθ[k], 0.0)
135135
set_start_value(dϕ[k], 0.0)
136-
136+
137137
set_start_value(uρ[k], 0.0)
138138
set_start_value(uθ[k], 0.0)
139139
set_start_value(uϕ[k], 0.0)

ext/MetaData/balanced_field.jl

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
balanced_field_meta = OrderedDict(
22
:grid_size => 200,
33
:parameters => (
4-
t0 = 0.0,
5-
m = 79015.8, # mass (kg)
6-
g = 9.80665, # gravity (m/s^2)
7-
ρ = 1.225, # air density (kg/m^3)
8-
S = 124.7, # surface (m^2)
9-
CD0 = 0.03, # zero-lift drag coefficient
10-
AR = 9.45, # aspect ratio
11-
e = 0.801, # Oswald efficiency
12-
CL0 = 0.5, # zero-alpha lift coefficient
13-
CL_max = 2.0, # max lift coefficient
14-
h_w = 1.0, # height of wing above CoG (m)
15-
span = 35.7, # wingspan (m)
16-
α_max = 0.1745, # alpha at CL_max (10 degrees in rad)
17-
T = 120102.0, # thrust (N) - one engine out
18-
r_t0 = 600.0, # initial range (m) at V1
19-
v_t0 = 70.0, # initial velocity (m/s) at V1
20-
h_t0 = 0.0, # initial altitude (m)
21-
γ_t0 = 0.0, # initial flight path angle (rad)
22-
h_tf = 10.668, # final altitude (35 ft in m)
23-
γ_tf = 0.0873, # final flight path angle (5 degrees in rad)
24-
v_min = 0.0,
25-
v_max = 100.0,
26-
α_min = -0.1745, # -10 degrees
27-
α_max_ctrl = 0.2618, # 15 degrees
4+
t0=0.0,
5+
m=79015.8, # mass (kg)
6+
g=9.80665, # gravity (m/s^2)
7+
ρ=1.225, # air density (kg/m^3)
8+
S=124.7, # surface (m^2)
9+
CD0=0.03, # zero-lift drag coefficient
10+
AR=9.45, # aspect ratio
11+
e=0.801, # Oswald efficiency
12+
CL0=0.5, # zero-alpha lift coefficient
13+
CL_max=2.0, # max lift coefficient
14+
h_w=1.0, # height of wing above CoG (m)
15+
span=35.7, # wingspan (m)
16+
α_max=0.1745, # alpha at CL_max (10 degrees in rad)
17+
T=120102.0, # thrust (N) - one engine out
18+
r_t0=600.0, # initial range (m) at V1
19+
v_t0=70.0, # initial velocity (m/s) at V1
20+
h_t0=0.0, # initial altitude (m)
21+
γ_t0=0.0, # initial flight path angle (rad)
22+
h_tf=10.668, # final altitude (35 ft in m)
23+
γ_tf=0.0873, # final flight path angle (5 degrees in rad)
24+
v_min=0.0,
25+
v_max=100.0,
26+
α_min=-0.1745, # -10 degrees
27+
α_max_ctrl=0.2618, # 15 degrees
2828
),
2929
)

ext/MetaData/brachistochrone.jl

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
brachistochrone_meta = OrderedDict(
2-
:grid_size => 500,
2+
:grid_size => 500,
33
:parameters => (
4-
g = 9.80665,
5-
t0 = 0.0,
6-
x0 = 0.0,
7-
y0 = 10.0,
8-
v0 = 0.0,
9-
xf = 10.0,
10-
yf = 5.0,
11-
u_min = -pi,
12-
u_max = pi,
4+
g=9.80665,
5+
t0=0.0,
6+
x0=0.0,
7+
y0=10.0,
8+
v0=0.0,
9+
xf=10.0,
10+
yf=5.0,
11+
u_min=(-pi),
12+
u_max=pi,
1313
),
14-
)
14+
)

ext/MetaData/bryson_denham.jl

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
bryson_denham_meta = OrderedDict(
22
:grid_size => 500,
33
:parameters => (
4-
t0 = 0.0, # Initial time
5-
tf = 1.0, # Final time
6-
x1_t0 = 0.0, # Initial position
7-
x2_t0 = 1.0, # Initial velocity
8-
x1_tf = 0.0, # Final position
9-
x2_tf = -1.0, # Final velocity
10-
x1_max = 1/9 # State constraint: x1(t) <= x1_max
4+
t0=0.0, # Initial time
5+
tf=1.0, # Final time
6+
x1_t0=0.0, # Initial position
7+
x2_t0=1.0, # Initial velocity
8+
x1_tf=0.0, # Final position
9+
x2_tf=-1.0, # Final velocity
10+
x1_max=1/9, # State constraint: x1(t) <= x1_max
1111
),
12-
)
12+
)

ext/MetaData/mountain_car.jl

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11
mountain_car_meta = OrderedDict(
22
:grid_size => 200,
33
:parameters => (
4-
t0 = 0.0,
5-
tf_start = 110.0,
6-
tf_min = 0.1,
7-
pos_t0 = -0.5,
8-
vel_t0 = 0.0,
9-
pos_tf = 0.5,
10-
vel_tf_min = 0.0,
11-
pos_min = -1.2,
12-
pos_max = 0.5,
13-
vel_min = -0.07,
14-
vel_max = 0.07,
15-
u_min = -1.0,
16-
u_max = 1.0,
17-
a = 0.001,
18-
b = 0.0025,
19-
c = 3.0,
4+
t0=0.0,
5+
tf_start=110.0,
6+
tf_min=0.1,
7+
pos_t0=-0.5,
8+
vel_t0=0.0,
9+
pos_tf=0.5,
10+
vel_tf_min=0.0,
11+
pos_min=-1.2,
12+
pos_max=0.5,
13+
vel_min=-0.07,
14+
vel_max=0.07,
15+
u_min=-1.0,
16+
u_max=1.0,
17+
a=0.001,
18+
b=0.0025,
19+
c=3.0,
2020
),
2121
)

ext/OptimalControlModels/balanced_field.jl

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ function OptimalControlProblems.balanced_field(
4646
span = params[:span]
4747
α_max = params[:α_max]
4848
T = params[:T]
49-
49+
5050
r_t0 = params[:r_t0]
5151
v_t0 = params[:v_t0]
5252
h_t0 = params[:h_t0]
@@ -75,7 +75,7 @@ function OptimalControlProblems.balanced_field(
7575

7676
h(tf) == h_tf
7777
γ(tf) == γ_tf
78-
78+
7979
0 α(t) α_max_ctrl # alpha
8080
tf 0.1
8181
h(t) 0
@@ -88,21 +88,21 @@ function OptimalControlProblems.balanced_field(
8888

8989
function dynamics(x, α, m, g, ρ, S, CD0, CL0, CL_max, α_max, T, b, K_nom, h_w)
9090
r, v, h, γ = x
91-
91+
9292
q = 0.5 * ρ * v^2
9393
CL = CL0 +/ α_max) * (CL_max - CL0)
9494
L = q * S * CL
95-
95+
9696
h_eff = h + h_w
9797
term_h = 33.0 * abs(h_eff / b)^1.5
9898
K = K_nom * term_h / (1.0 + term_h)
9999
D = q * S * (CD0 + K * CL^2)
100-
100+
101101
rdot = v * cos(γ)
102102
vdot = (T * cos(α) - D) / m - g * sin(γ)
103103
hdot = v * sin(γ)
104104
γdot = (T * sin(α) + L) / (m * v) - (g * cos(γ)) / v
105-
105+
106106
return [rdot, vdot, hdot, γdot]
107107
end
108108

ext/OptimalControlModels/brachistochrone.jl

Lines changed: 14 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,8 @@ function OptimalControlProblems.brachistochrone(
3333
parameters::Union{Nothing,NamedTuple}=nothing,
3434
kwargs...,
3535
)
36-
3736
params = parameters_data(:brachistochrone, parameters)
38-
g = params[:g]
37+
g = params[:g]
3938
t0 = params[:t0]
4039
x0 = params[:x0]
4140
y0 = params[:y0]
@@ -48,23 +47,23 @@ function OptimalControlProblems.brachistochrone(
4847
ocp = @def begin
4948
tf R, variable
5049
t [t0, tf], time
51-
50+
5251
z = (px, py, v) R³, state
5352
u R, control
5453

5554
-1.57 u(t) 1.57
56-
0.1 tf 20.0
55+
0.1 tf 20.0
5756

5857
px(t0) == x0
5958
py(t0) == y0
60-
v(t0) == v0
61-
59+
v(t0) == v0
60+
6261
px(tf) == xf
6362
py(tf) == yf
6463

6564
(px)(t) == v(t) * sin(u(t))
6665
(py)(t) == -v(t) * cos(u(t))
67-
(v)(t) == g * cos(u(t))
66+
(v)(t) == g * cos(u(t))
6867

6968
# Objectif
7069
tf min
@@ -73,24 +72,24 @@ function OptimalControlProblems.brachistochrone(
7372
# initial guess: linear interpolation to match JuMP
7473
tf_guess = 2.0
7574
init = (
76-
state = t -> [
75+
state=t -> [
7776
x0 + (t - t0) / (tf_guess - t0) * (xf - x0),
7877
y0 + (t - t0) / (tf_guess - t0) * (yf - y0),
79-
v0 + (t - t0) / (tf_guess - t0) * 10.0
78+
v0 + (t - t0) / (tf_guess - t0) * 10.0,
8079
],
81-
control = 1.57,
82-
variable = tf_guess
80+
control=1.57,
81+
variable=tf_guess,
8382
)
8483

8584
docp = direct_transcription(
8685
ocp,
8786
description...;
8887
lagrange_to_mayer=false,
89-
init = init,
90-
grid_size = grid_size,
88+
init=init,
89+
grid_size=grid_size,
9190
disc_method=:trapeze,
92-
kwargs...
91+
kwargs...,
9392
)
9493

9594
return docp
96-
end
95+
end

0 commit comments

Comments
 (0)