b2api
B2000++ API Reference Manual, VERSION 4.6
 
Loading...
Searching...
No Matches
b2element_klt_compute_constraint.H
1//------------------------------------------------------------------------
2// b2element_klt_compute_constraint.H --
3//
4// Compute constraint and derivatives between neighbouring elements,
5// for G1 compatibility.
6//
7// Copyright (c) 2016
8// SMR Engineering & Development SA
9// 2502 Bienne, Switzerland
10//
11// All Rights Reserved. Proprietary source code. The contents of
12// this file may not be disclosed to third parties, copied or
13// duplicated in any form, in whole or in part, without the prior
14// written permission of SMR.
15//------------------------------------------------------------------------
16
17#ifndef _B2ELEMENT_KLT_COMPUTE_CONSTRAINT_H_
18#define _B2ELEMENT_KLT_COMPUTE_CONSTRAINT_H_
19
20#include <cassert>
21#include <cmath>
22
23#include "elements/klt_shells/b2element_klt_util.H"
24
25namespace b2000 { namespace klt {
26
27struct ComputeConstraint {
28 const size_t ndof = 12;
29 DofScalar b_0;
30 DofScalar b_1;
31 DofScalar b_2;
32 DofScalar aa;
33 DofScalar bb;
34 DofScalar ab;
35 DofScalar q; // Contains the constraint + derivatives
36
37 ComputeConstraint(const bool first, const bool second)
38 : b_0(ndof, first, second),
39 b_1(ndof, first, second),
40 b_2(ndof, first, second),
41 aa(ndof, first, second),
42 bb(ndof, first, second),
43 ab(ndof, first, second),
44 q(ndof, first, second) {}
45
46 void compute(const double X[4][3], const double u[4][3], const bool first, const bool second);
47};
48
49}} // namespace b2000::klt
50
51#endif /* _B2ELEMENT_KLT_COMPUTE_CONSTRAINT_H_ */
Contains the base classes for implementing Finite Elements.
Definition b2boundary_condition.H:32