public void Compare() { LengthUnitConversion lb = new LengthUnitConversion(); lb.M = ScaffoldPara.Lb; double minv = -1; CalcQ1(); CalcV(); if (lb.MM / 150 > 10)//计算出min[lb/150,10]的值 { minv = 10; } else { minv = lb.MM / 150; } if (f_v.TargetValue < minv)//将V与min[lb/150,10]进行比较,符合要求输出,不符合抛出异常 { lString = Controller4.f_v.TargetValue.ToString("#0.000"); rString = minv.ToString("#0.000"); InputDic(); } else { throw new Exception("横向水平杆挠度验算未通过"); } }
//计算出V的值 //KN/M^2=N/MM^2 private void CalcV() { double I = Controller1.tfs_Fitting.FindMaterialPara("横向水平杆", "I") * Math.Pow(10, 4);//将I的单位换成MM^4 double E = 2.06 * Math.Pow(10, 5); LengthUnitConversion lb = new LengthUnitConversion(); lb.M = ScaffoldPara.Lb;//将lb的单位换成毫米 f_v = new F_V(f_q1.TargetValue, lb.MM, E, I); f_v.ComputeValue(); }
private void CalcN() { //进行脚手架尺寸的单位换算 LengthUnitConversion la = new LengthUnitConversion(); LengthUnitConversion lb = new LengthUnitConversion(); LengthUnitConversion h = new LengthUnitConversion(); la.M = ScaffoldPara.La; lb.M = ScaffoldPara.Lb; h.M = ScaffoldPara.H; //根据纵距,横距步距查杆件 tfs_Fitting = new TFS_Fitting((int)la.MM, (int)lb.MM, (int)h.MM, ScaffoldPara.Fitting_Model); tfs_Fitting.Search(); if (!tfs_Fitting.IsSearched) { return; } //进行各杆自重的单位换算 PowerUnitConversion GStandingTube = new PowerUnitConversion(); //立杆自重 PowerUnitConversion GVLedger = new PowerUnitConversion(); //纵向水平杆自重 PowerUnitConversion GHLedger = new PowerUnitConversion(); //横向水平杆自重 PowerUnitConversion GVBrace = new PowerUnitConversion(); //竖向斜杆自重 PowerUnitConversion GHBrace = new PowerUnitConversion(); //水平斜杆自重N GStandingTube.N = tfs_Fitting.FindMaterialPara("立杆", "the_weight") * 9.8; GVLedger.N = tfs_Fitting.FindMaterialPara("纵向水平杆", "the_weight") * 9.8; GHLedger.N = tfs_Fitting.FindMaterialPara("横向水平杆", "the_weight") * 9.8; GVBrace.N = tfs_Fitting.FindMaterialPara("竖向斜杆", "the_weight") * 9.8; GHBrace.N = tfs_Fitting.FindMaterialPara("水平斜杆", "the_weight") * 9.8; //计算脚手架结构自重标准值产生的轴力 单位:KN f_NG1K = new F_NG1K(GStandingTube.KN, GVLedger.KN, GHLedger.KN, GVBrace.KN, GHBrace.KN, ScaffoldPara.Step_Num); f_NG1K.ComputeValue(); //计算NG2k:构配件自重标准值产生的轴力 单位:KN f_NG2K = new F_NG2K(la.M, lb.M, ScaffoldPara.Act_Layers, ScaffoldPara.Step_Num * h.M); f_NG2K.ComputeValue(); //查询施工均布活荷载标准值q 单位: KN / m2 tfm1_qConsLoad = new TFM1_qConsLoad(ScaffoldPara.Sca_Type.Trim() + "脚手架"); tfm1_qConsLoad.Search(); //∑NQK:施工荷载标准值产生的轴向力总和 f_NQK = new F_NQK(la.M, lb.M, tfm1_qConsLoad.TargetValue, ScaffoldPara.Con_Layers); f_NQK.ComputeValue(); //计算N:支架立杆轴向力设计值 单位:KN f_N = new F_N(f_NG1K.TargetValue, f_NG2K.TargetValue, f_NQK.TargetValue); f_N.ComputeValue(); N = f_N.TargetValue; }
/// <summary> /// 计算立杆长度系数φ的公式,必须在计算完N之后再用,计算N的方 /// </summary> private void Calcφ() { if (!tfs_Fitting.IsSearched) { return; //没查到表就不算了 } //查询立杆的长度系数 TFM1_Miu tfm1_Miu = new TFM1_Miu(ScaffoldPara.Anchor_Style); tfm1_Miu.Search(); //计算立杆的柔度 没有单位 LengthUnitConversion H = new LengthUnitConversion(); H.M = ScaffoldPara.H;//这里要进行一步单位换算 f_Lmd = new F_Lmd(tfm1_Miu.TargetValue, H.CM, tfs_Fitting.FindMaterialPara("立杆", "radius")); f_Lmd.ComputeValue(); //根据柔度查稳定系数 没有单位 f_FiQ345 = new TFS_FiQ345(f_Lmd.TargetValue); φ = f_FiQ345.Search(); }
public void CalcFi() { //确定i值cm,使用公式5公开的方法 double i = Controller5.tfs_anchor.FindAnchorPara("radius"); //脚手架距建筑物距离l0公式转换 LengthUnitConversion l0 = new LengthUnitConversion(); l0.MM = ScaffoldPara.Bui_Distance; f_lmdanchor = new F_LmdAnchor(l0.CM, i); f_lmdanchor.ComputeValue(); if (f_lmdanchor.TargetValue <= 230) { TFS_FiAnchor tfs_fianchor = new TFS_FiAnchor(f_lmdanchor.TargetValue, ScaffoldPara.Anchor_Type); tfs_fianchor.Search(); fi = tfs_fianchor.TargetValue; } else { //lamda大于230,运算不通过 fi = -1.0; } }