public static Dictionary<string, object> WindGustEffectFactor(double B,double h,double L,double beta,double n_1,double V, string WindExposureCategory, string WindStructureDynamicResponseType = "Flexible", string Code = "ASCE7-10") { //Default values double G = 0; //Calculation logic: WindExposureCategory Exposure; bool IsValidStringExposure = Enum.TryParse(WindExposureCategory, true, out Exposure); if (IsValidStringExposure == false) { throw new Exception("Exposure category is not recognized. Check input string."); } WindStructureDynamicResponseType response; bool IsValidStringResponse = Enum.TryParse(WindStructureDynamicResponseType, true, out response); if (IsValidStringResponse == false) { throw new Exception("Dynamic response type is not recognized. Specify Rigid or Flexible. Check input string."); } CalcLog Log = new CalcLog(); WindStructure structure = new WindStructure(Log); G = structure.GetGustFacor(response,B,h,L,beta,n_1,V,Exposure); return new Dictionary<string, object> { { "G", G } }; }
public static Dictionary<string, object> WindDirectionalityFactor(string WindStructureDescriptionForExposure = "MWFRS", string Code = "ASCE7-10") { //Default values double K_d = 0; //Calculation logic: WindStructure structure = new WindStructure(new CalcLog()); K_d = structure.GetKd(WindStructureDescriptionForExposure); return new Dictionary<string, object> { { "K_d", K_d } }; }
public static Dictionary<string, object> WindExposureConstants(string WindExposureCategory, string Code = "ASCE7-10") { //Default values double alpha = 0; double z_g = 0; double alpha_ = 0; double b_ = 0; double c = 0; double l = 0; double epsilon_ = 0; double z_min = 0; WindExposureCategory Exposure; //Calculation logic: bool IsValidStringExposure = Enum.TryParse(WindExposureCategory, true, out Exposure); if (IsValidStringExposure == false) { throw new Exception("Exposure category is not recognized. Check input string."); } CalcLog log = new CalcLog(); WindStructure structure = new WindStructure(new CalcLog()); //structure.GetTerrainExposureConstant(TerrainExposureConstant.alpha, Exposure); alpha = structure.GetTerrainExposureConstant(TerrainExposureConstant.alpha , Exposure); z_g = structure.GetTerrainExposureConstant(TerrainExposureConstant.zg , Exposure); alpha_ = structure.GetTerrainExposureConstant(TerrainExposureConstant.alpha_ob , Exposure); b_ = structure.GetTerrainExposureConstant(TerrainExposureConstant.b_ob , Exposure); c = structure.GetTerrainExposureConstant(TerrainExposureConstant.c , Exposure); l = structure.GetTerrainExposureConstant(TerrainExposureConstant.l , Exposure); epsilon_ = structure.GetTerrainExposureConstant(TerrainExposureConstant.epsilon_ob , Exposure); z_min = structure.GetTerrainExposureConstant(TerrainExposureConstant.zmin , Exposure); return new Dictionary<string, object> { { "alpha", alpha } ,{ "z_g", z_g } ,{ "alpha_", alpha_ } ,{ "b_", b_ } ,{ "c", c } ,{ "l", l } ,{ "epsilon_", epsilon_ } ,{ "z_min", z_min } }; }