コード例 #1
0
 public PlateProjectedFromBuiltUpIShape(ISteelMaterial Material, ISectionI SectionI,
     ISectionRectangular plate,
     FlexuralCompressionFiberPosition compressionFiberPosition)
     : base(Material, SectionI, compressionFiberPosition)
 {
     this.plate = plate;
 }
コード例 #2
0
        public FlangeOfBuiltUpI(ISteelMaterial Material, ISectionI s, 
            FlexuralCompressionFiberPosition compressionFiberPosition)
            :base(Material)
        {
            this.section = s;
            double bf=0;
            double tf=0;
            switch (compressionFiberPosition)
            {
                case FlexuralCompressionFiberPosition.Top:
                    bf = s.b_fTop;
                    tf = s.t_fTop;
                    break;
                case FlexuralCompressionFiberPosition.Bottom:
                    bf = s.b_fTop;
                    tf = s.t_fTop;
                    break;
                default:
                    throw new Exception("Compression fiber location different from to or bottom is not supported");
                    
            }

            base.Overhang = bf;
            base.Thickness = tf;
        }
コード例 #3
0
 public AngleLegProjectedFromBuiltUpIShape(ISteelMaterial Material, ISectionI SectionI,
     ISectionAngle angle,
     FlexuralCompressionFiberPosition compressionFiberPosition)
     : base(Material, SectionI, compressionFiberPosition)
 {
     this.angle = angle;
 }
コード例 #4
0
ファイル: ShearMemberBox.cs プロジェクト: Wosad/Wosad.Design
 public ShearMemberBox(ISectionTube section, ISteelMaterial material)
   
 {
     base.material = material;
     base.t_w = 2.0 * section.t_des;
     base.h = section.H - 3.0 * section.t_des;
 }
コード例 #5
0
ファイル: BeamCopeBase.cs プロジェクト: Wosad/Wosad.Design
 public BeamCopeBase(double c, double d_c, ISectionI Section, ISteelMaterial Material)
 {
     this.c = c;
     this.d_c = d_c;
     this.Section = Section;
     this.Material = Material;
 }
コード例 #6
0
            protected virtual void SetCompactness(ISectionAngle ang, ISteelMaterial Material, AngleOrientation AngleOrientation)
           {

  
                   double shortLeg;
                   double longLeg;

                   if (ang.d >= ang.b)
                   {
                       longLeg = ang.d;
                       shortLeg = ang.b;
                   }
                   else
                   {
                       longLeg = ang.b;
                       shortLeg = ang.d;
                   }

                   //make differentiation based on angle orientation

                   if (AngleOrientation == AngleOrientation.LongLegVertical)
                   {
                       FlangeCompactness = new LegOfSingleAngle(Material, shortLeg, ang.t);
                       WebCompactness = new LegOfSingleAngle(Material, longLeg, ang.t);
                   }
                   else
                   {
                       FlangeCompactness = new LegOfSingleAngle(Material, longLeg, ang.t);
                       WebCompactness = new LegOfSingleAngle(Material, shortLeg, ang.t);
                   }

               }
コード例 #7
0
ファイル: 08-WebOfBox.cs プロジェクト: Wosad/Wosad.Design
 public WebOfBox(ISteelMaterial Material, ISectionBox sectionBox)
     :base(Material)
 {
     this.SectionBox = sectionBox;
     ISectionBox s = sectionBox;
     this.Thickness = s.t_w;
 }
コード例 #8
0
            public DoubleAngleMember(ISectionDoubleAngle Section, ISteelMaterial Material, AngleOrientation AngleOrientation)
                : base(Section.Angle, Material, AngleOrientation)
            {



            }
コード例 #9
0
 public ShearMemberGeneral(double h, double t_w, double a, ISteelMaterial material, bool IsTeeShape = false)
  {
      this.t_w     =t_w     ;
      this.h       =h       ;
      this.material=material;
      this.a = a;
      this.IsTeeShape = IsTeeShape;
  }
コード例 #10
0
 public AffectedElementInFlexure(SectionRectangular Section, ISteelMaterial Material, ICalcLog CalcLog, bool IsRolled=false)
     : base(Section, Material, CalcLog)
 {
     this.HasHolesInTensionFlange = false;
     this.A_fg = 0;
     this.A_fn = 0;
     this.IsRolled = IsRolled;
 }
