GCC Code Coverage Report


Directory: ./
File: Model/linearElasticityModel.hpp
Date: 2024-04-14 07:32:34
Exec Total Coverage
Lines: 5 5 100.0%
Branches: 2 4 50.0%

Line Branch Exec Source
1 // ______ ______ _ _ _____ ______
2 // | ____| ____| | (_)/ ____| | ____|
3 // | |__ | |__ | | _| (___ ___| |__
4 // | __| | __| | | | |\___ \ / __| __|
5 // | | | |____| |____| |____) | (__| |____
6 // |_| |______|______|_|_____/ \___|______|
7 // Finite Elements for Life Sciences and Engineering
8 //
9 // License: LGL2.1 License
10 // FELiScE default license: LICENSE in root folder
11 //
12 // Main authors:
13 //
14
15 #ifndef __LINEARELASTICITYMODEL_HPP__
16 #define __LINEARELASTICITYMODEL_HPP__
17
18 // System includes
19
20 // External includes
21
22 // Project includes
23 #include "Model/model.hpp"
24 #include "Solver/linearProblemLinearElasticity.hpp"
25
26 namespace felisce {
27 class LinearElasticityModel:
28 public Model {
29 public:
30 //------- Constructor/Destructor
31 //-------------------------------
32
1/2
✓ Branch 2 taken 4 times.
✗ Branch 3 not taken.
4 LinearElasticityModel() {
33
1/2
✓ Branch 1 taken 4 times.
✗ Branch 2 not taken.
4 m_name = "LinearElasticity";
34 4 m_idLE=0;
35 4 }
36 8 ~LinearElasticityModel() override = default;
37
38 // Functions called in model:initializeLinearProblem
39 void initializeDerivedModel() override;
40 void preAssemblingMatrixRHS(std::size_t iProblem=0) override;
41
42 //! Manage time iteration.
43 void prepareForward(FlagMatrixRHS flag = FlagMatrixRHS::matrix_and_rhs);
44 void forward() override;
45 void finalizeForward();
46
47 void solveLinearElasticity(FlagMatrixRHS flag = FlagMatrixRHS::matrix_and_rhs);
48
49 #ifdef FELISCE_WITH_CVGRAPH
50 void cvgraphNewTimeStep() override;
51 #endif
52 protected:
53 felInt m_idLE;
54 LinearProblemLinearElasticity* m_lpbLE;
55 private:
56 ChronoInstance m_chronoSolve;
57 void writeNormal();
58 };
59 }
60
61 #endif
62