From f69efa8dd59516f90ea66932b6d36a6679f4965f Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Fri, 23 Aug 2024 17:11:57 +0200 Subject: [PATCH 1/6] First start for the documentation of the line interface geometry --- .../2Plus2NodedLineGeometry.svg | 147 ++++++++++++++ .../3Plus3NodedLineGeometry.svg | 191 ++++++++++++++++++ .../custom_geometries/README.md | 16 ++ 3 files changed, 354 insertions(+) create mode 100644 applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg create mode 100644 applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg create mode 100644 applications/GeoMechanicsApplication/custom_geometries/README.md diff --git a/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg new file mode 100644 index 000000000000..8c21c8e73822 --- /dev/null +++ b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg @@ -0,0 +1,147 @@ + + + + + + + + + + + 1 + 2 + + + + + 3 + 4 + + + + + + + + + + diff --git a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg new file mode 100644 index 000000000000..94b51f908fe9 --- /dev/null +++ b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg @@ -0,0 +1,191 @@ + + + + + + + + + + + + 1 + 3 + 2 + + + + + + 4 + 6 + 5 + + + + + + + + + + + diff --git a/applications/GeoMechanicsApplication/custom_geometries/README.md b/applications/GeoMechanicsApplication/custom_geometries/README.md new file mode 100644 index 000000000000..9e54c6ab078f --- /dev/null +++ b/applications/GeoMechanicsApplication/custom_geometries/README.md @@ -0,0 +1,16 @@ +# Custom Geometries +Geometries are responsible for calculating several geometric properties, such as the normal vector, shape function values at a given position and the (inverse/determinant of the) Jacobian. This folder contains custom geometries that are used in the GeoMechanicsApplication. + +## Line Interface Geometry +The Line Interface Geometry is a custom geometry that can be used to define a line interface between two different domains. + +The geometry is defined by two lines, one on each side of the interface, where they can connect to the larger body of the domains separated by the interface. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. Meaning that if a certain property is queried at a certain position, the call is forwarded to the underlying midline geometry. + +The following line interface geometries are supported at this moment: +The 2+2 line interface geometry has the following node numbering for its four nodes: +![2Plus2NodedGeometry](2Plus2NodedLineGeometry.svg) + +The 3+3 line interface geometry has the following node numbering for its six nodes: +![3Plus3NodedGeometry](3Plus3NodedLineGeometry.svg) + +One thing to note, is that this line interface geometry does not implement functions from the Geometry base class which are related to the integration scheme. That is because most of the time, interface geometries are used with a Lobatto integration scheme, which is not supported by the Geometry base class. \ No newline at end of file From 986b4633418e9d90e82f005f7b12982705a2c396 Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Fri, 23 Aug 2024 17:12:41 +0200 Subject: [PATCH 2/6] Added some extra space --- .../GeoMechanicsApplication/custom_geometries/README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/applications/GeoMechanicsApplication/custom_geometries/README.md b/applications/GeoMechanicsApplication/custom_geometries/README.md index 9e54c6ab078f..bbef2fb8c1e5 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/README.md +++ b/applications/GeoMechanicsApplication/custom_geometries/README.md @@ -8,9 +8,11 @@ The geometry is defined by two lines, one on each side of the interface, where t The following line interface geometries are supported at this moment: The 2+2 line interface geometry has the following node numbering for its four nodes: + ![2Plus2NodedGeometry](2Plus2NodedLineGeometry.svg) The 3+3 line interface geometry has the following node numbering for its six nodes: + ![3Plus3NodedGeometry](3Plus3NodedLineGeometry.svg) One thing to note, is that this line interface geometry does not implement functions from the Geometry base class which are related to the integration scheme. That is because most of the time, interface geometries are used with a Lobatto integration scheme, which is not supported by the Geometry base class. \ No newline at end of file From 9be3bd6213155f00f22625b7e54618ed3726a48f Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Mon, 26 Aug 2024 11:28:50 +0200 Subject: [PATCH 3/6] Made a couple clarifications in the documentation --- .../GeoMechanicsApplication/custom_geometries/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/applications/GeoMechanicsApplication/custom_geometries/README.md b/applications/GeoMechanicsApplication/custom_geometries/README.md index bbef2fb8c1e5..e6729a2e771b 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/README.md +++ b/applications/GeoMechanicsApplication/custom_geometries/README.md @@ -6,12 +6,12 @@ The Line Interface Geometry is a custom geometry that can be used to define a li The geometry is defined by two lines, one on each side of the interface, where they can connect to the larger body of the domains separated by the interface. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. Meaning that if a certain property is queried at a certain position, the call is forwarded to the underlying midline geometry. -The following line interface geometries are supported at this moment: -The 2+2 line interface geometry has the following node numbering for its four nodes: +At this point, the 2+2 and 3+3 line interface geometries are implemented. +When creating The 2+2 line interface geometry (by inputting 4 nodes), the following node numbering is used: ![2Plus2NodedGeometry](2Plus2NodedLineGeometry.svg) -The 3+3 line interface geometry has the following node numbering for its six nodes: +Similarly, the 3+3 line interface geometry has the following node numbering for its six nodes: ![3Plus3NodedGeometry](3Plus3NodedLineGeometry.svg) From 9e636bb2d691e7712594b17fa5c53de89fd6435d Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Mon, 26 Aug 2024 14:05:36 +0200 Subject: [PATCH 4/6] Processing review comments --- .../2Plus2NodedLineGeometry.svg | 242 ++++++++++++------ .../3Plus3NodedLineGeometry.svg | 60 ++++- .../custom_geometries/README.md | 4 +- 3 files changed, 223 insertions(+), 83 deletions(-) diff --git a/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg index 8c21c8e73822..0cdb265baeee 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg +++ b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg @@ -2,18 +2,18 @@ - - - - - - - 1 - 12 - - - - - 3 - 4 - - - - 234 - - - - - - + id="path8" />0.0yx diff --git a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg index 94b51f908fe9..edee4921b816 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg +++ b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg @@ -23,9 +23,9 @@ inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1" inkscape:document-units="mm" - inkscape:zoom="1.4627806" - inkscape:cx="6.8362952" - inkscape:cy="-100.83535" + inkscape:zoom="2.9255612" + inkscape:cx="69.730211" + inkscape:cy="-19.312534" inkscape:window-width="1920" inkscape:window-height="1017" inkscape:window-x="-8" @@ -33,7 +33,27 @@ inkscape:window-maximized="1" inkscape:current-layer="mid_line" /> + id="defs1"> + + + + + + + + + 0.0 + + + diff --git a/applications/GeoMechanicsApplication/custom_geometries/README.md b/applications/GeoMechanicsApplication/custom_geometries/README.md index e6729a2e771b..2dca00798afe 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/README.md +++ b/applications/GeoMechanicsApplication/custom_geometries/README.md @@ -4,9 +4,9 @@ Geometries are responsible for calculating several geometric properties, such as ## Line Interface Geometry The Line Interface Geometry is a custom geometry that can be used to define a line interface between two different domains. -The geometry is defined by two lines, one on each side of the interface, where they can connect to the larger body of the domains separated by the interface. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. Meaning that if a certain property is queried at a certain position, the call is forwarded to the underlying midline geometry. +The geometry is defined by two lines, one on each side of the interface. The two sides of the interface connect to other model parts. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. This means, that if a certain property is queried at a certain position on the interface, the call is forwarded to the underlying midline geometry. -At this point, the 2+2 and 3+3 line interface geometries are implemented. +At this point, the 2+2 and 3+3 line interface geometries are implemented, which depend on the [2D2Line](../../../kratos/geometries/line_2d_2.h) and [2D3Line](../../../kratos/geometries/line_2d_3.h) geometries respectively. When creating The 2+2 line interface geometry (by inputting 4 nodes), the following node numbering is used: ![2Plus2NodedGeometry](2Plus2NodedLineGeometry.svg) From 7d4a23b79ac6bbfca400bc15a7349c812b03d6d3 Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Mon, 26 Aug 2024 14:07:53 +0200 Subject: [PATCH 5/6] Committed missed change to 3+3 schematic --- .../3Plus3NodedLineGeometry.svg | 85 +++++++++++++++++-- 1 file changed, 79 insertions(+), 6 deletions(-) diff --git a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg index edee4921b816..111bb3591aea 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg +++ b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg @@ -2,9 +2,9 @@ + + + + + + + transform="translate(-63.533349,-137.11208)"> @@ -238,6 +278,39 @@ id="path10" /> + + + + y + x + From c0b21172561b5bdd9401705128fc2de671cf43a9 Mon Sep 17 00:00:00 2001 From: Richard Faasse Date: Mon, 26 Aug 2024 14:34:07 +0200 Subject: [PATCH 6/6] Processing review comments for schematics --- .../2Plus2NodedLineGeometry.svg | 111 +++------------ .../3Plus3NodedLineGeometry.svg | 130 +++--------------- .../custom_geometries/README.md | 2 +- 3 files changed, 38 insertions(+), 205 deletions(-) diff --git a/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg index 0cdb265baeee..1dde3242706e 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg +++ b/applications/GeoMechanicsApplication/custom_geometries/2Plus2NodedLineGeometry.svg @@ -2,9 +2,9 @@ 0.0yx + id="path8" /> diff --git a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg index 111bb3591aea..31692f767e49 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg +++ b/applications/GeoMechanicsApplication/custom_geometries/3Plus3NodedLineGeometry.svg @@ -2,9 +2,9 @@ - - - - - - + transform="translate(-72.440441,-137.11208)"> @@ -246,71 +206,19 @@ style="fill:#6e6e6e;stroke:#000000;stroke-width:0.300003" d="M 74.743077,141.98397 H 129.08819" id="path2" /> - - - - - 0.0 - - - - - - - y - x - + + + diff --git a/applications/GeoMechanicsApplication/custom_geometries/README.md b/applications/GeoMechanicsApplication/custom_geometries/README.md index 2dca00798afe..cbd2c54ad84e 100644 --- a/applications/GeoMechanicsApplication/custom_geometries/README.md +++ b/applications/GeoMechanicsApplication/custom_geometries/README.md @@ -4,7 +4,7 @@ Geometries are responsible for calculating several geometric properties, such as ## Line Interface Geometry The Line Interface Geometry is a custom geometry that can be used to define a line interface between two different domains. -The geometry is defined by two lines, one on each side of the interface. The two sides of the interface connect to other model parts. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. This means, that if a certain property is queried at a certain position on the interface, the call is forwarded to the underlying midline geometry. +The geometry is defined by two lines, one on each side of the interface. The two sides of the interface connect to other model parts. Most calculations are performed on the 'midline', which is defined by the midpoints of the two lines. They are depicted as the grey lines in the figures below. This means, that if a certain property is queried at a certain position on the interface, the call is forwarded to the underlying midline geometry. At this point, the 2+2 and 3+3 line interface geometries are implemented, which depend on the [2D2Line](../../../kratos/geometries/line_2d_2.h) and [2D3Line](../../../kratos/geometries/line_2d_3.h) geometries respectively. When creating The 2+2 line interface geometry (by inputting 4 nodes), the following node numbering is used: