Orbital Dynamics BVP Benchmark
This is a benchmark of a small non-stiff BVP.
using BoundaryValueDiffEq, OrdinaryDiffEq, BenchmarkTools, SciMLBase
using OrdinaryDiffEqLowOrderRK
y0 = [
-4.7763169762853989E+06,
-3.8386398704441520E+05,
-5.3500183933132319E+06,
-5528.612564911408,
1216.8442360202787,
4845.114446429901
]
init_val = [
-4.7763169762853989E+06,
-3.8386398704441520E+05,
-5.3500183933132319E+06,
7.0526926403748598E+06,
-7.9650476230388973E+05,
-1.1911128863666430E+06
]
J2 = 1.08262668E-3
req = 6378137
myu = 398600.4418E+9
t0 = 86400 * 2.3577475462484435E+04
t1 = 86400 * 2.3577522023524125E+04
tspan = (t0, t1)
# ODE solver
function orbital(dy, y, p, t)
r2 = (y[1]^2 + y[2]^2 + y[3]^2)
r3 = r2^(3 / 2)
w = 1 + 1.5J2 * (req * req / r2) * (1 - 5y[3] * y[3] / r2)
w2 = 1 + 1.5J2 * (req * req / r2) * (3 - 5y[3] * y[3] / r2)
dy[1] = y[4]
dy[2] = y[5]
dy[3] = y[6]
dy[4] = -myu * y[1] * w / r3
dy[5] = -myu * y[2] * w / r3
dy[6] = -myu * y[3] * w2 / r3
end
function bc!_generator(resid, sol, init_val)
resid[1] = sol.u[1][1] - init_val[1]
resid[2] = sol.u[1][2] - init_val[2]
resid[3] = sol.u[1][3] - init_val[3]
resid[4] = sol.u[end][1] - init_val[4]
resid[5] = sol.u[end][2] - init_val[5]
resid[6] = sol.u[end][3] - init_val[6]
end
cur_bc! = (resid, sol, p, t) -> bc!_generator(resid, sol, init_val)
resid_f = Array{Float64}(undef, 6)
bvp = BVProblem(orbital, cur_bc!, y0, tspan; nlls = Val(false))
function validate_solution(sol, tolerance)
SciMLBase.successful_retcode(sol) || error("solve failed with retcode $(sol.retcode)")
residual_norm = maximum(abs, sol.resid)
residual_norm < tolerance ||
error("boundary residual $residual_norm exceeds tolerance $tolerance")
return sol
endvalidate_solution (generic function with 1 method)tolerance = 1.0e-6
sol = @btime solve(
bvp,
Shooting(DP5());
force_dtmin = true,
abstol = $tolerance,
reltol = $tolerance,
verbose = false,
odesolve_kwargs = (
abstol = $tolerance,
reltol = $tolerance,
adaptive = false,
dt = 10000,
),
)
validate_solution(sol, tolerance)377.697 μs (9165 allocations: 369.95 KiB)
retcode: Success
Interpolation: specialized 4th order "free" interpolation
t: 2-element Vector{Float64}:
2.037093879958655e9
2.0370979028324845e9
u: 2-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 1346.5765
43767128, -1125.5339226720698, -6745.8426131734]
[7.052692640374863e6, -796504.7623038917, -1.1911128863666488e6, 3042.8246
319149207, 294.02721275605234, 3748.344828940438]dt = (t1 - t0) / 100
sol = @btime solve(
bvp, MIRK2(); dt = $dt, abstol = $tolerance, reltol = $tolerance, verbose = false
)
validate_solution(sol, tolerance)213.404 s (42696351 allocations: 2.34 GiB)
retcode: Success
Interpolation: MIRK Order 2 Interpolation
t: 2869-element Vector{Float64}:
2.037093879958655e9
2.037093881092944e9
2.037093882229421e9
2.0370938833682418e9
2.037093884509569e9
2.0370938856533365e9
2.037093886799388e9
2.0370938879480207e9
2.0370938891005075e9
2.0370938902556746e9
⋮
2.0370978961900442e9
2.037097897027328e9
2.0370978978623126e9
2.0370978986950855e9
2.0370978995261652e9
2.0370979003554401e9
2.0370979011828485e9
2.0370979020084724e9
2.0370979028324845e9
u: 2869-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 2365.2157
64957593, -1248.451897588988, -6968.663523611739]
[-4.773630844018137e6, -385279.82669451594, -5.357919166708396e6, 2371.024
769294159, -1247.9840458442025, -6962.1334301277475]
[-4.770932929290247e6, -386697.86497253994, -5.365827754398114e6, 2376.831
532551042, -1247.5143866951385, -6955.59255029845]
[-4.768222838315492e6, -388118.2919172105, -5.373745197387367e6, 2382.6368
02840418, -1247.0428546923356, -6949.040008395509]
[-4.765500157814733e6, -389541.3055812928, -5.381672578891629e6, 2388.4413
54962405, -1246.5693811415003, -6942.474891357984]
[-4.762765017093589e6, -390966.8193772521, -5.3896093952566385e6, 2394.244
7998210077, -1246.0939917816802, -6935.897599145854]
[-4.760017765068089e6, -392394.63367806113, -5.397554515051976e6, 2400.046
292278882, -1245.616750445144, -6929.309053500492]
[-4.7572576616540495e6, -393825.1146669133, -5.405509955125505e6, 2405.847
2858666464, -1245.1375318096561, -6922.7075652348585]
[-4.754481608257236e6, -395259.84164411953, -5.413484468500231e6, 2411.654
127685388, -1244.6558016631795, -6916.085845303925]
[-4.751692390894527e6, -396697.34767195914, -5.421469870976947e6, 2417.460
8218571443, -1244.1720472916688, -6909.450663248918]
⋮
[7.068763557875544e6, -804790.9457631825, -1.2371169004089122e6, -2394.485
203958488, 1244.628428200392, 6921.444822106756]
[7.066756067110843e6, -803748.5395469515, -1.2313212265412805e6, -2400.760
1967061732, 1245.3424856882307, 6922.543377585465]
[7.064748854295687e6, -802708.4005336572, -1.2255405540199971e6, -2407.024
17951302, 1246.0545696971678, 6923.635175086323]
[7.062741745710637e6, -801670.424257388, -1.2197742859390464e6, -2413.2777
680103245, 1246.764754206816, 6924.7203486733915]
[7.060733523596858e6, -800633.9688487676, -1.2140188428131337e6, -2419.524
8186641616, 1247.4734803901524, 6925.799589090289]
[7.058724485222651e6, -799599.1771921065, -1.2082750061227484e6, -2425.764
461484628, 1248.180652242442, 6926.872764085778]
[7.056714809444448e6, -798566.1302486082, -1.2025432125691029e6, -2431.996
1986441454, 1248.8862162659475, 6927.939807615889]
[7.054704325527013e6, -797534.7291986236, -1.1968229012621522e6, -2438.220
616672966, 1249.5902417700747, 6929.00083954292]
[7.05269264037486e6, -796504.7623038897, -1.191112886366643e6, -2444.43898
4971133, 1250.2928749111477, 6930.056093515198]sol = @btime solve(
bvp, MIRK3(); dt = $dt, abstol = $tolerance, reltol = $tolerance, verbose = false
)
validate_solution(sol, tolerance)2.756 s (5652717 allocations: 330.99 MiB)
retcode: Success
Interpolation: MIRK Order 3 Interpolation
t: 233-element Vector{Float64}:
2.037093879958655e9
2.0370938926485958e9
2.037093905510086e9
2.037093918586111e9
2.0370939318971612e9
2.0370939454461253e9
2.0370939592598946e9
2.0370939733562012e9
2.0370939876729364e9
2.0370940022280931e9
⋮
2.03709781944199e9
2.037097830480513e9
2.0370978413465805e9
2.0370978520635812e9
2.037097862636632e9
2.0370978728870013e9
2.037097882997414e9
2.0370978929778054e9
2.0370979028324845e9
u: 233-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 2365.2137
147661247, -1248.4509583993934, -6968.661693704244]
[-4.745893252568844e6, -399673.3416612646, -5.437987180414831e6, 2429.4439
625367895, -1243.1661603374507, -6895.7103521560675]
[-4.714237305310039e6, -415627.27683806, -5.526202110961897e6, 2492.872345
6293174, -1237.7001330987976, -6822.01517044083]
[-4.681227968173293e6, -431774.5556109313, -5.614918518374595e6, 2555.6820
77615081, -1232.0355762390734, -6747.353208211722]
[-4.646792976344478e6, -448135.27996014495, -5.704228595583067e6, 2617.932
2121845216, -1226.1639674605033, -6671.632920974204]
[-4.610903059663395e6, -464707.46014777524, -5.7941018911434375e6, 2679.59
42351809904, -1220.0843086158575, -6594.864357919974]
[-4.573463426759711e6, -481518.0279044809, -5.884663109354097e6, 2740.7448
192315496, -1213.7846859226916, -6516.922967046979]
[-4.534399427150243e6, -498582.0157044077, -5.975969128566639e6, 2801.4104
629676185, -1207.2569099000104, -6437.738479880897]
[-4.493861717490511e6, -515817.9558842518, -6.067563045311132e6, 2861.2820
56190829, -1200.5303235240615, -6357.688188600966]
[-4.451782935369204e6, -533241.5227067524, -6.15951029827483e6, 2920.40296
8331565, -1193.5976846722697, -6276.698291882688]
⋮
[7.231126085332679e6, -897802.8892988554, -1.7640765532824856e6, -1844.814
8420970347, 1179.235317162074, 6806.1574055159335]
[7.210343190493503e6, -884734.0713768186, -1.6888455680943266e6, -1920.867
8396329424, 1188.6225340100548, 6824.383469511167]
[7.189059825234123e6, -871768.175139776, -1.614596168874347e6, -1996.69140
37720376, 1197.871683236283, 6841.819095756495]
[7.167256324084939e6, -858881.670474998, -1.541182517649333e6, -2072.42205
4919253, 1207.000852223296, 6858.505254590858]
[7.144945396924737e6, -846072.3523052502, -1.4685824347239407e6, -2148.072
519004041, 1216.012644411304, 6874.4518822459795]
[7.122547106887782e6, -833562.9806224143, -1.3980396956008414e6, -2222.317
0071687173, 1224.7529201092614, 6889.40490275803]
[7.099704640745293e6, -821136.6338080604, -1.3283125422001437e6, -2296.432
204237714, 1233.3757859752377, 6903.646957139801]
[7.076416617109749e6, -808784.5824031068, -1.2593434122776934e6, -2370.469
0292206647, 1241.8881565333213, 6917.194435539997]
[7.05269264037486e6, -796504.7623038897, -1.191112886366643e6, -2444.43898
35062657, 1250.2921829679235, 6930.0549651353185]sol = @btime solve(
bvp, MIRK4(); dt = $dt, abstol = $tolerance, reltol = $tolerance, verbose = false
)
validate_solution(sol, tolerance)19.350 s (324926448 allocations: 6.90 GiB)
retcode: Success
Interpolation: MIRK Order 4 Interpolation
t: 68-element Vector{Float64}:
2.037093879958655e9
2.0370939211353898e9
2.0370939643859432e9
2.0370940098916197e9
2.0370940573480082e9
2.03709410589519e9
2.0370941550442235e9
2.0370942048692503e9
2.0370942554527934e9
2.037094306861084e9
⋮
2.0370976058659034e9
2.0370976491622484e9
2.0370976904734344e9
2.0370977299493968e9
2.0370977676736157e9
2.0370978037399838e9
2.0370978382383072e9
2.0370978712466276e9
2.0370979028324845e9
u: 68-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 2365.2140
22902616, -1248.4509996523686, -6968.661852376933]
[-4.674697449740774e6, -434913.93572821765, -5.632100893517281e6, 2567.734
6992105963, -1230.9191462984993, -6732.829193004134]
[-4.559357089346176e6, -487733.8980503847, -5.917995256532337e6, 2763.0060
40995371, -1211.4222231347371, -6488.086507265563]
[-4.429285433370033e6, -542374.5810183156, -6.207449113796503e6, 2950.8407
445520384, -1189.9113944207543, -6234.217983968585]
[-4.284949488155122e6, -598293.153221941, -6.497103699476797e6, 3129.20263
6154532, -1166.5803136271268, -5973.712387879625]
[-4.1289495283584557e6, -654332.0469833638, -6.780735892744831e6, 3294.827
6241158014, -1141.938622519585, -5711.891434075345]
[-3.9632169694460346e6, -709830.6871405244, -7.055056390644289e6, 3446.731
571266186, -1116.34625219815, -5451.740470384059]
[-3.7879556952171894e6, -764795.0724866007, -7.320224656481693e6, 3585.976
144357298, -1089.8705543662286, -5193.089510765108]
[-3.603283045999794e6, -819235.4203536477, -7.576377756376593e6, 3713.4913
847921157, -1062.5572685050308, -4935.700809329676]
[-3.409329336277829e6, -873138.4555747451, -7.823503195172644e6, 3830.0319
29286133, -1034.4468845612319, -4679.404018124424]
⋮
[7.480882305446406e6, -1.1304813459404623e6, -3.1739404580431646e6, -545.3
39107646818, 1000.8730988768131, 6374.364612485565]
[7.452130451650643e6, -1.0863795564379322e6, -2.895830010717282e6, -784.65
62416556885, 1036.3952580116797, 6471.797226023968]
[7.414814983932002e6, -1.0428588857494952e6, -2.626620742872109e6, -1023.6
954079216803, 1070.6252317676697, 6560.739096777191]
[7.36972458879933e6, -999944.6125065739, -2.36602033706402e6, -1262.495840
0228325, 1103.6157416661645, 6641.519323658701]
[7.317635571688284e6, -957713.2795067065, -2.114086531882406e6, -1500.7607
955854255, 1135.3690154132469, 6714.326056631397]
[7.259254570853266e6, -916214.5210466888, -1.8707378619484869e6, -1738.291
378356973, 1165.900144114826, 6779.376183730877]
[7.19523222993472e6, -875487.371336232, -1.6358547230506474e6, -1974.90435
44178476, 1195.2250729058055, 6836.88314028533]
[7.1261827515647225e6, -835570.884176478, -1.4093389461127087e6, -2210.375
8660627514, 1223.3539557843367, 6887.045446335743]
[7.05269264037486e6, -796504.7623038897, -1.191112886366643e6, -2444.43955
1865421, 1250.2920988318313, 6930.0541345739575]sol = @btime solve(
bvp, MIRK5(); dt = $dt, abstol = $tolerance, reltol = $tolerance, verbose = false
)
validate_solution(sol, tolerance)442.108 ms (2259045 allocations: 112.57 MiB)
retcode: Success
Interpolation: MIRK Order 5 Interpolation
t: 88-element Vector{Float64}:
2.037093879958655e9
2.0370939136446574e9
2.0370939481470807e9
2.0370939834919918e9
2.0370940197033148e9
2.0370940568032713e9
2.0370940948125758e9
2.0370941337505226e9
2.037094173635026e9
2.0370942144826384e9
⋮
2.0370976107049067e9
2.0370976441153162e9
2.037097678675864e9
2.037097714285578e9
2.0370977509030685e9
2.0370977885592859e9
2.0370978272003284e9
2.0370978654557915e9
2.0370979028324845e9
u: 88-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 2365.2143
16744417, -1248.4510756057423, -6968.662025644531]
[-4.6937986933300365e6, -425681.1840173558, -5.581507172583521e6, 2532.142
5065667177, -1234.1886865032136, -6775.536539290171]
[-4.603649253666521e6, -468001.2037442716, -5.811893716183676e6, 2691.6861
204862503, -1218.8605192484208, -6579.598694832778]
[-4.50578846487733e6, -510794.4778708706, -6.040933139680893e6, 2843.97671
82965397, -1202.5045346506563, -6381.0263395304755]
[-4.400144215947355e6, -554026.3397869286, -6.268351198558902e6, 2989.1300
610440962, -1185.157036008715, -6179.995369897495]
[-4.286653543594241e6, -597657.6040816902, -6.493848787975665e6, 3127.2508
586524923, -1166.8527342180323, -5976.677401016266]
[-4.165263921382996e6, -641644.8466920272, -6.717104570534374e6, 3258.4355
235351204, -1147.624830361397, -5771.238718088191]
[-4.0359345988899637e6, -685940.5618419136, -6.937776809135364e6, 3382.773
940566373, -1127.5050905326436, -5563.839750373592]
[-3.8986378992543886e6, -730493.27444866, -7.155504877617032e6, 3500.35069
4960375, -1106.5239021299994, -5354.634737345748]
[-3.753360443692693e6, -775247.6377384027, -7.369910629764459e6, 3611.2459
447468036, -1084.7103108499352, -5143.771472834813]
⋮
[7.478180013147865e6, -1.125628569763695e6, -3.143068101365767e6, -571.538
7827244713, 1004.8245797454908, 6385.450458051656]
[7.45601858784458e6, -1.0915996835784905e6, -2.9284646808613795e6, -756.18
23364437871, 1032.2355042241102, 6460.65099424494]
[7.426481981017956e6, -1.0554317950008397e6, -2.703874656246765e6, -954.32
64392141342, 1060.8179209360997, 6535.773296380474]
[7.388745935728662e6, -1.0171286400683225e6, -2.4698059792299117e6, -1166.
4869765077958, 1090.4943939316533, 6609.995387607967]
[7.341902597006622e6, -976635.4129647173, -2.226424140875551e6, -1393.5869
299843291, 1121.2277673049061, 6682.525852287934]
[7.284872848733755e6, -933815.9918034314, -1.9734512256321174e6, -1637.117
3683884879, 1153.0311185701644, 6752.575910574978]
[7.216606746437851e6, -888628.3955132796, -1.711222005619276e6, -1898.1666
531774927, 1185.8320397594675, 6819.020176168047]
[7.138861001415645e6, -842640.83052581, -1.4491963729055466e6, -2168.40310
3666259, 1218.4161733386306, 6878.614457942935]
[7.05269264037486e6, -796504.7623038897, -1.191112886366643e6, -2444.43930
83656273, 1250.2921524092292, 6930.054461779619]sol = @btime solve(
bvp, MIRK6(); dt = $dt, abstol = $tolerance, reltol = $tolerance, verbose = false
)
validate_solution(sol, tolerance)386.532 ms (2427398 allocations: 112.74 MiB)
retcode: Success
Interpolation: MIRK Order 6 Interpolation
t: 102-element Vector{Float64}:
2.037093879958655e9
2.037093919789089e9
2.037093959619523e9
2.037093999449957e9
2.037094039280391e9
2.0370940791108248e9
2.037094118941259e9
2.0370941587716928e9
2.0370941986021268e9
2.0370942384325607e9
⋮
2.0370975841890128e9
2.0370976240194468e9
2.0370976638498807e9
2.0370977036803148e9
2.0370977435107486e9
2.0370977833411827e9
2.0370978231716166e9
2.0370978630020506e9
2.0370979028324845e9
u: 102-element Vector{Vector{Float64}}:
[-4.776316976285399e6, -383863.9870444152, -5.350018393313232e6, 2365.2143
08254377, -1248.4510547253133, -6968.662026800079]
[-4.678150113520943e6, -433256.351225534, -5.623031317602253e6, 2561.37778
70633367, -1231.5092990575074, -6740.498394028997]
[-4.572477500799231e6, -481954.51035683585, -5.887006427016087e6, 2742.314
6777324005, -1213.619450849351, -6514.898592789235]
[-4.459880752754734e6, -529923.6974241135, -6.142051363700975e6, 2909.2527
811266705, -1194.928040942382, -6292.125991932322]
[-4.340894991844244e6, -577134.5379594417, -6.38828269387538e6, 3063.30073
7274816, -1175.5598592279866, -6072.367859694572]
[-4.216013359595788e6, -623562.2499467575, -6.625823181634678e6, 3205.4599
304766707, -1155.6212799085824, -5855.750731897327]
[-4.085691062218087e6, -669185.9697628987, -6.85479963655999e6, 3336.63540
36947223, -1135.2030518205236, -5642.35276048613]
[-3.950349013639071e6, -713988.175668077, -7.0753411807417255e6, 3457.6457
472321704, -1114.382644802096, -5432.213676490608]
[-3.8103770918017263e6, -757954.2014829094, -7.287577894676042e6, 3569.232
0249245613, -1093.2262217216328, -5225.342799844085]
[-3.666137070848082e6, -801071.8181425179, -7.491639729010576e6, 3672.0657
71807242, -1071.7903014921376, -5021.725516050468]
⋮
[7.491444380701823e6, -1.1519857837281816e6, -3.311574225611212e6, -429.61
039609970584, 983.2314389905627, 6324.141776507499]
[7.47008679442232e6, -1.1121772828894344e6, -3.057846948298811e6, -644.330
0331956153, 1015.7215042283959, 6415.704854581804]
[7.439992206550773e6, -1.0710683108921384e6, -2.800538312231903e6, -868.41
19949475369, 1048.5289395702237, 6503.8988109154125]
[7.40077648330755e6, -1.0286466124189486e6, -2.539791699132738e6, -1102.42
67719367128, 1081.6332789938676, 6588.250958548389]
[7.352031954081734e6, -984900.8860138427, -2.275770728726341e6, -1346.9861
100378544, 1115.006903524523, 6668.216277077599]
[7.293325727174974e6, -939821.097506298, -2.0086623559517844e6, -1602.7449
182138312, 1148.613454556738, 6743.165612450278]
[7.22419794261178e6, -893398.8675721127, -1.7386805040109907e6, -1870.4026
951723354, 1182.4058931333684, 6812.371774070615]
[7.144159975935842e6, -845627.9405640081, -1.466070273551918e6, -2150.7042
519927163, 1216.3241315196883, 6874.993162953845]
[7.05269264037486e6, -796504.7623038897, -1.191112886366643e6, -2444.43930
643876, 1250.292132267868, 6930.054473256705]Appendix
Appendix
These benchmarks are a part of the SciMLBenchmarks.jl repository, found at: https://github.com/SciML/SciMLBenchmarks.jl. For more information on high-performance scientific machine learning, check out the SciML Open Source Software Organization https://sciml.ai.
To locally run this benchmark, do the following commands:
using SciMLBenchmarks
SciMLBenchmarks.weave_file("benchmarks/NonStiffBVP","orbital.jmd")Computer Information:
Julia Version 1.11.9
Commit 53a02c0720c (2026-02-06 00:27 UTC)
Build Info:
Official https://julialang.org/ release
Platform Info:
OS: Linux (x86_64-linux-gnu)
CPU: 128 × AMD EPYC 7502 32-Core Processor
WORD_SIZE: 64
LLVM: libLLVM-16.0.6 (ORCJIT, znver2)
Threads: 1 default, 0 interactive, 1 GC (on 128 virtual cores)
Environment:
JULIA_PKG_PRECOMPILE_AUTO = 0
Package Information:
Status `~/sandbox/tmp_20260825_180339_53321/nonstiffbvp-current/benchmarks/NonStiffBVP/Project.toml`
[ded0fc24] BVProblemLibrary v0.1.13
[6e4b80f9] BenchmarkTools v1.8.0
[764a87c0] BoundaryValueDiffEq v5.25.0
[13f3f980] CairoMakie v0.15.14
⌃ [f3b72e0c] DiffEqDevTools v3.6.1
[5959db7a] NonlinearSolveFirstOrder v2.5.0
[54ca160b] ODEInterface v0.5.2
[1dea7af3] OrdinaryDiffEq v7.8.1
[1344f307] OrdinaryDiffEqLowOrderRK v2.2.5
[91a5bcdd] Plots v1.41.7
[0bca4576] SciMLBase v3.50.2
⌃ [31c91b34] SciMLBenchmarks v0.1.3
[be0294bd] SimpleBoundaryValueDiffEq v1.6.0
Info Packages marked with ⌃ have new versions available and may be upgradable.And the full manifest:
Status `~/sandbox/tmp_20260825_180339_53321/nonstiffbvp-current/benchmarks/NonStiffBVP/Manifest.toml`
[47edcb42] ADTypes v1.24.0
⌃ [14f7f29c] AMD v0.5.3
[621f4979] AbstractFFTs v1.5.0
[1520ce14] AbstractTrees v0.4.5
[7d9f7c33] Accessors v0.1.45
[79e6a3ab] Adapt v4.7.0
[35492f91] AdaptivePredicates v1.2.0
[66dad0bd] AliasTables v1.1.3
[a95523ee] AlmostBlockDiagonals v0.1.10
[27a7e980] Animations v0.4.2
[4fba245c] ArrayInterface v7.30.1
[4c555306] ArrayLayouts v1.12.2
[67c07d97] Automa v1.2.0
[13072b0f] AxisAlgorithms v1.1.0
[39de3d68] AxisArrays v0.4.8
[ded0fc24] BVProblemLibrary v0.1.13
[aae01518] BandedMatrices v1.12.0
[18cc8868] BaseDirs v1.4.0
[6e4b80f9] BenchmarkTools v1.8.0
[b2a6c25c] BinaryHeaps v1.1.0
[764a87c0] BoundaryValueDiffEq v5.25.0
[7227322d] BoundaryValueDiffEqAscher v1.16.1
[56b672f2] BoundaryValueDiffEqCore v2.8.3
[85d9eb09] BoundaryValueDiffEqFIRK v1.19.1
[1a22d4ce] BoundaryValueDiffEqMIRK v1.18.1
[9255f1d6] BoundaryValueDiffEqMIRKN v1.17.1
[ed55bfe0] BoundaryValueDiffEqShooting v1.18.2
[70df07ce] BracketingNonlinearSolve v1.12.6
[fa961155] CEnum v0.5.0
[96374032] CRlibm v1.0.2
[159f3aea] Cairo v1.1.1
[13f3f980] CairoMakie v0.15.14
[d360d2e6] ChainRulesCore v1.26.1
[6b39b394] CodecZstd v0.8.7
[a2cac450] ColorBrewer v0.4.2
[35d6a980] ColorSchemes v3.31.0
[3da002f7] ColorTypes v0.12.1
[c3611d14] ColorVectorSpace v0.11.0
[5ae59095] Colors v0.13.1
[861a8166] Combinatorics v1.1.0
[38540f10] CommonSolve v0.2.14
[bbf7d656] CommonSubexpressions v0.3.1
[34da2185] Compat v4.18.1
[a33af91c] CompositionsBase v0.1.2
[95dc2771] ComputePipeline v0.1.8
[2569d6c7] ConcreteStructs v0.2.8
[8f4d0f93] Conda v1.10.3
[187b0558] ConstructionBase v1.6.0
[d38c429a] Contour v0.6.3
[b7a15901] CoreMath v0.1.0
[a8cc5b0e] Crayons v4.2.0
[9a962f9c] DataAPI v1.16.0
[864edb3b] DataStructures v0.19.6
[e2d170a0] DataValueInterfaces v1.0.0
[927a84f5] DelaunayTriangulation v1.6.6
[8bb1440f] DelimitedFiles v1.9.1
[2b5f629d] DiffEqBase v7.20.0
⌃ [f3b72e0c] DiffEqDevTools v3.6.1
[77a26b50] DiffEqNoiseProcess v5.36.2
[163ba53b] DiffResults v1.1.0
[b552c78f] DiffRules v1.16.0
[a0c0ee7d] DifferentiationInterface v0.7.21
[31c24e10] Distributions v0.25.131
[ffbed154] DocStringExtensions v0.9.5
[4e289a0a] EnumX v1.0.7
[f151be2c] EnzymeCore v0.8.21
[429591f6] ExactPredicates v2.2.9
[e2ba6199] ExprTools v0.1.11
[c87230d0] FFMPEG v0.4.5
[b86e33f2] FFTA v0.3.1
[9d29842c] FastAlmostBandedMatrices v0.1.12
[7034ab61] FastBroadcast v1.4.0
[9aa1b823] FastClosures v0.3.2
[a4df4552] FastPower v1.5.0
[5789e2e9] FileIO v1.20.0
[8fc22ac5] FilePaths v0.9.0
[48062228] FilePathsBase v0.9.24
[1a297f60] FillArrays v1.17.0
[64ca27bc] FindFirstFunctions v3.2.1
[6a86dc24] FiniteDiff v2.33.0
⌅ [53c48c17] FixedPointNumbers v0.8.6
[1fa38f19] Format v1.3.7
[f6369f11] ForwardDiff v1.4.5
[b38be410] FreeType v4.1.1
[663a7486] FreeTypeAbstraction v0.10.8
[069b7b12] FunctionWrappers v1.1.3
[77dc65aa] FunctionWrappersWrappers v1.13.0
[46192b85] GPUArraysCore v0.2.0
[28b8d3ca] GR v0.73.27
[a0844989] Gamma v1.2.0
[5c1252a2] GeometryBasics v0.5.12
[d7ba0133] Git v1.5.0
[a2bd30eb] Graphics v1.1.3
[3955a311] GridLayoutBase v0.11.3
[19dc6840] HCubature v1.8.0
⌅ [eafb193a] Highlights v0.5.3
[34004b35] HypergeometricFunctions v0.3.30
[7073ff75] IJulia v1.34.4
[2803e5a7] ImageAxes v0.6.12
[c817782e] ImageBase v0.1.7
[a09fc81d] ImageCore v0.10.5
[82e4d734] ImageIO v0.6.10
[bc367c6b] ImageMetadata v0.9.10
[9b13fd28] IndirectArrays v1.0.0
[d25df0c9] Inflate v0.1.5
[18e54dd8] IntegerMathUtils v0.1.4
[de52edbc] Integrals v5.5.0
[a98d9a8b] Interpolations v0.16.3
[d1acc4aa] IntervalArithmetic v1.0.11
[8197267c] IntervalSets v0.7.14
[3587e190] InverseFunctions v0.1.17
[92d709cd] IrrationalConstants v0.2.6
[f1662d9f] Isoband v0.1.1
[c8e1da08] IterTools v1.10.0
[82899510] IteratorInterfaceExtensions v1.0.0
[1019f520] JLFzf v0.1.11
[692b3bcd] JLLWrappers v1.8.0
⌅ [682c06a0] JSON v0.21.4
[b835a17e] JpegTurbo v0.1.6
[5ab0869b] KernelDensity v0.6.12
[ba0b0d4f] Krylov v0.10.9
[2faa5264] LHLFactorization v2.2.2
[b964fa9f] LaTeXStrings v1.4.1
[23fbe1c1] Latexify v0.16.12
[73f95e8e] LatticeRules v0.0.1
[5078a376] LazyArrays v2.12.0
[8cdb02fc] LazyModules v0.3.1
[87fe0de2] LineSearch v0.1.16
[7ed4a6bd] LinearSolve v5.15.1
[2ab3a3ac] LogExpFunctions v1.0.1
[e6f89c97] LoggingExtras v1.2.0
[1914dd2f] MacroTools v0.5.16
[ee78f7c6] Makie v0.24.14
[dbb5928d] MappedArrays v0.4.3
[0a4f8689] MathTeXEngine v0.6.9
[a3b82374] MatrixFactorizations v3.1.3
[bb5d69b7] MaybeInplace v0.1.8
[442fdcdd] Measures v0.3.3
[e1d29d7a] Missings v1.2.0
[4886b29c] MonteCarloIntegration v0.2.0
[e94cdb99] MosaicViews v0.3.4
[46d2c3a1] MuladdMacro v0.2.7
[ffc61752] Mustache v1.0.21
[77ba4419] NaNMath v1.1.4
[f09324ee] Netpbm v1.1.1
[8913a72c] NonlinearSolve v4.29.1
[be0214bd] NonlinearSolveBase v2.49.2
[5959db7a] NonlinearSolveFirstOrder v2.5.0
[9a2c21bd] NonlinearSolveQuasiNewton v1.15.3
[26075421] NonlinearSolveSpectralMethods v1.8.1
[54ca160b] ODEInterface v0.5.2
[510215fc] Observables v0.5.5
[6fe1bfb0] OffsetArrays v1.17.0
[52e1d378] OpenEXR v0.3.3
[bca83a33] OptimizationBase v5.5.3
[bac558e1] OrderedCollections v2.0.1
[1dea7af3] OrdinaryDiffEq v7.8.1
[6ad6398a] OrdinaryDiffEqBDF v2.4.6
[bbf590c4] OrdinaryDiffEqCore v4.16.0
[50262376] OrdinaryDiffEqDefault v2.6.0
[4302a76b] OrdinaryDiffEqDifferentiation v3.11.4
[1344f307] OrdinaryDiffEqLowOrderRK v2.2.5
[127b3ac7] OrdinaryDiffEqNonlinearSolve v2.9.4
[43230ef6] OrdinaryDiffEqRosenbrock v2.7.1
[b4bd8bb3] OrdinaryDiffEqRosenbrockTableaus v2.4.2
[2d112036] OrdinaryDiffEqSDIRK v2.9.2
[b1df2697] OrdinaryDiffEqTsit5 v2.1.4
[79d7bb75] OrdinaryDiffEqVerner v2.4.1
[90014a1f] PDMats v0.11.41
[f57f5aa1] PNGFiles v0.4.5
[19eb6ba3] Packing v0.5.1
[5432bcbf] PaddedViews v0.5.12
⌅ [69de0a69] Parsers v2.8.7
[eebad327] PkgVersion v0.3.3
[ccf2f8ad] PlotThemes v3.3.0
[995b91a9] PlotUtils v1.4.4
[91a5bcdd] Plots v1.41.7
[e409e4f3] PoissonRandom v0.4.13
[647866c9] PolygonOps v0.1.2
[d236fae5] PreallocationTools v1.7.1
⌅ [aea7be01] PrecompileTools v1.2.1
[21216c6a] Preferences v1.5.2
[08abe8d2] PrettyTables v3.4.8
[27ebfcd6] Primes v0.5.7
[92933f4c] ProgressMeter v1.11.0
[43287f4e] PtrArrays v1.4.0
[0c0d3e7f] PureKLU v1.4.1
[4b34888f] QOI v1.0.2
[1fd47b50] QuadGK v2.11.3
⌅ [8a4e6c94] QuasiMonteCarlo v0.3.11
[b3c3ace0] RangeArrays v0.3.2
[c84ed2f1] Ratios v0.4.5
[3cdcf5f2] RecipesBase v1.3.4
[01d81517] RecipesPipeline v0.6.12
[731186ca] RecursiveArrayTools v4.5.1
[189a3867] Reexport v1.2.2
[05181044] RelocatableFolders v1.0.1
[ae029012] Requires v1.3.1
[ae5879a3] ResettableStacks v1.4.0
[9fe22ead] RespecializeParams v1.3.0
[79098fc4] Rmath v0.9.0
[47965b36] RootedTrees v2.27.0
[f2b01f46] Roots v3.0.8
[5eaf0fd0] RoundingEmulator v0.2.1
[7e49a35a] RuntimeGeneratedFunctions v0.5.25
[fdea26ae] SIMD v3.7.2
[0bca4576] SciMLBase v3.50.2
⌃ [31c91b34] SciMLBenchmarks v0.1.3
[19f34311] SciMLJacobianOperators v0.1.18
[a6db7da4] SciMLLogging v2.1.0
[c0aeaf25] SciMLOperators v1.30.0
[431bcebd] SciMLPublic v1.3.0
[53ae85a6] SciMLStructures v1.10.5
[6c6a2e73] Scratch v1.3.0
[efcf1570] Setfield v1.1.2
[65257c39] ShaderAbstractions v0.5.0
[992d4aef] Showoff v1.1.1
[73760f76] SignedDistanceFields v0.4.1
[be0294bd] SimpleBoundaryValueDiffEq v1.6.0
[727e6d20] SimpleNonlinearSolve v2.14.1
[699a6c99] SimpleTraits v0.9.6
[45858cf5] Sixel v0.1.5
[ed01d8cd] Sobol v1.5.0
[a2af1166] SortingAlgorithms v1.2.3
⌃ [a57abbd0] SparseColumnPivotedQR v2.1.7
[9f842d2f] SparseConnectivityTracer v1.2.3
⌃ [0a514795] SparseMatrixColorings v0.4.27
[276daf66] SpecialFunctions v2.9.0
[860ef19b] StableRNGs v1.0.4
[cae243ae] StackViews v0.1.2
[90137ffa] StaticArrays v1.9.20
[1e83bf80] StaticArraysCore v1.4.4
[10745b16] Statistics v1.11.5
[82ae8749] StatsAPI v1.8.0
[2913bbd2] StatsBase v0.34.13
[4c63d2b9] StatsFuns v2.2.1
[69024149] StringEncodings v0.3.7
⌅ [892a3eda] StringManipulation v0.5.0
[09ab397b] StructArrays v0.7.3
[2efcf032] SymbolicIndexingInterface v0.3.55
[3783bdb8] TableTraits v1.0.1
[bd369af6] Tables v1.14.0
[62fd8b95] TensorCore v0.1.1
[731e570b] TiffImages v0.11.9
[a759f4b9] TimerOutputs v1.2.1
[3bb67fe8] TranscodingStreams v0.11.3
[981d1d27] TriplotBase v0.1.0
[781d530d] TruncatedStacktraces v1.4.0
[1cfade01] UnicodeFun v0.4.1
⌃ [1986cc42] Unitful v1.28.0
[41fe7b60] Unzip v0.2.0
[81def892] VersionParsing v1.3.0
[44d3d7a6] Weave v0.10.12
[e3aaa7dc] WebP v0.1.3
[efce3f68] WoodburyMatrices v1.1.0
[ddb6d928] YAML v0.4.16
[c2297ded] ZMQ v1.5.1
[6e34b625] Bzip2_jll v1.0.9+0
[4e9b3aee] CRlibm_jll v1.0.1+0
[83423d85] Cairo_jll v1.18.7+0
[a38c48d9] CoreMath_jll v0.1.0+0
[ee1fde0b] Dbus_jll v1.16.2+0
⌅ [5ae413db] EarCut_jll v2.2.4+0
[2702e6a9] EpollShim_jll v0.0.20230411+1
[2e619515] Expat_jll v2.8.3+0
⌅ [b22a6f82] FFMPEG_jll v8.1.2+0
[a3f928ae] Fontconfig_jll v2.17.1+0
[d7e528f0] FreeType2_jll v2.14.3+1
[559328eb] FriBidi_jll v1.0.17+0
[0656b61e] GLFW_jll v3.5.1+0
[d2c73de3] GR_jll v0.73.27+0
⌅ [b0724c58] GettextRuntime_jll v0.22.4+0
[61579ee1] Ghostscript_jll v9.55.1+0
⌅ [59f7168a] Giflib_jll v5.2.3+0
[020c3dae] Git_LFS_jll v3.7.1+0
[f8c6e375] Git_jll v2.55.0+0
[7746bdde] Glib_jll v2.88.3+0
[3b182d85] Graphite2_jll v1.3.16+0
[2e76f6c2] HarfBuzz_jll v100.14003.0+0
[905a6f67] Imath_jll v3.2.2+0
[1d5cc7b8] IntelOpenMP_jll v2025.2.0+0
[aacddb02] JpegTurbo_jll v3.2.0+1
[c1c5ebd0] LAME_jll v3.100.3+0
[88015f11] LERC_jll v4.1.0+0
[1d63c593] LLVMOpenMP_jll v22.1.7+0
⌅ [e9f186c6] Libffi_jll v3.4.7+0
[7e76a0d4] Libglvnd_jll v1.7.1+1
[94ce4f54] Libiconv_jll v1.18.0+0
[4b2f31a3] Libmount_jll v2.42.0+0
[89763e89] Libtiff_jll v4.7.3+0
[38a345b3] Libuuid_jll v2.42.0+0
[856f044c] MKL_jll v2025.2.0+0
[c771fb93] ODEInterface_jll v0.0.2+0
[e7412a2a] Ogg_jll v1.3.6+0
[6cdc7f73] OpenBLASConsistentFPCSR_jll v0.3.34+0
[18a262bb] OpenEXR_jll v3.4.14+0
[9bd350c2] OpenSSH_jll v10.5.1+0
[458c3c95] OpenSSL_jll v3.5.8+0
[efe28fd5] OpenSpecFun_jll v0.5.6+0
[91d4177d] Opus_jll v1.6.1+0
[36c8627f] Pango_jll v1.58.2+0
[30392449] Pixman_jll v0.46.4+0
[c0090381] Qt6Base_jll v6.10.2+2
[629bc702] Qt6Declarative_jll v6.10.2+2
[ce943373] Qt6ShaderTools_jll v6.10.2+1
[6de9746b] Qt6Svg_jll v6.10.2+0
[e99dba38] Qt6Wayland_jll v6.10.2+1
[f50d1b31] Rmath_jll v0.5.2+0
[a44049a8] Vulkan_Loader_jll v1.3.243+0
[a2964d1f] Wayland_jll v1.24.0+0
[ffd25f8a] XZ_jll v5.8.3+0
[f67eecfb] Xorg_libICE_jll v1.1.2+0
[c834827a] Xorg_libSM_jll v1.2.6+0
[4f6342f7] Xorg_libX11_jll v1.8.13+0
[0c0b7dd1] Xorg_libXau_jll v1.0.13+0
[935fb764] Xorg_libXcursor_jll v1.2.4+0
[a3789734] Xorg_libXdmcp_jll v1.1.6+0
[1082639a] Xorg_libXext_jll v1.3.8+0
[d091e8ba] Xorg_libXfixes_jll v6.0.2+0
[a51aa0fd] Xorg_libXi_jll v1.8.4+0
[d1454406] Xorg_libXinerama_jll v1.1.7+0
[ec84b674] Xorg_libXrandr_jll v1.5.6+0
[ea2f1a96] Xorg_libXrender_jll v0.9.12+0
[a65dc6b1] Xorg_libpciaccess_jll v0.19.0+0
[c7cfdc94] Xorg_libxcb_jll v1.17.1+0
[cc61e674] Xorg_libxkbfile_jll v1.2.0+0
[e920d4aa] Xorg_xcb_util_cursor_jll v0.1.6+0
[12413925] Xorg_xcb_util_image_jll v0.4.1+0
[2def613f] Xorg_xcb_util_jll v0.4.1+0
[975044d2] Xorg_xcb_util_keysyms_jll v0.4.1+0
[0d47668e] Xorg_xcb_util_renderutil_jll v0.3.10+0
[c22f9ab0] Xorg_xcb_util_wm_jll v0.4.2+0
[35661453] Xorg_xkbcomp_jll v1.4.7+0
[33bec58e] Xorg_xkeyboard_config_jll v2.47.0+2
[c5fb5394] Xorg_xtrans_jll v1.6.0+0
[8f1865be] ZeroMQ_jll v4.3.6+0
[3161d3a3] Zstd_jll v1.5.7+1
[35ca27e7] eudev_jll v3.2.14+0
⌅ [214eeab7] fzf_jll v0.61.1+0
[9a68df92] isoband_jll v0.2.3+0
[a4ae2306] libaom_jll v3.14.1+0
[0ac62f75] libass_jll v0.17.5+0
[1183f4f0] libdecor_jll v0.2.2+0
[8e53e030] libdrm_jll v2.4.134+0
[2db6ffa8] libevdev_jll v1.13.4+0
[f638f0a6] libfdk_aac_jll v2.0.4+0
[36db933b] libinput_jll v1.28.1+0
[b53b4c65] libpng_jll v1.6.58+0
[075b6546] libsixel_jll v1.10.5+0
[a9144af2] libsodium_jll v1.0.21+0
[9a156e7d] libva_jll v2.23.0+0
[f27f6e37] libvorbis_jll v1.3.8+0
[c5f90fcd] libwebp_jll v1.6.0+0
[009596ad] mtdev_jll v1.1.7+0
[1317d2d5] oneTBB_jll v2022.3.0+0
⌅ [1270edf5] x264_jll v10164.0.1+0
[dfaa095f] x265_jll v4.1.0+0
[d8fb68d0] xkbcommon_jll v1.13.0+0
[0dad84c5] ArgTools v1.1.2
[56f22d72] Artifacts v1.11.0
[2a0f44e3] Base64 v1.11.0
[8bf52ea8] CRC32c v1.11.0
[ade2ca70] Dates v1.11.0
[8ba89e20] Distributed v1.11.0
[f43a241f] Downloads v1.6.0
[7b1f6079] FileWatching v1.11.0
[9fa8497b] Future v1.11.0
[b77e0a4c] InteractiveUtils v1.11.0
[4af54fe1] LazyArtifacts v1.11.0
[b27032c2] LibCURL v0.6.4
[76f85450] LibGit2 v1.11.0
[8f399da3] Libdl v1.11.0
[37e2e46d] LinearAlgebra v1.11.0
[56ddb016] Logging v1.11.0
[d6f4376e] Markdown v1.11.0
[a63ad114] Mmap v1.11.0
[ca575930] NetworkOptions v1.2.0
[44cfe95a] Pkg v1.11.0
[de0858da] Printf v1.11.0
[9abbd945] Profile v1.11.0
[3fa0cd96] REPL v1.11.0
[9a3f8284] Random v1.11.0
[ea8e919c] SHA v0.7.0
[9e88b42a] Serialization v1.11.0
[1a1011a3] SharedArrays v1.11.0
[6462fe0b] Sockets v1.11.0
[2f01184e] SparseArrays v1.11.0
[f489334b] StyledStrings v1.11.0
[4607b0f0] SuiteSparse
[fa267f1f] TOML v1.0.3
[a4e569a6] Tar v1.10.0
[8dfed614] Test v1.11.0
[cf7118a7] UUIDs v1.11.0
[4ec0a83e] Unicode v1.11.0
[e66e0078] CompilerSupportLibraries_jll v1.1.1+0
[deac9b47] LibCURL_jll v8.6.0+0
[e37daf67] LibGit2_jll v1.7.2+0
[29816b5a] LibSSH2_jll v1.11.0+1
[c8ffd9c3] MbedTLS_jll v2.28.6+0
[14a3606d] MozillaCACerts_jll v2023.12.12
[4536629a] OpenBLAS_jll v0.3.27+1
[05823500] OpenLibm_jll v0.8.5+0
[efcefdf7] PCRE2_jll v10.42.0+1
[bea87d4a] SuiteSparse_jll v7.7.0+0
[83775a58] Zlib_jll v1.2.13+1
[8e850b90] libblastrampoline_jll v5.11.0+0
[8e850ede] nghttp2_jll v1.59.0+0
[3f19e933] p7zip_jll v17.4.0+2
Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`