public IAnalysisBeam CreateBeamInstance(string BeamCaseId, LoadBeam load, ICalcLog Log)
        {
            double L = d.L;
            double LoadDimension_a = d.a_load;

            Beam bm = null;
            if (BeamCaseId.StartsWith("C1") == true)
            {
                bm = new BeamSimple(d.L, load, Log);
            }
            else if (BeamCaseId.StartsWith("C2") == true)
            {
                bm = new BeamSimpleWithOverhang(L, LoadDimension_a, load, Log);
            }
            else if (BeamCaseId.StartsWith("C3") == true)
            {
                bm = new BeamPinnedFixed(L,load, Log);
            }
            else if (BeamCaseId.StartsWith("C4") == true)
            {
                bm = new BeamFixedFixed(L, load, Log);
            }
            else //else if (BeamCaseId.StartsWith("C5") == true)
            {
                bm = new BeamCantilever(L, load, Log);
            }

            bm.ModulusOfElasticity = d.E;
            bm.MomentOfInertia = d.I;

            return bm;
        }
 public DistributedUniformlyDecreasingToBase(BeamCantilever beam, double w)
 {
     this.beam           = beam;
     L                   = beam.Length;
     this.w              = w;
     ResultantCalculated = false;
 }
        public DistributedUniformlyIncreasingToBase(BeamCantilever beam, double w)
        {
            this.beam = beam;
            L = beam.Length;
            this.w = w;
            ResultantCalculated = false;

        }
 public ConcentratedLoadAtAnyPoint(BeamCantilever beam, double P, double a)
 {
     this.beam = beam;
     L = beam.Length;
     this.P = P;
     if (a > L)
     {
         throw new LoadLocationParametersException(L, "a");
     }
     this.a = a;
     this.b = L - a;
     ShearForcesCalculated = false;
 }
 public UniformPartialLoad(BeamCantilever beam, double w, double b)
 {
     this.beam      = beam;
     L              = beam.Length;
     this.w         = w;
     this.b         = b;
     this.c         = L - b;
     eWasCalculated = false;
     if (b + c > L)
     {
         throw new LoadLocationParametersException(L, "b");
     }
 }
Example #6
0
 public ConcentratedLoadAtAnyPoint(BeamCantilever beam, double P, double a)
 {
     this.beam = beam;
     L         = beam.Length;
     this.P    = P;
     if (a > L)
     {
         throw new LoadLocationParametersException(L, "a");
     }
     this.a = a;
     this.b = L - a;
     ShearForcesCalculated = false;
 }
 public UniformPartialLoad(BeamCantilever beam, double w, double b)
 {
     this.beam = beam;
     L = beam.Length;
     this.w = w;
     this.b = b;
     this.c = L -b;
     eWasCalculated = false;
     if (b + c > L)
     {
         throw new LoadLocationParametersException(L, "b");
     }
 }
Example #8
0
        public BeamCase GetCase(LoadBeam load, IAnalysisBeam beam)
        {
            this.beam = beam as BeamCantilever;
            BeamCase BeamLoadCase = null;

            if (load is LoadConcentrated)
            {
                BeamLoadCase = GetConcentratedLoadCase(load);
            }
            else if (load is LoadDistributed)
            {
                BeamLoadCase = GetDistributedLoadCase(load);
            }
            else if (load is LoadMoment)
            {
                BeamLoadCase = GetMomentLoadCase(load);
            }

            return(BeamLoadCase);
        }
 public ConcentratedLoadAtTip(BeamCantilever beam, double P)
 {
     this.beam = beam;
     L         = beam.Length;
     this.P    = P;
 }
 public UniformLoad(BeamCantilever beam, double w)
 {
     this.beam = beam;
     L         = beam.Length;
     this.w    = w;
 }
 public ConcentratedLoadAtTip(BeamCantilever beam, double P)
 {
     this.beam = beam;
     L = beam.Length;
     this.P = P;
 }
Example #12
0
 public MomentAtTip(BeamCantilever beam, double Mo)
 {
     this.beam = beam;
     L = beam.Length;
     this.Mo = Mo;
 }
Example #13
0
 public MomentAtTip(BeamCantilever beam, double Mo)
 {
     this.beam = beam;
     L         = beam.Length;
     this.Mo   = Mo;
 }
Example #14
0
 public UniformLoad(BeamCantilever beam, double w)
 {
     this.beam = beam;
     L = beam.Length;
     this.w = w;
 }