geofound/stiffness.py
def rotational_stiffness(sl, fd, axis="length", a0=0.0, **kwargs):
    """
    Rotation stiffness of foundation.
    :param fd: Foundation object
    :param sl: Soil Object.
    :param axis: The axis which it should be computed around
    :return:
    """
    if not kwargs.get("disable_requires", False):
        gf.models.check_required(sl, ["g_mod", "poissons_ratio"])
        gf.models.check_required(fd, ["length", "width", "depth"])

    if fd.depth > 0.0:
        pass
    l = fd.length * 0.5
    b = fd.width * 0.5
    v = sl.poissons_ratio
    if axis == "length":
        i_bx = fd.i_ll
        k_rx = 1 - 0.2 * a0
        k_f_0 = (sl.g_mod / (1 - v) * i_bx ** 0.75 * (l / b) ** 0.25 * (2.4 + 0.5 * (b / l))) * k_rx
    else:
        i_by = fd.i_ww
        k_ry = 1 - 0.3 * a0
        k_f_0 = (sl.g_mod / (1 - v) * i_by ** 0.75 * (3 * (l / b) ** 0.15)) * k_ry
    return k_f_0
def rotational_stiffness(sl, fd, axis="length", a0=0.0, **kwargs):
    """
    Rotation stiffness of foundation.
    :param fd: Foundation object
    :param sl: Soil Object.
    :param axis: The axis which it should be computed around
    :return:
    """
    if not kwargs.get("disable_requires", False):
        gf.models.check_required(sl, ["g_mod", "poissons_ratio"])
        gf.models.check_required(fd, ["length", "width", "depth"])

    if fd.depth > 0.0:
        pass
    l = fd.length * 0.5
    b = fd.width * 0.5
    v = sl.poissons_ratio
    if axis == "length":
        i_bx = fd.i_ll
        k_rx = 1 - 0.2 * a0
        k_f_0 = (sl.g_mod / (1 - v) * i_bx ** 0.75 * (l / b) ** 0.25 * (2.4 + 0.5 * (b / l))) * k_rx
    else:
        i_by = fd.i_ww
        k_ry = 1 - 0.3 * a0
        k_f_0 = (sl.g_mod / (1 - v) * i_by ** 0.75 * (3 * (l / b) ** 0.15)) * k_ry
    return k_f_0
def rotational_stiffness ( sl , fd , axis = "length" , a0 = 0.0 , * * kwargs ) : if not kwargs . get ( "disable_requires" , False ) : gf . models . check_required ( sl , [ "g_mod" , "poissons_ratio" ] ) gf . models . check_required ( fd , [ "length" , "width" , "depth" ] ) if fd . depth > 0.0 : pass l = fd . length * 0.5 b = fd . width * 0.5 v = sl . poissons_ratio if axis == "length" : i_bx = fd . i_ll k_rx = 1 - 0.2 * a0 k_f_0 = ( sl . g_mod / ( 1 - v ) * i_bx ** 0.75 * ( l / b ) ** 0.25 * ( 2.4 + 0.5 * ( b / l ) ) ) * k_rx else : i_by = fd . i_ww k_ry = 1 - 0.3 * a0 k_f_0 = ( sl . g_mod / ( 1 - v ) * i_by ** 0.75 * ( 3 * ( l / b ) ** 0.15 ) ) * k_ry return k_f_0
Rotation stiffness of foundation.
    :param fd: Foundation object
    :param sl: Soil Object.
    :param axis: The axis which it should be computed around
    :return:
Rotation stiffness of foundation . : param fd : Foundation object : param sl : Soil Object . : param axis : The axis which it should be computed around : return :