b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2failure_criterion.H
Go to the documentation of this file.
1//------------------------------------------------------------------------
2// b2failure_criterion.H --
3//
4// Base class for material failure criteria in elasticity analysis.
5//
6// written by Thomas Ludwig
7// Neda Ebrahimi Pour <neda.ebrahimipour@dlr.de>
8//
9// (c) 2015-2015 SMR Engineering & Development SA
10// 2502 Bienne, Switzerland
11//
12// (c) 2023 Deutsches Zentrum für Luft- und Raumfahrt (DLR) e.V.
13// Linder Höhe, 51147 Köln
14//
15// All Rights Reserved. Proprietary source code. The contents of
16// this file may not be disclosed to third parties, copied or
17// duplicated in any form, in whole or in part, without the prior
18// written permission of SMR.
19//------------------------------------------------------------------------
20
21#ifndef B2_FAILURE_CRITERION_H_
22#define B2_FAILURE_CRITERION_H_
23
24#include "model/b2element.H"
25#include "model/b2solution.H"
26#include "utils/b2rtable.H"
27
31
32namespace b2000 { namespace b2dbv3 {
33
34namespace failure_criterion {
35extern Module module;
36}
37
43public:
45 enum { STRAIN, STRESS };
46
47 virtual void init(const RTable& rtable) = 0;
48
50 virtual int get_type() const = 0;
51
60 virtual double process_stress(
61 const double stress_mat[6], b2000::GradientContainer* gradient_container) const {
63 return 0;
64 }
65
66 virtual b2000::csda<double> process_stress(
67 const b2000::csda<double> stress_mat[6],
68 b2000::GradientContainer* gradient_container) const {
70 return 0;
71 }
72
87 virtual double process_strain(
88 const double strain_mat[6], const bool engineering,
89 b2000::GradientContainer* gradient_container) const {
91 return 0;
92 }
93
94 virtual b2000::csda<double> process_strain(
95 const b2000::csda<double> strain_mat[6], const bool engineering,
96 b2000::GradientContainer* gradient_container) const {
98 return 0;
99 }
100
102 static type_t type;
103
104protected:
109};
110
111}} // namespace b2000::b2dbv3
112
113#endif // B2_FAILURE_CRITERION_H_
#define THROW
Definition b2exception.H:198
Definition b2solution.H:54
Definition b2object.H:340
Definition b2object.H:456
Definition b2rtable.H:427
Definition b2failure_criterion.H:42
static const b2000::GradientContainer::FieldDescription fi_descr
Definition b2failure_criterion.H:108
virtual double process_strain(const double strain_mat[6], const bool engineering, b2000::GradientContainer *gradient_container) const
Definition b2failure_criterion.H:87
virtual double process_stress(const double stress_mat[6], b2000::GradientContainer *gradient_container) const
Definition b2failure_criterion.H:60
virtual int get_type() const =0
Returns STRAIN or STRESS.
Contains the base classes for implementing Finite Elements.
Definition b2boundary_condition.H:32
GenericException< UnimplementedError_name > UnimplementedError
Definition b2exception.H:314