/// <summary> /// When dimension lumber is used where moisture content will exceed 19% for an extended time period, /// design values shall be multiplied by the appropriate wet service factors /// </summary> /// <param name="ValueType"> Distiguishes between bending, shear, tension compression reference values</param> /// <param name="F">Reference design value for bending or compression</param> /// <param name="C_F">Size factor</param> /// <param name="SawnLumberType">Defines the type of lumber</param> /// <returns></returns> public double GetWetServiceFactor(ReferenceDesignValueType ValueType, double F, double C_F, SawnLumberType SawnLumberType) { double Cm = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: return(GetDimensionalLumberC_M(ValueType, F, C_F)); //4A case SawnLumberType.SouthernPineDimensionLumber: return(GetDimensionalLumberC_M(ValueType, F, C_F)); //4B case SawnLumberType.MechanicallyGradedDimensionLumber: //4C return(GetDimensionalLumberC_M(ValueType, F, C_F)); case SawnLumberType.VisuallyGradedTimbers: //4D return(GetTimberC_M(ValueType, F, C_F)); case SawnLumberType.VisuallyGradedDecking: //4E return(GetDeckingC_M(ValueType, F, C_F)); case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F return(GetNonNorthAmericanLumberC_M(ValueType, F, C_F)); default: return(GetDimensionalLumberC_M(ValueType, F, C_F)); //4A } }
private double GetFlatUseCoefficientFromReferenceTable( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType ) { double b = Depth; double t = Thickness; double C_fu = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_fu = GetDimensionalLumberC_fu(b, t); break;//4A case SawnLumberType.SouthernPineDimensionLumber://4B C_fu = GetSPDimensionalLumberC_fu(b, t); break; case SawnLumberType.MechanicallyGradedDimensionLumber: //4C C_fu = GetMechanicallyGradedLumberC_fu(b, t); break; case SawnLumberType.VisuallyGradedTimbers: //4D C_fu = GetTimberC_fu(b, t, CommercialGrade, ReferenceDesignValueType); break; case SawnLumberType.VisuallyGradedDecking: //4E C_fu = GetDeckingC_fu(); break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F C_fu = GetNonNorthAmericanLumberC_fu(b, t); break; default://4A C_fu = GetDimensionalLumberC_fu(b, t); break; } return C_fu; }
private double GetSizeCoefficientFromReferenceTable( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType, bool LoadAppliedToNarrowFace ) { double b = Depth; double t = Thickness; double C_F = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_F = GetDimensionalLumberC_F(b, t, CommercialGrade,ReferenceDesignValueType); break;//4A case SawnLumberType.SouthernPineDimensionLumber://4B C_F = GetSPDimensionalLumberC_F(b, t,CommercialGrade); break; case SawnLumberType.MechanicallyGradedDimensionLumber: //4C C_F = 1.0; break; case SawnLumberType.VisuallyGradedTimbers: //4D C_F = GetTimberC_F(b, ReferenceDesignValueType, LoadAppliedToNarrowFace); break; case SawnLumberType.VisuallyGradedDecking: //4E C_F = GetDeckingC_F(t); break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F //Adjustment factors for table 4F are the same as those for 4A C_F = GetDimensionalLumberC_F(b, t, CommercialGrade, ReferenceDesignValueType); break; default://4A C_F = GetDimensionalLumberC_F(b, t, CommercialGrade,ReferenceDesignValueType); break; } return C_F; }
public double GetRepetitiveCoefficientFromReferenceTable(double Thickness, SawnLumberType SawnLumberType) { double C_r; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4A break; case SawnLumberType.SouthernPineDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4B break; case SawnLumberType.MechanicallyGradedDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4C break; case SawnLumberType.VisuallyGradedTimbers: C_r = 1.0;//4D break; case SawnLumberType.VisuallyGradedDecking: C_r = 1.0;//4E break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4F break; default: C_r = GetDimensionalLumberC_r(Thickness); //4A break; } return C_r; }
public double GetFlatUseFactor( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType ) { double b = Depth; double C_fu = 1.0; if (b >= 2 || b <= 4) { C_fu = GetFlatUseCoefficientFromReferenceTable( Depth, Thickness, SawnLumberType, CommercialGrade, ReferenceDesignValueType); } return C_fu; }
public double GetFlatUseFactor( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType ) { double b = Depth; double C_fu = 1.0; if (b >= 2 || b <= 4) { C_fu = GetFlatUseCoefficientFromReferenceTable( Depth, Thickness, SawnLumberType, CommercialGrade, ReferenceDesignValueType); } return(C_fu); }
private double GetSizeCoefficientFromReferenceTable( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType, bool LoadAppliedToNarrowFace ) { double b = Depth; double t = Thickness; double C_F = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_F = GetDimensionalLumberC_F(b, t, CommercialGrade, ReferenceDesignValueType); break; //4A case SawnLumberType.SouthernPineDimensionLumber: //4B C_F = GetSPDimensionalLumberC_F(b, t, CommercialGrade); break; case SawnLumberType.MechanicallyGradedDimensionLumber: //4C C_F = 1.0; break; case SawnLumberType.VisuallyGradedTimbers: //4D C_F = GetTimberC_F(b, ReferenceDesignValueType, LoadAppliedToNarrowFace); break; case SawnLumberType.VisuallyGradedDecking: //4E C_F = GetDeckingC_F(t); break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F //Adjustment factors for table 4F are the same as those for 4A C_F = GetDimensionalLumberC_F(b, t, CommercialGrade, ReferenceDesignValueType); break; default: //4A C_F = GetDimensionalLumberC_F(b, t, CommercialGrade, ReferenceDesignValueType); break; } return(C_F); }
public double GetRepetitiveCoefficientFromReferenceTable(double Thickness, SawnLumberType SawnLumberType) { double C_r; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4A break; case SawnLumberType.SouthernPineDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4B break; case SawnLumberType.MechanicallyGradedDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4C break; case SawnLumberType.VisuallyGradedTimbers: C_r = 1.0;//4D break; case SawnLumberType.VisuallyGradedDecking: C_r = 1.0; //4E break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: C_r = GetDimensionalLumberC_r(Thickness); //4F break; default: C_r = GetDimensionalLumberC_r(Thickness); //4A break; } return(C_r); }
public double GetRepetitiveMemberFactor(bool IsRepetitive, double Spacing, double Thickness, SawnLumberType SawnLumberType) { //NDS 2015 Section 4.3.9 if (IsRepetitive == true) { if (Spacing > 24) { return(1.0); } else { //return 1.15; return(GetRepetitiveCoefficientFromReferenceTable(Thickness, SawnLumberType)); } } else { return(1.0); } }
/// <summary> /// When dimension lumber is used where moisture content will exceed 19% for an extended time period, /// design values shall be multiplied by the appropriate wet service factors /// </summary> /// <param name="ValueType"> Distiguishes between bending, shear, tension compression reference values</param> /// <param name="F">Reference design value for bending or compression</param> /// <param name="C_F">Size factor</param> /// <param name="SawnLumberType">Defines the type of lumber</param> /// <returns></returns> public double GetWetServiceFactor(ReferenceDesignValueType ValueType, double F, double C_F, SawnLumberType SawnLumberType) { double Cm = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: return GetDimensionalLumberC_M(ValueType, F, C_F); //4A case SawnLumberType.SouthernPineDimensionLumber: return GetDimensionalLumberC_M(ValueType, F, C_F); //4B case SawnLumberType.MechanicallyGradedDimensionLumber: //4C return GetDimensionalLumberC_M(ValueType, F, C_F); case SawnLumberType.VisuallyGradedTimbers: //4D return GetTimberC_M(ValueType, F, C_F); case SawnLumberType.VisuallyGradedDecking: //4E return GetDeckingC_M(ValueType, F, C_F); case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F return GetNonNorthAmericanLumberC_M(ValueType, F, C_F); default: return GetDimensionalLumberC_M(ValueType, F, C_F); //4A } }
public double GetSizeFactor( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType, bool LoadAppliedToNarrowFace=true ) { double C_F; if (Thickness >= 5 && Depth > 12.0) { // NDS 2015 Section 4.3.6.2 C_F = Math.Pow(12 / Depth, 1 / 9.0); C_F = C_F > 1.0 ? 1.0 : C_F; } else { C_F = GetSizeCoefficientFromReferenceTable(Depth, Thickness, SawnLumberType, CommercialGrade, ReferenceDesignValueType, LoadAppliedToNarrowFace); } return C_F; }
public double GetRepetitiveMemberFactor(bool IsRepetitive, double Spacing, double Thickness, SawnLumberType SawnLumberType) { //NDS 2015 Section 4.3.9 if (IsRepetitive == true) { if (Spacing > 24) { return 1.0; } else { //return 1.15; return GetRepetitiveCoefficientFromReferenceTable(Thickness, SawnLumberType); } } else { return 1.0; } }
public double GetSizeFactor( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType, bool LoadAppliedToNarrowFace = true ) { double C_F; if (Thickness >= 5 && Depth > 12.0) { // NDS 2015 Section 4.3.6.2 C_F = Math.Pow(12 / Depth, 1 / 9.0); C_F = C_F > 1.0 ? 1.0 : C_F; } else { C_F = GetSizeCoefficientFromReferenceTable(Depth, Thickness, SawnLumberType, CommercialGrade, ReferenceDesignValueType, LoadAppliedToNarrowFace); } return(C_F); }
private double GetFlatUseCoefficientFromReferenceTable( double Depth, double Thickness, SawnLumberType SawnLumberType, CommercialGrade CommercialGrade, ReferenceDesignValueType ReferenceDesignValueType ) { double b = Depth; double t = Thickness; double C_fu = 1.0; switch (SawnLumberType) { case SawnLumberType.DimensionLumber: C_fu = GetDimensionalLumberC_fu(b, t); break; //4A case SawnLumberType.SouthernPineDimensionLumber: //4B C_fu = GetSPDimensionalLumberC_fu(b, t); break; case SawnLumberType.MechanicallyGradedDimensionLumber: //4C C_fu = GetMechanicallyGradedLumberC_fu(b, t); break; case SawnLumberType.VisuallyGradedTimbers: //4D C_fu = GetTimberC_fu(b, t, CommercialGrade, ReferenceDesignValueType); break; case SawnLumberType.VisuallyGradedDecking: //4E C_fu = GetDeckingC_fu(); break; case SawnLumberType.NonNorthAmericanVisuallyGradedDimensionLumber: //4F C_fu = GetNonNorthAmericanLumberC_fu(b, t); break; default: //4A C_fu = GetDimensionalLumberC_fu(b, t); break; } return(C_fu); }