|
Code_TYMPAN
4.4.0
Industrial site acoustic simulation
|
Class which represents the Solver for 9613 family solvers. More...
#include <TYSolver.h>


Public Member Functions | |
| TYSolver () | |
| Constructor. More... | |
| virtual | ~TYSolver () |
| Destructor. More... | |
| void | init () |
| Initialize solver This method must be called after instantiation of a solver. More... | |
| virtual bool | solve (const tympan::AcousticProblemModel &aproblem, tympan::AcousticResultModel &aresult, tympan::LPSolverConfiguration configuration) |
| Launch the resolution and get the results. More... | |
| const std::vector< TYStructSurfIntersect > & | getTabPolygon () const |
| Get the array of polygons. More... | |
| TYFaceSelector * | getFaceSelector () |
| Get the face selector. More... | |
| TYAcousticPathFinder * | getAcousticPathFinder () |
| Get the acoustic path finder. More... | |
| const Scene * | getScene () const |
| Provide acces to the AcousticRaytracer' Scene. More... | |
| void | selectFaces (std::deque< TYSIntersection > &tabIntersect, const OSegment3D &rayon, const string &sourceVolumeId) |
| Delegate to _faceSelector the build of the array of intersections. More... | |
Public Member Functions inherited from SolverInterface | |
| SolverInterface () | |
| virtual | ~SolverInterface () |
| virtual void | purge () |
Protected Member Functions | |
| std::unique_ptr< TYFaceSelector > | make_face_selector () |
| TYFaceSelector builder. More... | |
| std::unique_ptr< TYAcousticPathFinder > | make_path_finder () |
| TYAcousticPathFinder builder. More... | |
Protected Attributes | |
| std::unique_ptr< TYFaceSelector > | _faceSelector |
| Pointer to the TYFaceSelector. More... | |
| std::unique_ptr< TYAcousticPathFinder > | _acousticPathFinder |
| Pointer to the TYAcousticPathFinder. More... | |
| OThreadPool * | _pool |
Private Member Functions | |
| bool | buildCalcStruct (const tympan::AcousticProblemModel &aproblem) |
| bool | appendTriangleToScene () |
| Convertion des triangles Tympan en primitives utilisables par ray tracer. More... | |
| virtual void | clearTabTrajets ()=0 |
| Clear the specific array of TYTrajet depending on the solver. More... | |
| virtual void | addNewTaskForOneTrajetSrcRcp (const tympan::AcousticProblemModel &aproblem, unsigned int src_index, unsigned int rcp_index, int nbTrajetsForThisSource, int nNbTrajets)=0 |
| Instanciate a new task to compute a Trajet. More... | |
| virtual void | buildAcousticModel ()=0 |
| Build the acoustic model. More... | |
| virtual void | initAcousticModel ()=0 |
| Initialize the acoustic model. More... | |
| virtual void | displayRaysInGUI (tab_acoustic_path &tabRays)=0 |
| Keep rays in tab in order to display them in GUI. More... | |
| virtual void | buildResultsMatrix (int nSourceTrajetsNumber, tympan::SpectrumMatrix &matrix)=0 |
| Build the matrix of the results for a given source and all the receptors These results are the resulting spectrum of acoustic pressure in Pa at each receptor due to this source. More... | |
| virtual void | deleteTrajets ()=0 |
| Delete all the Trajets. More... | |
Private Attributes | |
| std::vector< TYStructSurfIntersect > | _tabPolygon |
| Vector of TYStructSurfIntersect. More... | |
| std::unique_ptr< Scene > | _scene |
| Pointer to the Scene. More... | |
Class which represents the Solver for 9613 family solvers.
Definition at line 35 of file TYSolver.h.
| TYSolver::TYSolver | ( | ) |
|
virtual |
Destructor.
Definition at line 43 of file TYSolver.cpp.
|
privatepure virtual |
Instanciate a new task to compute a Trajet.
| aproblem | The acoustic problem |
| src_index | Index of the source in the acoustic problem |
| rcp_index | Index of the receptor in the acoustic problem |
| nbTrajetsForThisSource | Number of routes already created for the considered source |
| nNbTrajets | Total number of routes already created |
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
private |
Convertion des triangles Tympan en primitives utilisables par ray tracer.
Definition at line 195 of file TYSolver.cpp.


|
privatepure virtual |
Build the acoustic model.
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
private |
Definition at line 164 of file TYSolver.cpp.


|
privatepure virtual |
Build the matrix of the results for a given source and all the receptors These results are the resulting spectrum of acoustic pressure in Pa at each receptor due to this source.
| nSourceTrajetsNumber | The number of routes for a given source to all the receptors |
| matrix | The global contribution matrix |
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
privatepure virtual |
Clear the specific array of TYTrajet depending on the solver.
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
privatepure virtual |
Delete all the Trajets.
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
privatepure virtual |
Keep rays in tab in order to display them in GUI.
| tabRays | The tab of rays |
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
inline |
Get the acoustic path finder.
Definition at line 66 of file TYSolver.h.

|
inline |
Get the face selector.
Definition at line 62 of file TYSolver.h.

|
inline |
Provide acces to the AcousticRaytracer' Scene.
The Scene is set up by the main thread, but getScene() can be used safely by other threads, as soon as subsequent calls to AcousticRaytracer' features do not depend on AcousticRaytracerConfiguration. If the calls depend on AcousticRaytracerConfiguration, their results are undefined.
Definition at line 78 of file TYSolver.h.

|
inline |
Get the array of polygons.
Definition at line 57 of file TYSolver.h.

| void TYSolver::init | ( | ) |
Initialize solver This method must be called after instantiation of a solver.
Definition at line 52 of file TYSolver.cpp.


|
privatepure virtual |
Initialize the acoustic model.
Implemented in TYSolverDefaultSolver, and TYSolver9613Solver.

|
protected |
TYFaceSelector builder.
Definition at line 154 of file TYSolver.cpp.

|
protected |
TYAcousticPathFinder builder.
Definition at line 159 of file TYSolver.cpp.

| void TYSolver::selectFaces | ( | std::deque< TYSIntersection > & | tabIntersect, |
| const OSegment3D & | rayon, | ||
| const string & | sourceVolumeId | ||
| ) |
Delegate to _faceSelector the build of the array of intersections.
| tabIntersect | Array of intersections |
| rayon | Ray path |
| sourceVolumeId | volume_id of source when first ray point is a source |
Definition at line 148 of file TYSolver.cpp.


|
virtual |
Launch the resolution and get the results.
| aproblem | Acoustic problem |
| aresult | Results |
| configuration | Solver configuration |
Implements SolverInterface.
Definition at line 70 of file TYSolver.cpp.

|
protected |
Pointer to the TYAcousticPathFinder.
Definition at line 97 of file TYSolver.h.
|
protected |
Pointer to the TYFaceSelector.
Definition at line 96 of file TYSolver.h.
|
protected |
Definition at line 158 of file TYSolver.h.
|
private |
Pointer to the Scene.
Definition at line 161 of file TYSolver.h.
|
private |
Vector of TYStructSurfIntersect.
Definition at line 156 of file TYSolver.h.