public C_ADD___L(C_NAD objNAD, C_GEO___L objGeo, C_MAT___L objMat, CCrSc objCrSc, ECrScSymmetry1 eSym, ECrScPrType1 eProd) { m_ft_V_z = objGeo.m_ft_a; // ??????? m_ft_V_y = objGeo.m_ft_b; // ??????? m_fN_pl = objCrSc.m_fA * objMat.Ff_y; m_fN_u = objCrSc.m_fA * objMat.Ff_u; m_fM_pl_y = objCrSc.m_fW_pl_y * objMat.Ff_y; m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.Ff_y; if (eProd == ECrScPrType1.eCrSc_rold || eProd == ECrScPrType1.eCrSc_cldfrm) { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IR; m_fBeta_LT = objNAD.m_fBeta_LT_IR; } else { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IS; m_fBeta_LT = objNAD.m_fBeta_LT_IS; } /* bSchubbeulen = FALSE; bDoppeltSymmQuerschnitt = FALSE; bEinfachSymmQuerschnitt = FALSE; */ }
public C___U(C_GEO___U objGeo, C_MAT___U objMat, C_IFO objIFO, C_NAD objNAD, C_STR___U objStr) { // Table 5.2 GetClassTab52_OUT(objStr.m_fSigma_fuA, objStr.m_fSigma_fuB, objGeo.m_fc_f, objGeo.m_ft_f, objMat.m_fEps_f, m_fct_f, m_fLambda_f_1, m_fLambda_f_2, m_fLambda_f_3, m_iClass_fu, objMat.BStainlessS); GetClassTab52_OUT(objStr.m_fSigma_fbA, objStr.m_fSigma_fbB, objGeo.m_fc_f, objGeo.m_ft_f, objMat.m_fEps_f, m_fct_f, m_fLambda_f_1, m_fLambda_f_2, m_fLambda_f_3, m_iClass_fb, objMat.BStainlessS); m_iClass_f = Math.Max(m_iClass_fu, m_iClass_fb); float fF_f = objGeo.m_fb * objGeo.m_ft_f * objMat.m_ff_y_f / objNAD.FGamma_M0; float fF_w = objGeo.m_fc_w * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; // Table 5.2 GetClassTab52_INT(objStr.m_fSigma_wA, objStr.m_fSigma_wB, objStr.m_fSigma_N, fF_f, fF_w, fF_f, objIFO.FN_Ed, objGeo.m_fc_w, objGeo.m_ft_w, objMat.m_ff_y_w / objNAD.FGamma_M0, objMat.m_fEps_w, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_w, m_fAlpha_w, m_fSigma_fyd_1, m_fSigma_fyd_2, m_fPsi_w, m_fLambda_w_1, m_fLambda_w_2, m_fLambda_w_3, m_iClass_w, objMat.BStainlessS); m_iClass = Math.Max(m_iClass_f, m_iClass_w); }
public C_ADD___U(C_NAD objNAD, C_GEO___U objGeo, C_MAT___U objMat, CCrSc objCrSc, ECrScPrType1 eProd) { m_ft_V_z = objGeo.m_ft_w; // (6.20) m_ft_V_y = objGeo.m_ft_f; m_fA_w = objCrSc.m_fA - 2f * objGeo.m_fb * objGeo.m_ft_f; if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) m_fA_w += (objGeo.m_ft_w + objGeo.m_fr) * objGeo.m_ft_f; m_fA_f = objCrSc.m_fA - m_fA_w; m_fN_pl = m_fA_f * objMat.m_ff_y_f + m_fA_w * objMat.m_ff_y_w; m_fN_u = m_fA_f * objMat.m_ff_u_f + m_fA_w * objMat.m_ff_u_w; if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) m_fA_v_z = Math.Max(m_fA_v_z, objCrSc.m_fA - 2f * objGeo.m_fb * objGeo.m_ft_f + (objGeo.m_ft_w + objGeo.m_fr) * objGeo.m_ft_f); //6.2.6(3)a) // 6.2.8 float rW_pl_y_w; if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) rW_pl_y_w = 2.0f * sqr(0.5f * objGeo.m_fh - 0.5f * objGeo.m_ft_f) * objGeo.m_ft_w / 4.0f + // 6.2.6(3) b) objGeo.m_fr * 0.5f * objGeo.m_ft_f * (0.5f * objGeo.m_fh - 0.75f * objGeo.m_ft_f) + 0.214602f * sqr(objGeo.m_fr) * (0.5f * objGeo.m_fh - objGeo.m_ft_f - 0.77663f * objGeo.m_fr); else rW_pl_y_w = sqr(objGeo.m_fh - 2.0f * objGeo.m_ft_f) * objGeo.m_ft_w / 4.0f; // 6.2.8 float rW_pl_z_f = 2.0f * sqr(objGeo.m_fb) * objGeo.m_ft_f / 4.0f; float rW_pl_y_wh = sqr(objGeo.m_fh_w) * objGeo.m_ft_w / 4.0f; m_fM_pl_y = objCrSc.m_fW_pl_y * objMat.m_ff_y_f + rW_pl_y_wh * (objMat.m_ff_y_w - objMat.m_ff_y_f); m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.Ff_y; if (objCrSc.m_fz_S == 0.0f) objCrSc.m_fz_S = objGeo.m_fh / 2.0f; // 6.3.2.3(1) if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IR; m_fBeta_LT = objNAD.m_fBeta_LT_IR; } else { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IS; m_fBeta_LT = objNAD.m_fBeta_LT_IS; } // bDoppeltSymmQuerschnitt = FALSE; }
public C_ADD__TU(C_NAD objNAD, C_GEO__TU objGeo, C_MAT__TU objMat, CCrSc objCrSc, ECrScPrType1 eProd) { m_ft_V_z = objGeo.m_ft; // (6.20) m_ft_V_y = objGeo.m_ft; m_fN_pl = objCrSc.m_fA * objMat.Ff_y; m_fN_u = objCrSc.m_fA * objMat.Ff_u; // 6.2.6(3) g) m_fA_v_z = 2.0f * objCrSc.m_fA / (float)Math.PI; m_fA_w = m_fA_f = m_fA_v_y = m_fA_v_z; // Plastische Momente m_fM_pl_y = objCrSc.m_fW_pl_y * objMat.Ff_y; m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.Ff_y; /* bGeschlQuerschnitt = TRUE; bSchubbeulen = FALSE; */ m_fA_k = (float)Math.PI * sqr((objGeo.m_fd - objGeo.m_ft) / 2.0f); }
public C___I(C_GEO___I objGeo, C_MAT___I objMat, C_IFO objIFO, C_NAD objNAD, C_STR___I objStr, ECrScSymmetry1 eSym, ECrScPrType1 eProd) { if (eSym == ECrScSymmetry1.eDS) { // Flange GetClassTab52_OUT(objStr.m_fSigma_fA, objStr.m_fSigma_fB, objGeo.m_fc_f, objGeo.m_ft_f, objMat.m_fEps_f, m_fct_f, m_fLambda_f_1, m_fLambda_f_2, m_fLambda_f_3, m_iClass_f, objMat.BStainlessS); float fF_f = objGeo.m_fb * objGeo.m_ft_f * objMat.m_ff_y_f / objNAD.FGamma_M0; float fF_w = objGeo.m_fc_w * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; // Web GetClassTab52_INT(objStr.m_fSigma_wA, objStr.m_fSigma_wB, objStr.m_fSigma_N, fF_f, fF_w, fF_f, objIFO.FN_Ed, objGeo.m_fc_w, objGeo.m_ft_w, objMat.m_ff_y_w / objNAD.FGamma_M0, objMat.m_fEps_w, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, m_fSigma_com_Ed, m_fct_w, m_fAlpha_w, m_fSigma_fyd_1, m_fSigma_fyd_2, m_fPsi_w, m_fLambda_w_1, m_fLambda_w_2, m_fLambda_w_3, m_iClass_w, objMat.BStainlessS); m_iClass = Math.Max(m_iClass_f, m_iClass_w); } else { // Upper Flange GetClassTab52_OUT(objStr.m_fSigma_fuA, objStr.m_fSigma_fuB, objGeo.m_fc_fu, objGeo.m_ft_fu, objMat.m_fEps_fu, m_fct_fu, m_fLambda_fu_1, m_fLambda_fu_2, m_fLambda_fu_3, m_iClass_fu, objMat.BStainlessS); // Bottom Flange GetClassTab52_OUT(objStr.m_fSigma_fbA, objStr.m_fSigma_fbB, objGeo.m_fc_fb, objGeo.m_ft_fb, objMat.m_fEps_fb, m_fct_fb, m_fLambda_fb_1, m_fLambda_fb_2, m_fLambda_fb_3, m_iClass_fb, objMat.BStainlessS); float fF_fu = objGeo.m_fb_fu * objGeo.m_ft_fu * objMat.m_ff_y_fu / objNAD.FGamma_M0 + objGeo.m_fr_su * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; float fF_w = objGeo.m_fc_w * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; float fF_fb = objGeo.m_fb_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb / objNAD.FGamma_M0 + objGeo.m_fr_sb * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; float fF_f_com, fF_f_ten; if (objIFO.FM_y_Ed >= 0.0f) { fF_f_com = fF_fu; fF_f_ten = fF_fb; } else { fF_f_com = fF_fb; fF_f_ten = fF_fu; } // Web GetClassTab52_INT(objStr.m_fSigma_wA, objStr.m_fSigma_wB, objStr.m_fSigma_N, fF_f_com, fF_w, fF_f_ten, objIFO.FN_Ed, objGeo.m_fc_w, objGeo.m_ft_w, objMat.m_ff_y_w / objNAD.FGamma_M0, objMat.m_fEps_w, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, m_fSigma_com_Ed, m_fct_w, m_fAlpha_w, m_fSigma_fyd_1, m_fSigma_fyd_2, m_fPsi_w, m_fLambda_w_1, m_fLambda_w_2, m_fLambda_w_3, m_iClass_w, objMat.BStainlessS); m_iClass = Math.Max(Math.Max(m_iClass_fu, m_iClass_fb), m_iClass_w); } }
public C_ADD___I(C_NAD objNAD, C_GEO___I objGeo, C_MAT___I objMat, CCrSc objCrSc, ECrScSymmetry1 eSym, ECrScPrType1 eProd) { if (eSym == ECrScSymmetry1.eDS) { m_ft_V_z = objGeo.m_ft_w; // (6.20) m_ft_V_y = objGeo.m_ft_f; m_fA_w = objCrSc.m_fA - 2.0f * objGeo.m_fb * objGeo.m_ft_f; if (eProd == ECrScPrType1.eCrSc_rold) m_fA_w += (objGeo.m_ft_w + 2.0f * objGeo.m_fr) * objGeo.m_ft_f; m_fA_f = objCrSc.m_fA - m_fA_w; m_fN_pl = m_fA_f * objMat.m_ff_y_f + m_fA_w * objMat.m_ff_y_w; m_fN_u = m_fA_f * objMat.m_ff_u_f + m_fA_w * objMat.m_ff_u_w; if (eProd == ECrScPrType1.eCrSc_rold) { m_fA_v_z = Math.Max(m_fA_v_z, m_fEta * objGeo.m_fh_w * objGeo.m_ft_w); //6.2.6(3)a) } else { m_fA_v_z = m_fEta * objGeo.m_fh_w * objGeo.m_ft_w; // 6.2.6(3)d) } //6.2.8 float rW_pl_y_w; if (eProd == ECrScPrType1.eCrSc_rold) rW_pl_y_w = 2.0f * sqr(0.5f * objGeo.m_fh - 0.5f * objGeo.m_ft_f) * objGeo.m_ft_w / 4.0f + // acc. to 6.2.6(3) a) 2.0f * objGeo.m_fr * 0.5f * objGeo.m_ft_f * (0.5f * objGeo.m_fh - 0.75f * objGeo.m_ft_f) + 2.0f * 0.214602f * sqr(objGeo.m_fr) * (0.5f * objGeo.m_fh - objGeo.m_ft_f - 0.77663f * objGeo.m_fr); else rW_pl_y_w = sqr(objGeo.m_fh - 2.0f * objGeo.m_ft_f) * objGeo.m_ft_w / 4.0f; // acc. to 6.2.6(3) d) // 6.2.8 float rW_pl_z_f = 2.0f * sqr(objGeo.m_fb) * objGeo.m_ft_f / 4.0f; float rW_pl_y_wh = sqr(objGeo.m_fh_w) * objGeo.m_ft_w / 4.0f; m_fM_pl_y = objCrSc.m_fW_pl_y * objMat.m_ff_y_f + rW_pl_y_wh * (objMat.m_ff_y_w - objMat.m_ff_y_f); m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.m_ff_y_w + rW_pl_z_f * (objMat.m_ff_y_f - objMat.m_ff_y_w); // 6.3.2.3(1) if (eProd == ECrScPrType1.eCrSc_rold) { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IR; m_fBeta_LT = objNAD.m_fBeta_LT_IR; } else { m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IS; m_fBeta_LT = objNAD.m_fBeta_LT_IS; } if (objCrSc.m_fz_S == 0.0f) objCrSc.m_fz_S = objGeo.m_fh / 2.0f; m_bQuerschn_fuer_InterVerf_2_moeglich = true; } else { m_ft_V_z = objGeo.m_ft_w; // (6.20) m_ft_V_y = Math.Min(objGeo.m_ft_fu, objGeo.m_ft_fb); m_fA_fu = objGeo.m_fb_fu * objGeo.m_ft_fu; m_fA_fb = objGeo.m_fb_fb * objGeo.m_ft_fb; m_fA_f = Math.Min(m_fA_fu, m_fA_fb); // Temporary m_fA_w = objGeo.m_fh_w * objGeo.m_ft_w; m_fN_pl = m_fA_fu * objMat.m_ff_y_fu + m_fA_fb * objMat.m_ff_y_fb + m_fA_w * objMat.m_ff_y_w; m_fN_u = m_fA_fu * objMat.m_ff_u_fu + m_fA_fb * objMat.m_ff_u_fb + m_fA_w * objMat.m_ff_u_w; // 6.2.6(3) d) and e) m_fA_v_z = m_fEta * objGeo.m_fh_w * objGeo.m_ft_w; m_fA_v_y = objCrSc.m_fA - objGeo.m_fh_w * objGeo.m_ft_w; float rz_pl_0 = 0.5f * (-objGeo.m_fb_fu * objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * objGeo.m_ft_w * objMat.m_ff_y_w + objGeo.m_fb_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb) / (objGeo.m_ft_w * objMat.m_ff_y_w) + objGeo.m_ft_fu; float rW_pl_y_wh; if (rz_pl_0 >= objGeo.m_ft_fu && rz_pl_0 <= objGeo.m_fh - objGeo.m_ft_fb) { rW_pl_y_wh = sqr(rz_pl_0 - objGeo.m_ft_fu) * objGeo.m_ft_w / 2.0f + sqr(objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb) * objGeo.m_ft_w / 2.0f; m_fM_pl_y = objGeo.m_fb_fu * objGeo.m_ft_fu * (rz_pl_0 - objGeo.m_ft_fu / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb_fb * objGeo.m_ft_fb * (objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb / 2.0f) * objMat.m_ff_y_fb; } else if (rz_pl_0 < objGeo.m_ft_fu) { rz_pl_0 = 0.5f * (objGeo.m_fb_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb + objGeo.m_fb_fu * objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * objGeo.m_ft_w * objMat.m_ff_y_w) / (objGeo.m_fb_fu * objMat.m_ff_y_fu); rW_pl_y_wh = objGeo.m_fh_w * objGeo.m_ft_w * (objGeo.m_fh_w / 2.0f + objGeo.m_ft_fu - rz_pl_0); m_fM_pl_y = objGeo.m_fb_fu * (sqr(rz_pl_0) / 2.0f + sqr(objGeo.m_ft_fu - rz_pl_0) / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb_fb * objGeo.m_ft_fb * (objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb / 2.0f) * objMat.m_ff_y_fb; } else { rz_pl_0 = -0.5f * (objGeo.m_fb_fu * objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * objGeo.m_ft_w * objMat.m_ff_y_w - objGeo.m_fb_fb * objMat.m_ff_y_fb * objGeo.m_ft_fu - objGeo.m_fb_fb * objMat.m_ff_y_fb * objGeo.m_fh_w - objGeo.m_fh * objGeo.m_fb_fb * objMat.m_ff_y_fb) / (objGeo.m_fb_fb * objMat.m_ff_y_fb); rW_pl_y_wh = objGeo.m_fh_w * objGeo.m_ft_w * (rz_pl_0 - objGeo.m_ft_fu - objGeo.m_fh_w / 2.0f); m_fM_pl_y = objGeo.m_fb_fu * objGeo.m_ft_fu * (rz_pl_0 - objGeo.m_ft_fu / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb_fb * objGeo.m_ft_fb * (sqr(objGeo.m_fh - rz_pl_0) / 2.0f + sqr(rz_pl_0 - objGeo.m_fh_w - objGeo.m_ft_fu) / 2.0f) * objMat.m_ff_y_fb; } float rW_pl_y_w = m_fEta * rW_pl_y_wh; // Acc. to 6.2.6(3) d) float rW_pl_z_fo = 2.0f * (objGeo.m_fb_fu / 2.0f * objGeo.m_ft_fu * objGeo.m_fb_fu / 4.0f); float rW_pl_z_fu = 2.0f * (objGeo.m_fb_fb / 2.0f * objGeo.m_ft_fb * objGeo.m_fb_fb / 4.0f); float rW_pl_z_f = rW_pl_z_fo + rW_pl_z_fu; // Acc. to 6.2.6(3) e) m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.m_ff_y_w + rW_pl_z_fo * (objMat.m_ff_y_fu - objMat.m_ff_y_w) + rW_pl_z_fu * (objMat.m_ff_y_fb - objMat.m_ff_y_w); // 6.3.2.3(1) m_fLambda_rel_LT_0 = objNAD.m_fLambda_rel_LT_0_IS; m_fBeta_LT = objNAD.m_fBeta_LT_IS; objGeo.m_fb = Math.Min(objGeo.m_fb_fu, objGeo.m_fb_fb); // Tab. 6.4 resp. 6.5 // Symmetriu musim urcovat skor - uz pri vytvoreni tried Geo a CrSc /* if (Math.Abs(objCrSc.m_fz_S - objGeo.m_fh / 2.0f) > objGeo.m_fh * 1.0e-3f) bDoppeltSymmQuerschnitt = FALSE; */ m_bQuerschn_fuer_InterVerf_2_moeglich = true; } }
public C_ADD__HL(C_NAD objNAD, C_GEO__HL objGeo, C_MAT__HL objMat, CCrSc objCrSc, ECrScPrType1 eProd) { if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) { m_ft_V_z = objGeo.m_ft_w; // (6.20) m_ft_V_y = objGeo.m_ft_f; m_fN_pl = objCrSc.m_fA * objMat.Ff_y; m_fN_u = objCrSc.m_fA * objMat.Ff_u; // 6.2.6(3) f) m_fA_v_z = objCrSc.m_fA * objGeo.m_fh / (objGeo.m_fb + objGeo.m_fh); m_fA_v_y = objCrSc.m_fA * objGeo.m_fb / (objGeo.m_fb + objGeo.m_fh); // 6.2.8 float rW_pl_y_w = 2.0f * sqr(objGeo.m_fh - objGeo.m_ft) * objGeo.m_ft / 4.0f; float rW_pl_z_f = 2.0f * sqr(objGeo.m_fb - objGeo.m_ft) * objGeo.m_ft / 4.0f; m_fM_pl_y = objCrSc.m_fW_pl_y * objMat.Ff_y; m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.Ff_y; //bGeschlQuerschnitt = TRUE; m_fA_k = (objGeo.m_fb - objGeo.m_ft) * (objGeo.m_fh - objGeo.m_ft); // bQuerschn_fuer_InterVerf_2_moeglich = TRUE; } else { m_ft_V_z = objGeo.m_ft_w; // (6.20) m_ft_V_y = Math.Min(objGeo.m_ft_fu, objGeo.m_ft_fb); m_fA_fu = objGeo.m_fb * objGeo.m_ft_fu; m_fA_fb = objGeo.m_fb * objGeo.m_ft_fb; m_fA_w = 2.0f * objGeo.m_fh_w * objGeo.m_ft_w; m_fN_pl = m_fA_fu * objMat.m_ff_y_fu + m_fA_fb * objMat.m_ff_y_fb + m_fA_w * objMat.m_ff_y_w; m_fN_u = m_fA_fu * objMat.m_ff_u_fu + m_fA_fb * objMat.m_ff_u_fb + m_fA_w * objMat.m_ff_u_w; // 6.2.6(3) d) und e) m_fA_v_z = m_fEta * 2.0f * objGeo.m_fh_w * objGeo.m_ft_w; m_fA_v_y = objCrSc.m_fA - 2.0f * objGeo.m_fh_w * objGeo.m_ft_w; float rz_pl_0 = 0.5f * (-objGeo.m_fb * objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * 2.0f * objGeo.m_ft_w * objMat.m_ff_y_w + objGeo.m_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb) / (2.0f * objGeo.m_ft_w * objMat.m_ff_y_w) + objGeo.m_ft_fu; float rW_pl_y_wh; if (rz_pl_0 >=objGeo.m_ft_fu && rz_pl_0 <= objGeo.m_fh - objGeo.m_ft_fb) { rW_pl_y_wh = sqr(rz_pl_0 -objGeo.m_ft_fu) * objGeo.m_ft_w + sqr(objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb) * objGeo.m_ft_w; m_fM_pl_y = objGeo.m_fb *objGeo.m_ft_fu * (rz_pl_0 -objGeo.m_ft_fu / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb * objGeo.m_ft_fb * (objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb / 2.0f) * objMat.m_ff_y_fb; } else if (rz_pl_0 <objGeo.m_ft_fu) { rz_pl_0 = 0.5f * (objGeo.m_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb + objGeo.m_fb *objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * 2.0f * objGeo.m_ft_w * objMat.m_ff_y_w) / (objGeo.m_fb * objMat.m_ff_y_fu); rW_pl_y_wh = objGeo.m_fh_w * 2.0f * objGeo.m_ft_w * (objGeo.m_fh_w / 2.0f +objGeo.m_ft_fu - rz_pl_0); m_fM_pl_y = objGeo.m_fb * (sqr(rz_pl_0) / 2.0f + sqr(objGeo.m_ft_fu - rz_pl_0) / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb * objGeo.m_ft_fb * (objGeo.m_fh - rz_pl_0 - objGeo.m_ft_fb / 2.0f) * objMat.m_ff_y_fb; } else { rz_pl_0 = -0.5f * (objGeo.m_fb *objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_fh_w * 2.0f * objGeo.m_ft_w * objMat.m_ff_y_w - objGeo.m_fb * objMat.m_ff_y_fb *objGeo.m_ft_fu - objGeo.m_fb * objMat.m_ff_y_fb * objGeo.m_fh_w - objGeo.m_fh * objGeo.m_fb * objMat.m_ff_y_fb) / (objGeo.m_fb * objMat.m_ff_y_fb); rW_pl_y_wh = objGeo.m_fh_w * 2.0f * objGeo.m_ft_w * (rz_pl_0 -objGeo.m_ft_fu - objGeo.m_fh_w / 2.0f); m_fM_pl_y = objGeo.m_fb *objGeo.m_ft_fu * (rz_pl_0 -objGeo.m_ft_fu / 2.0f) * objMat.m_ff_y_fu + rW_pl_y_wh * objMat.m_ff_y_w + objGeo.m_fb * objGeo.m_ft_fb * (sqr(objGeo.m_fh - rz_pl_0) / 2.0f + sqr(rz_pl_0 - objGeo.m_fh_w -objGeo.m_ft_fu) / 2.0f) * objMat.m_ff_y_fb; } // 6.2.8 float rW_pl_y_w = m_fEta * rW_pl_y_wh; // 6.2.6(3) d) // 6.2.8 float rW_pl_z_fo = 2.0f * (objGeo.m_fb / 2.0f * objGeo.m_ft_fu * objGeo.m_fb / 4.0f); float rW_pl_z_fu = 2.0f * (objGeo.m_fb / 2.0f * objGeo.m_ft_fb * objGeo.m_fb / 4.0f); float rW_pl_z_f = rW_pl_z_fo + rW_pl_z_fu; // 6.2.6(3) e) m_fM_pl_z = objCrSc.m_fW_pl_z * objMat.m_ff_y_w + rW_pl_z_fo * (objMat.m_ff_y_fu - objMat.m_ff_y_w) + rW_pl_z_fu * (objMat.m_ff_y_fb - objMat.m_ff_y_w); //bGeschlQuerschnitt = TRUE; m_fA_k = (objGeo.m_fb - (objGeo.m_ft_wl + objGeo.m_ft_wr) / 2.0f) * (objGeo.m_fh - (objGeo.m_ft_fu + objGeo.m_ft_fb) / 2.0f); // Symetriu urcovat uy po nacitani roymerov a priereyovych charakteristik /* if (Math.Abs(m_fz_S - objGeo.m_fh / 2.0f) > objGeo.m_fh * 1.0e - 3f) bDoppeltSymmQuerschnitt = FALSE; */ //bQuerschn_fuer_InterVerf_2_moeglich = TRUE; } }
public C__HL(C_GEO__HL objGeo, C_MAT__HL objMat, C_IFO objIFO, C_NAD objNAD, C_STR__HL objStr, ECrScSymmetry1 eSym, ECrScPrType1 eProd) { if (eProd != ECrScPrType1.eCrSc_wld && eProd != ECrScPrType1.eCrSc_wldnorm) { float fF_f = 2.0f * objGeo.m_fc_f * objGeo.m_ft * objMat.Ff_y / objNAD.FGamma_M0; float fF_w = objGeo.m_fh * objGeo.m_ft * objMat.Ff_y / objNAD.FGamma_M0; //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_fuA, objStr.m_fSigma_fuB, objStr.m_fSigma_N, fF_w, fF_f, fF_w, objIFO.FN_Ed, objGeo.m_fc_f, objGeo.m_ft_fu, objMat.m_ff_y_fu / objNAD.FGamma_M0, objMat.m_fEps_f, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_fu, m_fAlpha_fu, m_fSigma_fyd_fu_1, m_fSigma_fyd_fu_2, m_fPsi_fu, m_fLambda_fu_1, m_fLambda_fu_2, m_fLambda_fu_3, m_iClass_fu, objMat.BStainlessS); //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_fbA, objStr.m_fSigma_fbB, objStr.m_fSigma_N, fF_w, fF_f, fF_w, objIFO.FN_Ed, objGeo.m_fc_f, objGeo.m_ft_fb, objMat.m_ff_y_fb / objNAD.FGamma_M0, objMat.m_fEps_f, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_fb, m_fAlpha_fb, m_fSigma_fyd_fb_1, m_fSigma_fyd_fb_2, m_fPsi_fb, m_fLambda_fb_1, m_fLambda_fb_2, m_fLambda_fb_3, m_iClass_fb, objMat.BStainlessS); fF_f = objGeo.m_fb * objGeo.m_ft * objMat.Ff_y / objNAD.FGamma_M0; fF_w = 2.0f * objGeo.m_fc_w * objGeo.m_ft * objMat.Ff_y / objNAD.FGamma_M0; //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_wA, objStr.m_fSigma_wB, objStr.m_fSigma_N, fF_f, fF_w, fF_f, objIFO.FN_Ed, objGeo.m_fc_w, objGeo.m_ft, objMat.m_ff_y_w / objNAD.FGamma_M0, objMat.m_fEps_w, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_w, m_fAlpha_w, m_fSigma_fyd_w_1, m_fSigma_fyd_w_2, m_fPsi_w, m_fLambda_w_1, m_fLambda_w_2, m_fLambda_w_3, m_iClass_w, objMat.BStainlessS); m_iClass_f = Math.Max(m_iClass_fu, m_iClass_fb); m_iClass = Math.Max(m_iClass_f, m_iClass_w); if (m_iClass_fu >= m_iClass_fb) { objStr.m_fSigma_fA = objStr.m_fSigma_fuA; objStr.m_fSigma_fB = objStr.m_fSigma_fuB; m_fAlpha_f = m_fAlpha_fu; m_fSigma_fyd_f_1 = m_fSigma_fyd_fu_1; m_fSigma_fyd_f_2 = m_fSigma_fyd_fu_2; m_fPsi_f = m_fPsi_fu; objMat.m_fEps_f = objMat.m_fEps_fu; m_fLambda_f_1 = m_fLambda_fu_1; m_fLambda_f_2 = m_fLambda_fu_2; m_fLambda_f_3 = m_fLambda_fu_3; m_fct_f = m_fct_fu; m_iClass_f = m_iClass_fu; } else { objStr.m_fSigma_fA = objStr.m_fSigma_fbA; objStr.m_fSigma_fB = objStr.m_fSigma_fbB; m_fAlpha_f = m_fAlpha_fb; m_fSigma_fyd_f_1 = m_fSigma_fyd_fb_1; m_fSigma_fyd_f_2 = m_fSigma_fyd_fb_2; m_fPsi_f = m_fPsi_fb; objMat.m_fEps_f = objMat.m_fEps_fb; m_fLambda_f_1 = m_fLambda_fb_1; m_fLambda_f_2 = m_fLambda_fb_2; m_fLambda_f_3 = m_fLambda_fb_3; m_fct_f = m_fct_fb; m_iClass_f = m_iClass_fb; } } else { float fF_f = objGeo.m_fc_f * (objGeo.m_ft_fu * objMat.m_ff_y_fu + objGeo.m_ft_fb * objMat.m_ff_y_fb) / objNAD.FGamma_M0; float fF_w = objGeo.m_fh * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_fuA, objStr.m_fSigma_fuB, objStr.m_fSigma_N, fF_w, fF_f, fF_w, objIFO.FN_Ed, objGeo.m_fc_f, objGeo.m_ft_fu, objMat.m_ff_y_fu / objNAD.FGamma_M0, objMat.m_fEps_fu, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_fu, m_fAlpha_fu, m_fSigma_fyd_fu_1, m_fSigma_fyd_fu_2, m_fPsi_fu, m_fLambda_fu_1, m_fLambda_fu_2, m_fLambda_fu_3, m_iClass_fu, objMat.BStainlessS); //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_fbA, objStr.m_fSigma_fbB, objStr.m_fSigma_N, fF_w, fF_f, fF_w, objIFO.FN_Ed, objGeo.m_fc_fb, objGeo.m_ft_fb, objMat.m_ff_y_fb / objNAD.FGamma_M0, objMat.m_fEps_fb, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_fb, m_fAlpha_fb, m_fSigma_fyd_fb_1, m_fSigma_fyd_fb_2, m_fPsi_fb, m_fLambda_fb_1, m_fLambda_fb_2, m_fLambda_fb_3, m_iClass_fb, objMat.BStainlessS); float fF_fu = objGeo.m_fb * objGeo.m_ft_fu * objMat.m_ff_y_fu / objNAD.FGamma_M0; fF_w = 2.0f * objGeo.m_fc_w * objGeo.m_ft_w * objMat.m_ff_y_w / objNAD.FGamma_M0; float fF_fb = objGeo.m_fb * objGeo.m_ft_fb * objMat.m_ff_y_fb / objNAD.FGamma_M0; float fF_f_com, fF_f_ten; if (objIFO.FM_y_Ed >= 0.0f) { fF_f_com = fF_fu; fF_f_ten = fF_fb; } else { fF_f_com = fF_fb; fF_f_ten = fF_fu; } //Table 5.2 GetClassTab52_INT(objStr.m_fSigma_wA, objStr.m_fSigma_wB, objStr.m_fSigma_N, fF_f_com, fF_w, fF_f_ten, objIFO.FN_Ed, objGeo.m_fc_w, objGeo.m_ft_w, objMat.m_ff_y_w / objNAD.FGamma_M0, objMat.m_fEps_w, m_iKlassif_Psi_Fix_Sigma_N, m_bKlassif_Eps_Kl3_Sigma_com, objStr.m_fSigma_com_Ed, m_fct_w, m_fAlpha_w, m_fSigma_fyd_w_1, m_fSigma_fyd_w_2, m_fPsi_w, m_fLambda_w_1, m_fLambda_w_2, m_fLambda_w_3, m_iClass_w, objMat.BStainlessS); m_iClass = Math.Max(m_iClass_fu, m_iClass_fb); m_iClass = Math.Max(m_iClass, m_iClass_w); } }