Kratos icon indicating copy to clipboard operation
Kratos copied to clipboard

[GeoMechanicsApplication] Phreatic error with discontinuous geometry

Open EleniSmyrniou opened this issue 2 years ago • 1 comments

When multiple phreatic lines are assigned to a surface it seems that the first point in the left is always extrapolated to the right. As it can be seen in the figures bellow.

image

image

EleniSmyrniou avatar Sep 20 '22 09:09 EleniSmyrniou

The problem can be found in apply_scalar_constrain_table_process.py in function CalculatePressure. In this case when the node is outside of the phreatic line the pressure gets extrapolated. This makes assigning different phreatic lines in the same surface order dependent

` double CalculatePressure(const Node<3> &rNode, const array_1d<double, 2> &y) const { double height = 0.0; if (rNode.Coordinates()[mHorizontalDirection] >= mMinHorizontalCoordinate && rNode.Coordinates()[mHorizontalDirection] <= mMaxHorizontalCoordinate) { height = mSlope * (rNode.Coordinates()[mHorizontalDirection] - mFirstReferenceCoordinate[mHorizontalDirection]) + y[0];

    } else if (rNode.Coordinates()[mHorizontalDirection] < mMinHorizontalCoordinate) {
        height = mSlope * (mMinHorizontalCoordinate - mFirstReferenceCoordinate[mHorizontalDirection]) + y[0];

    } else if (rNode.Coordinates()[mHorizontalDirection] > mMaxHorizontalCoordinate) {
        height = mSlope * (mMaxHorizontalCoordinate - mFirstReferenceCoordinate[mHorizontalDirection]) + y[0];
    }

    const double distance = height - rNode.Coordinates()[mGravityDirection];
    const double pressure = - PORE_PRESSURE_SIGN_FACTOR * mSpecificWeight * distance;
    return pressure;
}`

EleniSmyrniou avatar Sep 21 '22 10:09 EleniSmyrniou

Fixed for constant pressure

image

mcgicjn2 avatar Sep 30 '22 10:09 mcgicjn2

Also added phreatic multi line table process .... i.e. varies in time

mcgicjn2 avatar May 25 '23 09:05 mcgicjn2

The PR was closed so that @WPK4FEM and @avdg81 can complete there changes to the underlying functionalities before reimplementation.

mcgicjn2 avatar Jul 07 '23 06:07 mcgicjn2