Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
32 changes: 19 additions & 13 deletions docs/api_reference.jl
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,14 @@ function generate_api_reference(src_dir::String, ext_dir::String)
EXCLUDE_SYMBOLS = Symbol[:include, :eval]
EXCLUDE_INTERNALS = vcat(
EXCLUDE_SYMBOLS,
Symbol[:DOCTYPE_ABSTRACT_TYPE, :DOCTYPE_CONSTANT, :DOCTYPE_FUNCTION,
:DOCTYPE_MACRO, :DOCTYPE_MODULE, :DOCTYPE_STRUCT],
Symbol[
:DOCTYPE_ABSTRACT_TYPE,
:DOCTYPE_CONSTANT,
:DOCTYPE_FUNCTION,
:DOCTYPE_MACRO,
:DOCTYPE_MODULE,
:DOCTYPE_STRUCT,
],
)

# ── Shared config: one entry per submodule ────────────────────────────────
Expand Down Expand Up @@ -114,17 +120,17 @@ function generate_api_reference(src_dir::String, ext_dir::String)
internals_modules = Any[cfg.mod => cfg.files for cfg in modules_config]

for (sym, files) in [
(:CTSolversIpopt, ext("CTSolversIpopt.jl")),
(:CTSolversMadNLP, ext("CTSolversMadNLP.jl")),
(:CTSolversMadNCL, ext("CTSolversMadNCL.jl")),
(:CTSolversKnitro, ext("CTSolversKnitro.jl")),
(:CTSolversUno, ext("CTSolversUno.jl")),
(:CTSolversEnzyme, ext("CTSolversEnzyme.jl")),
(:CTSolversCUDA, ext("CTSolversCUDA.jl")),
(:CTSolversMadNLPGPU, ext("CTSolversMadNLPGPU.jl")),
(:CTSolversZygote, ext("CTSolversZygote.jl")),
(:CTSolversSciMLIntegrator, ext("CTSolversSciMLIntegrator.jl")),
(:CTSolversForwardDiff, ext("CTSolversForwardDiff.jl")),
(:CTSolversIpopt, ext("CTSolversIpopt.jl")),
(:CTSolversMadNLP, ext("CTSolversMadNLP.jl")),
(:CTSolversMadNCL, ext("CTSolversMadNCL.jl")),
(:CTSolversKnitro, ext("CTSolversKnitro.jl")),
(:CTSolversUno, ext("CTSolversUno.jl")),
(:CTSolversEnzyme, ext("CTSolversEnzyme.jl")),
(:CTSolversCUDA, ext("CTSolversCUDA.jl")),
(:CTSolversMadNLPGPU, ext("CTSolversMadNLPGPU.jl")),
(:CTSolversZygote, ext("CTSolversZygote.jl")),
(:CTSolversSciMLIntegrator, ext("CTSolversSciMLIntegrator.jl")),
(:CTSolversForwardDiff, ext("CTSolversForwardDiff.jl")),
(:CTSolversOrdinaryDiffEqTsit5, ext("CTSolversOrdinaryDiffEqTsit5.jl")),
]
extmod = Base.get_extension(CTSolvers, sym)
Expand Down
34 changes: 23 additions & 11 deletions docs/make.jl
Original file line number Diff line number Diff line change
Expand Up @@ -35,10 +35,22 @@ using Zygote