コード例 #11
0
 public ShearMemberCircular(double D, double t_nom, bool Is_SAW_member, double L_v, ISteelMaterial material)
 {
     this.D=              D;
     this.t_nom=              t_nom;
     this.Is_SAW_member=  Is_SAW_member;
     this.material = material;
     this.L_v = L_v;
 }
コード例 #12
0
        public WebOfSinglySymI(ISteelMaterial Material, ISectionI SectionI,
            FlexuralCompressionFiberPosition compressionFiberPosition)
            :base(Material,SectionI)
        {
            this.SectionI = SectionI;
            this.compressionFiberPosition = compressionFiberPosition;

        }
コード例 #13
0
ファイル: 09-FlangeOBoxs.cs プロジェクト: Wosad/Wosad.Design
 public FlangeOfBox(ISteelMaterial Material, ISectionBox SectionBox)
     :base(Material)
 {
     this.SectionBox = SectionBox;
     ISectionBox s = SectionBox;
     
     IsUniformThickness = s.t_f == s.t_w ? true : false;
     this.Thickness = s.t_f; //why need  this?
 }
コード例 #14
0
        public PlateProjectedFromRolledIShape(ISteelMaterial Material, ISectionRectangular s)
            :base(Material)
        {
            double bf = s.H;
            double tf=s.B;

            base.Overhang = bf;
            base.Thickness = tf;
        }
コード例 #15
0
        public OutstandingLegOfAnglesWithContContact(ISteelMaterial Material, ISectionAngle s)
            :base(Material)
        {
            double bf=s.b;
            double tf=s.t;

            base.Overhang = bf;
            base.Thickness = tf;
        }
コード例 #16
0
ファイル: 11-StemOfTee.cs プロジェクト: Wosad/Wosad.Design
          public StemOfTee(ISteelMaterial Material, ISectionTee tee)
            :base(Material)
        {
            this.tee = tee;
            Overhang = tee.d;

            base.Overhang = Overhang;
            base.Thickness = tee.t_w;
        }
コード例 #17
0
ファイル: 06-WallOfChs.cs プロジェクト: Wosad/Wosad.Design
        public WallOfChs(ISteelMaterial Material, ISectionPipe SectionPipe)
            :base(Material)
        {
            this.SectionPipe = SectionPipe;
            ISectionPipe s = SectionPipe;
            double td = s.t_des;

            this.diameter = s.D;
            this.Thickness = s.t_des;
        }
コード例 #18
0
ファイル: 02-WebOfChannel.cs プロジェクト: Wosad/Wosad.Design
 public WebOfChannel(ISteelMaterial Material, ISectionChannel SectionChannel)
     :base(Material)
 {
     this.SectionChannel = SectionChannel;
     ISectionChannel s = SectionChannel;
     this.Width = s.d - (2*s.k);
     if (this.Width<=0)
     {
         throw new Exception("Clear web distance cannot be less than or equal to 0");
     }
     this.Thickness = s.t_w;
 }
コード例 #19
0
   public WebOfDoublySymI(ISteelMaterial Material, ISectionI ISectionI)
     :base(Material)
 {
     this.SectionI = ISectionI;
     ISectionI s = ISectionI;
     this.Width = s.h_web;
     if (this.Width<=0)
     {
         throw new Exception("Clear web distance cannot be less than or equal to 0");
     }
     this.Thickness = s.t_w;
 }
コード例 #20
0
ファイル: 04-FlangeOfRhs.cs プロジェクト: Wosad/Wosad.Design
        public FlangeOfRhs(ISteelMaterial Material, ISectionTube SectionTube, MomentAxis MomentAxis) //double OutsideCornerRadius=-1.0)
            :base(Material)
        {
            this.SectionTube = SectionTube;
            ISectionTube s = SectionTube;
            double td = s.t_des;
            //if (OutsideCornerRadius==-1.0)
            //{
            //    this.Width = s.B - 3.0 * td;
            //}
            //else
            //{
            //    if (OutsideCornerRadius<0)
            //    {
            //        throw new Exception("Invalid RHS corner radius. Must be over 0");
            //    }
            //    this.Width = s.B - 2.0 * OutsideCornerRadius;
            //}
            this.Width = GetFlangeWidth_bf(MomentAxis);

            this.Thickness = td;
        }
