示例#1
0
 void GetEIF____00_24_UV(CMLoad_24 Load, float fL, out float fA, out float fB, out float fMa, out float fMb)
 {
     // Temporary
     fA = 0.0f;
     fB = 0.0f;
     fMa = 0.0f;
     fMb = 0.0f;
 }
示例#2
0
        void GetEIF_0__0__24_UV(CMLoad_24 Load, float fL, out float fA, out float fB, out float fMa, out float fMb)
        {
            // Partly in general position on member
            // Fa - distance from start
            // Fs - length of uniform load

            float fb = fL - Load.Fa;
            fA = (Load.Fq * Load.Fs / (8f * MathF.Pow3(fL))) * (4f * MathF.Pow2(fb) * (2f * fL + Load.Fa) + Load.Fa * MathF.Pow2(Load.Fs));
            fB = (Load.Fq * Load.Fs * Load.Fa / (8f * MathF.Pow3(fL))) * (8f * MathF.Pow2(fL) + 4f * fb * (fL + Load.Fa) - MathF.Pow2(Load.Fs));
            fMa = fMb = 0f;

            float fx = 0.0f, fV_x;

            if (fx < Load.Fa)
                fV_x = fA;
            else if (fx < (Load.Fa + Load.Fs))
                fV_x = fA - Load.Fq * (fx - Load.Fa);
            else
                fV_x = -fB;

            //float
        }
示例#3
0
 void GetEIF_0__00_24_UV(CMLoad_24 Load, float fL, out float fA, out float fB, out float fMa, out float fMb)
 {
     float fb = fL - Load.Fa;
     fA = (Load.Fq * Load.Fs / (8f*MathF.Pow3(fL))) * (4f * MathF.Pow2(fb) * (2f*fL+Load.Fa) + Load.Fa * MathF.Pow2(Load.Fs));
     fB = (Load.Fq * Load.Fs * Load.Fa / (8f * MathF.Pow3(fL))) * (8f * MathF.Pow2(fL) + 4f * fb * (fL + Load.Fa) - MathF.Pow2(Load.Fs));
     fMa = 0f;
     fMb = (Load.Fq * Load.Fs * Load.Fa / (8f * MathF.Pow2(fL))) * (4f * fb * (fL + Load.Fa) - MathF.Pow2(Load.Fs));
 }
示例#4
0
 void GetEIF_00_00_24_UV(CMLoad_24 Load, float fL, out float fA, out float fB, out float fMa, out float fMb)
 {
     fA = ((Load.Fq * Load.Fs) / (4f * (float)Math.Pow(fL, 3))) * (4f * ((float)Math.Pow(fL - Load.Fa, 2) * (3f * Load.Fa + (fL - Load.Fa)) + (float)Math.Pow(Load.Fs, 2) * (Load.Fa - (fL - Load.Fa))));
     fB = ((Load.Fq * Load.Fs) / (4f * (float)Math.Pow(fL, 3))) * (4f * (float)Math.Pow(Load.Fa, 2) * (Load.Fa + 3f * (fL - Load.Fa)) + (float)Math.Pow(Load.Fs, 2) * ((fL - Load.Fa) - Load.Fa));
     fMa = -(Load.Fq * Load.Fs / (12f * fL * fL)) * (12f * Load.Fa * (float)Math.Pow(fL - Load.Fa, 2) + (float)Math.Pow(Load.Fs, 2) * (Load.Fa - 2 * (fL - Load.Fa)));
     fMb = (Load.Fq * Load.Fs / (12f * fL * fL)) * (12f * (float)Math.Pow(Load.Fa, 2) * (fL - Load.Fa) + (float)Math.Pow(Load.Fs, 2) * ((fL - Load.Fa) - 2 * Load.Fa));
 }
示例#5
0
 void GetMLoadPart_24(CMLoad_24 Load, CE_1D_BASE Member, FEM_CALC_BASE.Enums.EElemSuppType2D eMType, out float fA, out float fB, out float fMa, out float fMb)
 {
     switch (eMType)
     {
         case Enums.EElemSuppType2D.eEl_00_00: // Both Side restrained
             {
                 GetEIF_00_00_24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         case Enums.EElemSuppType2D.eEl_00_0_:
             {
                 GetEIF_00_0__24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         case Enums.EElemSuppType2D.eEl_0__00:
             {
                 GetEIF_0__00_24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         case Enums.EElemSuppType2D.eEl_0__0_:
             {
                 GetEIF_0__0__24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         case Enums.EElemSuppType2D.eEl_00___:
             {
                 GetEIF_00____24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         case Enums.EElemSuppType2D.eEl____00:
             {
                 GetEIF____00_24_UV(Load, Member.FLength, out fA, out fB, out fMa, out fMb);
                 return;
             }
         default:
             {
                 // Exception
                 fA = fB = fMa = fMb = 0.0f;
                 return;
             }
     }
 }
示例#6
0
 void GetMLoadPart_24(CMLoad_24 Load, CE_1D_BASE Member, FEM_CALC_BASE.Enums.EElemSuppType2D eMType, out float fA, out float fB)
 {
     // Temporary
     fA = fB = 0.0f;
 }