Inheritance
classDiagram
class ABC
class AbstractResidue
link AbstractResidue "./_autosummary/cosapp.core.numerics.residues.html#cosapp.core.numerics.residues.AbstractResidue" "Abstract class defining residue for solvers."
class AbstractTimeUnknown
link AbstractTimeUnknown "./_autosummary/cosapp.core.numerics.boundary.html#cosapp.core.numerics.boundary.AbstractTimeUnknown" "AbstractTimeUnknown"
ABC <|-- AbstractTimeUnknown
class BaseNumericalSolver
link BaseNumericalSolver "./_autosummary/cosapp.core.numerics.root.html#cosapp.core.numerics.root.BaseNumericalSolver" "BaseNumericalSolver"
ABC <|-- BaseNumericalSolver
class Boundary
link Boundary "./_autosummary/cosapp.core.numerics.boundary.html#cosapp.core.numerics.boundary.Boundary" "Numerical solver boundary."
class CustomSolver
link CustomSolver "./_autosummary/cosapp.core.numerics.root.html#cosapp.core.numerics.root.CustomSolver" "Custom Newton-Raphson solver."
BaseNumericalSolver <|-- CustomSolver
class DeferredResidue
link DeferredResidue "./_autosummary/cosapp.core.numerics.residues.html#cosapp.core.numerics.residues.DeferredResidue" "Class representing a residue whose left-hand side evaluation is deferred."
class Enum
class MathematicalProblem
link MathematicalProblem "./_autosummary/cosapp.core.numerics.basics.html#cosapp.core.numerics.basics.MathematicalProblem" "Container object for unknowns and equations."
class NonLinearMethods
link NonLinearMethods "./_autosummary/cosapp.core.numerics.enum.html#cosapp.core.numerics.enum.NonLinearMethods" "Enumeration of non-linear algorithm available."
Enum <|-- NonLinearMethods
class NumpySolver
link NumpySolver "./_autosummary/cosapp.core.numerics.root.html#cosapp.core.numerics.root.NumpySolver" "Encapsulation of `scipy.optimize.root`"
BaseNumericalSolver <|-- NumpySolver
class Residue
link Residue "./_autosummary/cosapp.core.numerics.residues.html#cosapp.core.numerics.residues.Residue" "Classical residue definition based on an equality equation"
AbstractResidue <|-- Residue
class SolverResults
link SolverResults "./_autosummary/cosapp.core.numerics.basics.html#cosapp.core.numerics.basics.SolverResults" "Storage class for solver solution"
class TimeDerivative
link TimeDerivative "./_autosummary/cosapp.core.numerics.boundary.html#cosapp.core.numerics.boundary.TimeDerivative" "Explicit time derivative."
Boundary <|-- TimeDerivative
class TimeUnknown
link TimeUnknown "./_autosummary/cosapp.core.numerics.boundary.html#cosapp.core.numerics.boundary.TimeUnknown" "Time-dependent solver unknown."
Boundary <|-- TimeUnknown
AbstractTimeUnknown <|-- TimeUnknown
class Unknown
link Unknown "./_autosummary/cosapp.core.numerics.boundary.html#cosapp.core.numerics.boundary.Unknown" "Numerical solver unknown."
Boundary <|-- Unknown
class WeakDeferredResidue
link WeakDeferredResidue "./_autosummary/cosapp.core.numerics.basics.html#cosapp.core.numerics.basics.WeakDeferredResidue" "WeakDeferredResidue(deferred, weak)"
classDiagram
class AbstractSetOfCases
link AbstractSetOfCases "./_autosummary/cosapp.drivers.abstractsetofcases.html#cosapp.drivers.abstractsetofcases.AbstractSetOfCases" "This driver builds a set of cases from a list"
Driver <|-- AbstractSetOfCases
class AbstractSolver
link AbstractSolver "./_autosummary/cosapp.drivers.abstractsolver.html#cosapp.drivers.abstractsolver.AbstractSolver" "Solve a `System`"
Driver <|-- AbstractSolver
class Component
link Component "./_autosummary/cosapp.patterns.visitor.html#cosapp.patterns.visitor.Component" "Abstract Base Class for visited components"
class Driver
link Driver "./_autosummary/cosapp.drivers.driver.html#cosapp.drivers.driver.Driver" "Abstract base class for all systems drivers."
Module <|-- Driver
class EulerExplicit
link EulerExplicit "./_autosummary/cosapp.drivers.time.euler.html#cosapp.drivers.time.euler.EulerExplicit" "EulerExplicit"
ExplicitTimeDriver <|-- EulerExplicit
class EventRecord
link EventRecord "./_autosummary/cosapp.drivers.time.interfaces.html#cosapp.drivers.time.interfaces.EventRecord" "Named tuple associating a list of joint events"
class ExplicitTimeDriver
link ExplicitTimeDriver "./_autosummary/cosapp.drivers.time.interfaces.html#cosapp.drivers.time.interfaces.ExplicitTimeDriver" "Generic implementation of an explicit time driver with constant time step."
Driver <|-- ExplicitTimeDriver
class Influence
link Influence "./_autosummary/cosapp.drivers.influence.html#cosapp.drivers.influence.Influence" "This driver evaluate the influence between inputs and outputs (floats only)"
AbstractSetOfCases <|-- Influence
class IterativeCase
link IterativeCase "./_autosummary/cosapp.drivers.iterativecase.html#cosapp.drivers.iterativecase.IterativeCase" "Abstract interface to children cases for a :py:class:`~cosapp.drivers.abstractsolver.AbstractSolver`."
RunOnce <|-- IterativeCase
class LinearDoE
link LinearDoE "./_autosummary/cosapp.drivers.lineardoe.html#cosapp.drivers.lineardoe.LinearDoE" "This driver builds a set of linear Doe"
AbstractSetOfCases <|-- LinearDoE
class LoggerContext
link LoggerContext "./_autosummary/cosapp.utils.logging.html#cosapp.utils.logging.LoggerContext" "Interface for context object to connect to the logging system."
class MetaSystemBuilder
link MetaSystemBuilder "./_autosummary/cosapp.drivers.metasystembuilder.html#cosapp.drivers.metasystembuilder.MetaSystemBuilder" "MetaSystemBuilder"
Driver <|-- MetaSystemBuilder
class Module
link Module "./_autosummary/cosapp.core.module.html#cosapp.core.module.Module" "A class to describe generic properties and functions of a component that can be single or"
LoggerContext <|-- Module
Component <|-- Module
class MonteCarlo
link MonteCarlo "./_autosummary/cosapp.drivers.montecarlo.html#cosapp.drivers.montecarlo.MonteCarlo" "This driver execute a MonteCarlo simulation on its system."
AbstractSetOfCases <|-- MonteCarlo
class NonLinearSolver
link NonLinearSolver "./_autosummary/cosapp.drivers.nonlinearsolver.html#cosapp.drivers.nonlinearsolver.NonLinearSolver" "Solve mathematical problem with algebraic variables."
AbstractSolver <|-- NonLinearSolver
class Optimizer
link Optimizer "./_autosummary/cosapp.drivers.optimizer.html#cosapp.drivers.optimizer.Optimizer" "Driver running an optimization problem on its `System` owner."
AbstractSolver <|-- Optimizer
class OptionalDriver
link OptionalDriver "./_autosummary/cosapp.drivers.optionaldriver.html#cosapp.drivers.optionaldriver.OptionalDriver" "Abstract class to be inherited by driver turn off during heavy computation."
Driver <|-- OptionalDriver
class RandomVariable
link RandomVariable "./_autosummary/cosapp.drivers.montecarlo.html#cosapp.drivers.montecarlo.RandomVariable" "RandomVariable(variable, distribution, connector)"
class RunOnce
link RunOnce "./_autosummary/cosapp.drivers.runonce.html#cosapp.drivers.runonce.RunOnce" "Driver running the model on its `System` owner."
Driver <|-- RunOnce
class RunSingleCase
link RunSingleCase "./_autosummary/cosapp.drivers.runsinglecase.html#cosapp.drivers.runsinglecase.RunSingleCase" "Set new boundary conditions and equations on the system."
IterativeCase <|-- RunSingleCase
class RungeKutta
link RungeKutta "./_autosummary/cosapp.drivers.time.runge_kutta.html#cosapp.drivers.time.runge_kutta.RungeKutta" "Implementation of a few Runge-Kutta methods for time integration."
ExplicitTimeDriver <|-- RungeKutta
class ValidityCheck
link ValidityCheck "./_autosummary/cosapp.drivers.validitycheck.html#cosapp.drivers.validitycheck.ValidityCheck" "When executed, this driver reports in the log the validity status for all variables of the"
OptionalDriver <|-- ValidityCheck
classDiagram
class BasePort
link BasePort "./_autosummary/cosapp.ports.port.html#cosapp.ports.port.BasePort" "Base class for ports, containers gathering variables."
Component <|-- BasePort
class Component
link Component "./_autosummary/cosapp.patterns.visitor.html#cosapp.patterns.visitor.Component" "Abstract Base Class for visited components"
class ExtensiblePort
link ExtensiblePort "./_autosummary/cosapp.ports.port.html#cosapp.ports.port.ExtensiblePort" "Class describing ports with a varying number of variables."
BasePort <|-- ExtensiblePort
class ModeVarPort
link ModeVarPort "./_autosummary/cosapp.ports.port.html#cosapp.ports.port.ModeVarPort" "Class used for the local storage of mode variables."
BasePort <|-- ModeVarPort
class Port
link Port "./_autosummary/cosapp.ports.port.html#cosapp.ports.port.Port" "A `Port` is a container gathering variables tightly linked."
BasePort <|-- Port
classDiagram
class ABC
class BaseConnector
link BaseConnector "./_autosummary/cosapp.ports.connectors.html#cosapp.ports.connectors.BaseConnector" "This class connect two ports without enforcing that all port variables are connected."
ABC <|-- BaseConnector
class Connector
link Connector "./_autosummary/cosapp.ports.connectors.html#cosapp.ports.connectors.Connector" "Shallow copy connector."
BaseConnector <|-- Connector
class ConnectorError
link ConnectorError "./_autosummary/cosapp.ports.connectors.html#cosapp.ports.connectors.ConnectorError" "Raised if a connector cannot be created between two `Port`."
classDiagram
class ABC
class BaseRecorder
link BaseRecorder "./_autosummary/cosapp.recorders.recorder.html#cosapp.recorders.recorder.BaseRecorder" "Abstract base class for recorders."
ABC <|-- BaseRecorder
class DSVRecorder
link DSVRecorder "./_autosummary/cosapp.recorders.dsv_recorder.html#cosapp.recorders.dsv_recorder.DSVRecorder" "Record data into Delimiter Separated Value file."
BaseRecorder <|-- DSVRecorder
class DataFrameRecorder
link DataFrameRecorder "./_autosummary/cosapp.recorders.dataframe_recorder.html#cosapp.recorders.dataframe_recorder.DataFrameRecorder" "Record data into a pandas.DataFrame."
BaseRecorder <|-- DataFrameRecorder
class SpecialColumns
link SpecialColumns "./_autosummary/cosapp.recorders.recorder.html#cosapp.recorders.recorder.SpecialColumns" "SpecialColumns(section, status, code, reference)"
classDiagram
class ABC
class Client
link Client "./_autosummary/cosapp.systems.externalsystem.html#cosapp.systems.externalsystem.Client" "Client"
Communication <|-- Client
class Communication
link Communication "./_autosummary/cosapp.systems.externalsystem.html#cosapp.systems.externalsystem.Communication" "Communication"
class Component
link Component "./_autosummary/cosapp.patterns.visitor.html#cosapp.patterns.visitor.Component" "Abstract Base Class for visited components"
class ConversionType
link ConversionType "./_autosummary/cosapp.systems.system.html#cosapp.systems.system.ConversionType" "Enumeration of `System` conversion type."
Enum <|-- ConversionType
class Enum
class ExecutionOrdering
link ExecutionOrdering "./_autosummary/cosapp.systems.system.html#cosapp.systems.system.ExecutionOrdering" "Enumeration of `System` algorithm to define component execution order."
Enum <|-- ExecutionOrdering
class ExternalSystem
link ExternalSystem "./_autosummary/cosapp.systems.externalsystem.html#cosapp.systems.externalsystem.ExternalSystem" "ExternalSystem"
System <|-- ExternalSystem
class LoggerContext
link LoggerContext "./_autosummary/cosapp.utils.logging.html#cosapp.utils.logging.LoggerContext" "Interface for context object to connect to the logging system."
class MetaSystem
link MetaSystem "./_autosummary/cosapp.systems.metamodels.html#cosapp.systems.metamodels.MetaSystem" "Based :py:class:`~cosapp.systems.system.System` to insert meta-system inside CoSApp."
System <|-- MetaSystem
class Module
link Module "./_autosummary/cosapp.core.module.html#cosapp.core.module.Module" "A class to describe generic properties and functions of a component that can be single or"
LoggerContext <|-- Module
Component <|-- Module
class Observer
link Observer "./_autosummary/cosapp.patterns.observer.html#cosapp.patterns.observer.Observer" "Generic interface for observers"
ABC <|-- Observer
class ProcessSystem
link ProcessSystem "./_autosummary/cosapp.systems.processsystem.html#cosapp.systems.processsystem.ProcessSystem" "ProcessSystem"
ExternalSystem <|-- ProcessSystem
class Server
link Server "./_autosummary/cosapp.systems.externalsystem.html#cosapp.systems.externalsystem.Server" "Server"
Communication <|-- Server
class System
link System "./_autosummary/cosapp.systems.system.html#cosapp.systems.system.System" "A class to describe generic properties and functions of a component that can be single or"
Module <|-- System
TimeObserver <|-- System
class SystemFamily
link SystemFamily "./_autosummary/cosapp.systems.systemfamily.html#cosapp.systems.systemfamily.SystemFamily" "Abstract class defining a family of `System` convertible in one another."
System <|-- SystemFamily
class SystemFamilyModelings
link SystemFamilyModelings "./_autosummary/cosapp.systems.systemfamily.html#cosapp.systems.systemfamily.SystemFamilyModelings" "SystemFamilyModelings"
class TCPSystem
link TCPSystem "./_autosummary/cosapp.systems.externalsystem.html#cosapp.systems.externalsystem.TCPSystem" "TCPSystem"
ExternalSystem <|-- TCPSystem
class TimeObserver
link TimeObserver "./_autosummary/cosapp.core.time.html#cosapp.core.time.TimeObserver" "Abstract time observer."
Observer <|-- TimeObserver