Update Code Architecture and Organization authored by Alain O' Miniussi's avatar Alain O' Miniussi
...@@ -37,9 +37,8 @@ The (incomplete) class diagram[^1] could be summarized as: ...@@ -37,9 +37,8 @@ The (incomplete) class diagram[^1] could be summarized as:
```plantuml ```plantuml
namespace fargOCA { namespace fargOCA {
class SystemPhysic <<(S,#FF7700)>> {
}
class DiskPhysic <<S,#FF7700)>> { class DiskPhysic <<S,#FF7700)>> {
} }
class GridDispatch << (S,#FF7700) >> { class GridDispatch << (S,#FF7700) >> {
...@@ -71,10 +70,15 @@ class Disk { ...@@ -71,10 +70,15 @@ class Disk {
} }
class VectorField { class VectorField {
} }
class SimuProgress { class SimulationDriver {
real physicalTime void operator()(flow, torque)
real step -- private sub steps ---
void isOutputStep() void velocityStep(dt)
void viscosityStep(dt)
void energyStep(dt)
-- private util. --
myRadiationManager
myTransport
} }
class BoundariesHandler { class BoundariesHandler {
string name string name
...@@ -83,42 +87,27 @@ class BoundariesHandler { ...@@ -83,42 +87,27 @@ class BoundariesHandler {
class FctBoundariesHandler { class FctBoundariesHandler {
void operator()(GarsDisk& gas, real step); void operator()(GarsDisk& gas, real step);
} }
FctBoundariesHandler --|> BoundariesHandler FctBoundariesHandler --|> BoundariesHandler
GasDisk o--> "many" BoundariesHandler Disk o--> "many" BoundariesHandler
}
namespace D3 { note top of DiskPhysic
class SimulationDriver {
void operator()(flow, torque)
-- private sub steps ---
void subStep1(..)
void subStep<N>(..)
-- private util. --
myRadiationManager
myTransport
}
}
note top of fargOCA.DiskPhysic
Configuration of the disk Configuration of the disk
physical properties physical properties (viscosity, radiation etc..)
and behavior and behavior.
Caracteristics of the planetary system...
end note end note
note left of fargOCA.SystemPhysic
Configuration of the SimulationDriver o--> Disk
planetary system PlanetarySystem "1"*-->"many" Planet
physical properties PlanetarySystem o--> SystemPhysic
and behavior ScalarField o-->"1" GridDispatch
end note Disk o-->"1" GridDispatch
D3.SimulationDriver o--> fargOCA.Disk Disk o-->"1" DiskPhysic
D3.SimulationDriver o--> fargOCA.SimuProgress Disk o-->"1" PlanetarySystem
fargOCA.PlanetarySystem "1"*-->"many" fargOCA.Planet Disk *--> ScalarField: pressure\n soundSpeed\n density\n viscosity
fargOCA.PlanetarySystem o--> fargOCA.SystemPhysic Disk "1"*-->"1" VectorField
fargOCA.ScalarField o-->"1" fargOCA.GridDispatch VectorField *--> ScalarField: radial\n phi\n theta
fargOCA.Disk o-->"1" fargOCA.GridDispatch
fargOCA.Disk o-->"1" fargOCA.DiskPhysic
fargOCA.Disk o-->"1" fargOCA.PlanetarySystem
fargOCA.Disk *--> fargOCA.PolarGrid: pressure\n soundSpeed\n density\n viscosity
fargOCA.Disk "1"*-->"1" fargOCA.VectorField
fargOCA.VectorField *--> fargOCA.ScalarField: radial\n phi\n theta
``` ```
## The ScalarField object. ## The ScalarField object.
... ...
......