muMECH  1.0
meso2d.h
Go to the documentation of this file.
1 //********************************************************************************************************
2 // code: # # ###### ##### ##### ##### ######
3 // ## ## # # # # # # # # #
4 // # # # # # # # # # # #
5 // # # # ##### ##### # # ##### # #
6 // # # # # # # # # #
7 // # # # # # # # # # #
8 // # # ###### ##### ##### ####### ######
9 //
10 // name: meso2d.h
11 // Copyright: Daniel Rypl
12 // Czech Technical University in Prague,
13 // Faculty of Civil Engineering, Department of Structural Mechanics,
14 // Thakurova 7, 166 29 Prague, Czech Republic,
15 // email: drypl@fsv.cvut.cz
16 //
17 // language: C, C++
18 // license: This program is free software; you can redistribute it and/or modify
19 // it under the terms of the GNU Lesser General Public License as published by
20 // the Free Software Foundation; either version 2 of the License, or
21 // (at your option) any later version.
22 //
23 // This program is distributed in the hope that it will be useful,
24 // but WITHOUT ANY WARRANTY; without even the implied warranty of
25 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
26 // GNU Lesser General Public License for more details.
27 //
28 // You should have received a copy of the GNU Lesser General Public License
29 // along with this program; if not, write to the Free Software
30 // Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
31 //********************************************************************************************************
37 // Library meso2d was written by Daniel Rypl. The original code was not changed.
38 // It was commented except some function necessary for detection of ellipses intersection.
39 // Some row of code was copied and uncommented to .h
40 // Lukas Zrubek is author of these small changes.
41 
42 
43 #ifndef MESO2D_H
44 #define MESO2D_H
45 
46 
47 namespace meso2d {
48 
50 struct point_rec
51 {
52  double x;
53  double y;
54 };
55 
58 {
59  int id;
60  // crack_rec *crack;
62  double max, min, angle; // bigger and smaller semiaxes, angle
63  double internal_msz, boundary_msz;
64  int property, interface, bc;
65  double cos_angle, sin_angle;
66  point_rec pnt0, pnt1, pnt2;
67  int patch;
68  char bc_ellipse_spec[128];
69  char bc_matrix_spec[128];
70 };
71 
73 bool check_ellipse_ellipse_overlap (ellipse_rec *ellipse1, ellipse_rec *ellipse2);
76 
77 
78 } // end of namespace meso2d
79 
80 #endif // end of MESO2D_H
81 
82 /*end of file*/
point_rec center
Definition: meso2d.h:61
Ellipsoid record.
Definition: meso2d.h:57
void transfom_ellipse_rec(meso2d::ellipse_rec &L)
ADDED for muMech needs.
Definition: meso2d.cpp:317
bool check_ellipse_ellipse_overlap(ellipse_rec *ellipse1, ellipse_rec *ellipse2)
Definition: meso2d.cpp:2392
double internal_msz
Definition: meso2d.h:63
point_rec pnt2
Definition: meso2d.h:66
Point record.
Definition: meso2d.h:50
double sin_angle
Definition: meso2d.h:65
void check_ellipse_rec_consistency(meso2d::ellipse_rec &L)
ADDED for muMech needs.
Definition: meso2d.cpp:282