# Make extension modules available in Main so that @docs blocks can resolve
# qualified bindings like CTFlowsSciMLIntegrator.SciMLIntegrationResult.
for _ext_sym in
(:CTSolversADNLPModels, :CTSolversCUDA, :CTSolversEnzyme, :CTSolversExaModels, :CTSolversForwardDiff,
:CTSolversIpopt, :CTSolversKnitro, :CTSolversMadNCL, :CTSolversMadNLP, :CTSolversMadNLPGPU,
:CTSolversOrdinaryDiffEqTsit5, :CTSolversSciMLIntegrator, :CTSolversUno, :CTSolversZygote)
for _ext_sym in (
:CTSolversADNLPModels,
:CTSolversCUDA,
:CTSolversEnzyme,
:CTSolversExaModels,
:CTSolversForwardDiff,
:CTSolversIpopt,
:CTSolversKnitro,
:CTSolversMadNCL,
:CTSolversMadNLP,
:CTSolversMadNLPGPU,
:CTSolversOrdinaryDiffEqTsit5,
:CTSolversSciMLIntegrator,
:CTSolversUno,
:CTSolversZygote,
)
_m = Base.get_extension(CTSolvers, _ext_sym)
isnothing(_m) || @eval Main const $_ext_sym = $_m
end
Expand Down Expand Up @@ -95,16 +107,16 @@ with_api_reference(src_dir, ext_dir) do api_pages
),
pages=[
# index.md is the VitePress root — not listed here
"Getting Started" => "getting-started.md",
"Architecture" => "architecture.md",
"Getting Started" => "getting-started.md",
"Architecture" => "architecture.md",
"Developer Guides" => [
"Implementing a Solver" => "guides/implementing_a_solver.md",
"Implementing an Integrator" => "guides/implementing_an_integrator.md",
"Implementing a Modeler" => "guides/implementing_a_modeler.md",
"Implementing a Solver" => "guides/implementing_a_solver.md",
"Implementing an Integrator" => "guides/implementing_an_integrator.md",
"Implementing a Modeler" => "guides/implementing_a_modeler.md",
"Implementing an Optimization Problem" => "guides/implementing_an_optimization_problem.md",
"Error Messages Reference" => "guides/error_messages.md",
"Error Messages Reference" => "guides/error_messages.md",
],
"API Reference" => api_pages,
"API Reference" => api_pages,
],
plugins=[links],
)
Expand Down
4 changes: 3 additions & 1 deletion ext/CTSolversADNLPModels.jl
Original file line number Diff line number Diff line change
Expand Up @@ -213,7 +213,9 @@ function Modelers.build_adnlp_modeler(
if haskey(kwargs, :adnlp_backend)
@warn "adnlp_backend is deprecated, use backend instead" maxlog=1
end
opts = Strategies.build_strategy_options(Modelers.ADNLP{parameter}; mode=mode, kwargs...)
opts = Strategies.build_strategy_options(
Modelers.ADNLP{parameter}; mode=mode, kwargs...
)
return Modelers.ADNLP{parameter}(opts)
end

Expand Down
6 changes: 4 additions & 2 deletions ext/CTSolversForwardDiff.jl
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ ForwardDiff dual numbers.
module CTSolversForwardDiff

import DocStringExtensions: TYPEDSIGNATURES
import ForwardDiff
using ForwardDiff: ForwardDiff

using CTSolvers.Integrators: Integrators

Expand All @@ -40,6 +40,8 @@ numbers, ensuring grid invariance (IND) when integrating ODEs with dual numbers.

See also: [`CTSolvers.Integrators.real_norm`](@ref), [`CTSolvers.Integrators.deepvalue`](@ref).
"""
Integrators.real_norm(u::ForwardDiff.Dual, t) = Integrators.real_norm(Integrators.deepvalue(u), t)
function Integrators.real_norm(u::ForwardDiff.Dual, t)
return Integrators.real_norm(Integrators.deepvalue(u), t)
end

end # module CTSolversForwardDiff
2 changes: 1 addition & 1 deletion ext/CTSolversIpopt.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ module CTSolversIpopt

import DocStringExtensions: TYPEDSIGNATURES
import CTSolvers.Solvers
import CommonSolve
using CommonSolve: CommonSolve
import CTBase.Strategies
import CTBase.Options
import CTBase.Core
Expand Down
2 changes: 1 addition & 1 deletion ext/CTSolversKnitro.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ module CTSolversKnitro

import DocStringExtensions: TYPEDSIGNATURES
import CTSolvers.Solvers
import CommonSolve
using CommonSolve: CommonSolve
import CTBase.Strategies
import CTBase.Options
import CTBase.Exceptions
Expand Down
2 changes: 1 addition & 1 deletion ext/CTSolversMadNCL.jl
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ module CTSolversMadNCL

import DocStringExtensions: TYPEDSIGNATURES
import CTSolvers.Solvers
import CommonSolve
using CommonSolve: CommonSolve
import CTBase.Strategies
import CTBase.Options
import CTBase.Core
Expand Down
2 changes: 1 addition & 1 deletion ext/CTSolversMadNLP.jl
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ module CTSolversMadNLP
import DocStringExtensions: TYPEDSIGNATURES
import CTSolvers.Optimization
import CTSolvers.Solvers
import CommonSolve
using CommonSolve: CommonSolve
import CTBase.Strategies
import CTBase.Options
import CTBase.Core
Expand Down
Loading