from data_class import *
from function_ex2 import add_value

def fonction_1(solicitations: Solicitations, profile : Profile, buckling : Buckling, lateral_buckling: LateralBuckling) -> Resultat:
    #...
    # some stuff
    G = add_value(solicitations.My_Ed1, lateral_buckling.C1, profile.L)
    #...
    #G = 100.0
    N_Rd = 100.0
    My_Rd = 100.0
    Mz_Rd = 100.0
    Ncr_y = 100.0
    Ncr_z = 100.0
    lambda_Ky = 1.0
    lambda_Kz = 1.0
    chi_y = 1.0
    chi_z = 1.0
    Ncr_LT = 100.0
    Ncr_T = 100.0
    lambda_K_LT = 1.0
    chi_LT = 1.0
    Mcr = 100.0
    Moment_critique = 100.0
    Cmy = 1.0
    Cmz = 1.0
    CmLT = 1.0
    kyy = 1.0
    kyz = 1.0
    kzy = 1.0
    kzz = 1.0
    tau_Y = 1.0
    tau_Z = 1.0


    #Resultat.tau_Y,Resultat.tau_Z,Resultat.G,Resultat.N_Rd,Resultat.My_Rd,Resultat.Mz_Rd,Resultat.Ncr_y,Resultat.Ncr_z,Resultat.lambda_Ky,Resultat.lambda_Kz,Resultat.chi_y,Resultat.chi_z,Resultat.Ncr_LT,Resultat.Ncr_T,Resultat.lambda_K_LT,Resultat.chi_LT,Resultat.Mcr,Resultat.Moment_critique,Resultat.Cmy,Resultat.Cmz,Resultat.CmLT,Resultat.kyy,Resultat.kyz,Resultat.kzy,Resultat.kzz = tau_Y, tau_Z, G, N_Rd, My_Rd, Mz_Rd, Ncr_y, Ncr_z, lambda_Ky, lambda_Kz, chi_y, chi_z, Ncr_LT, Ncr_T, lambda_K_LT, chi_LT, Mcr, Moment_critique, Cmy, Cmz, CmLT, kyy, kyz, kzy, kzz
    #return Resultat
    
    result = Resultat(G, N_Rd, My_Rd, Mz_Rd, Ncr_y, Ncr_z, lambda_Ky, lambda_Kz, chi_y, chi_z, Ncr_LT, Ncr_T, lambda_K_LT, chi_LT, Mcr, Moment_critique, Cmy, Cmz, CmLT, kyy, kyz, kzy, kzz, tau_Y, tau_Z)
    return result