コード例 #21
0
        public FlangeOfChannel(ISteelMaterial Material, ISectionChannel s, ElementLocation location)
            :base(Material)
        {
            double bf=0;
            double tf=0;

            switch (location)
            {
                case ElementLocation.Top:
                    bf = s.b_f;
                    tf = s.t_f;
                    break;
                case ElementLocation.Bottom:
                    bf = s.b_f;
                    tf = s.t_f;
                    break;
                default:
                    throw new Exception("Invalid location is specified for Channel flange");
            }

            base.Overhang = bf;
            base.Thickness = tf;
        }
コード例 #22
0
        public LegOfSingleAngle(ISteelMaterial Material, ISectionAngle angle, bool LongLegProjecting)
            :base(Material)
        {
            this.angle = angle;

            double VLeg = angle.d;
            double HLeg = angle.b;

            double LongLeg = Math.Max(VLeg, HLeg);
            double ShortLeg = Math.Min(VLeg, HLeg);

            if (LongLegProjecting==true)
            {
                Overhang = LongLeg;
            }
            else
            {
                Overhang = ShortLeg;
            }

            base.Overhang = Overhang;
            base.Thickness = angle.t;
        }
コード例 #23
0
ファイル: GeneralSection.cs プロジェクト: Wosad/Wosad.Design
 public SteelGeneralSection(ISection Section, ISteelMaterial Material)
        :base(Material)
    {
        this.section = Section;
    }
コード例 #24
0
 public LegOfSingleAngle(ISteelMaterial Material, double Overhang, double Thickness)
     : base(Material, Overhang, Thickness)
 {
 }
コード例 #25
0
ファイル: 11-StemOfTee.cs プロジェクト: Wosad/Wosad.Design
   public StemOfTee(ISteelMaterial Material, double Overhang, double Thickness)
     :base(Material,Overhang,Thickness)
 {
     
 }
コード例 #26
0
        public FlangeOfChannel(ISteelMaterial Material, double Overhang, double Thickness)
            :base(Material, Overhang,Thickness)
        {

        }
コード例 #27
0
ファイル: SectionI.cs プロジェクト: Wosad/Wosad.Design
 public SteelSectionI(ISectionI Section, ISteelMaterial Material)
     :base(Material)
 {
     this.section = Section;
 }
コード例 #28
0
 public CompactnessBase(ISteelMaterial Material)
 {
     this.material = Material;
 }
コード例 #29
0
  public WebOfSinglySymI(ISteelMaterial Material, double Width, double Thickness,
      FlexuralCompressionFiberPosition compressionFiberPosition)
     :base(Material,Width,Thickness)
 {
     this.compressionFiberPosition = compressionFiberPosition;
 }
コード例 #30
0
        //SteelMaterial mat 

        public ISteelCompressionMember GetCompressionMember(ISection Shape, ISteelMaterial mat,  double L_ex, double L_ey, double L_ez,  bool IsRolledShape = true)
        {
            return GetCompressionMember(Shape, L_ex, L_ey, L_ez, mat.YieldStress, mat.ModulusOfElasticity, IsRolledShape);
        }
コード例 #31
0
        public SteelSectionBase(ISteelMaterial Material)
        {

            this.material = Material;
        }
コード例 #32
0
 public WallOfChs(ISteelMaterial Material, double Diameter, double Thickness)
     : base(Material)
 {
     this.diameter  = Diameter;
     this.Thickness = Thickness;
 }
コード例 #33
0
ファイル: 07-WebOfRhs.cs プロジェクト: jerem48/Wosad.Design
 public WebOfRhs(ISteelMaterial Material, double Depth, double Thickness)
     : base(Material, Depth, Thickness)
 {
 }
コード例 #34
0
 public WebOfDoublySymI(ISteelMaterial Material) : base(Material)
 {
 }
コード例 #35
0
 public AffectedElementInTension(ISection Section, ISteelMaterial Material, ICalcLog CalcLog)
     : base(Section, Material, CalcLog)
 {
 }
コード例 #36
0
ファイル: CompactnessBase.cs プロジェクト: Wosad/Wosad.Design
 public CompactnessBase(ISteelMaterial Material)
 {
     this.material = Material;
 }
コード例 #37
0
 public WebOfDoublySymI(ISteelMaterial Material, double Width, double Thickness)
     : base(Material, Width, Thickness)
 {
 }