コード例 #1
0
            public void Calc_Annulus_Params()
            //=================================
            {
                //....Flow reqd. GPM.
                Double pFlowReqd_gpm = mCurrent_Bearing_Radial_FP.PerformData.FlowReqd;

                //....Calculate AMin:
                Double pUp, pDown;

                pUp   = 231 * pFlowReqd_gpm;
                pDown = 2 * mCount_MainOilSupply * 60 * 12 * 10;

                Double pAMin = 0.0F;

                if (pDown != 0.0F)
                {
                    pAMin = pUp / pDown;
                }

                //....Calculate H:
                Double pH = 0.0F;

                if (mAnnulus.Ratio_Wid_Depth != 0.0F)
                {
                    double pAny = 0.0F;
                    pAny = (pAMin / mAnnulus.Ratio_Wid_Depth);

                    if (pAny != 0.0F)
                    {
                        pH = (Double)Math.Sqrt(pAny);
                    }
                }

                //....Diameter & Length:
                //
                if (pH != 0.0F)
                {
                    mAnnulus.D   = mCurrent_Bearing_Radial_FP.OD() - 2 * pH;
                    mAnnulus.Wid = pH * mAnnulus.Ratio_Wid_Depth;
                }
            }
コード例 #2
0
            //-------------

            #region "Locations:"
            //------------------

            //public Double Calc_Screw_Loc_Center()
            ////=====================================
            //{
            //    //....Commmon for RScrew & LScrew.
            //    //
            //    Double pDFit = mCurrent_Bearing_Radial_FP.OD();
            //    Double pD_CBore = mScrew.Hole.CBore.D;
            //    Double pLoc = 0.5F * (pDFit - pD_CBore) - 0.1;

            //    return modMain.MRound(pLoc, 0.05);
            //}

            // PB 22OCT18. BG, write a new method: Screw_Loc_Center_ULimit (see scanned docu for formula)

            public Double Screw_Loc_Center_ULimit()
            //=====================================
            {
                Double pResult            = 0;
                Double pBearing_DFit      = mCurrent_Bearing_Radial_FP.OD();
                Double pScrew_CBore_D     = mScrew.Hole.CBore.D;
                Double pScrew_CBore_Depth = mScrew.Hole.CBore.Depth;
                Double pScrew_D           = mScrew.D();

                Double pX1 = Math.Pow((pScrew_CBore_Depth + pScrew_CBore_D + 0.030), 2);
                Double pX2 = Math.Pow((0.5 * pBearing_DFit), 2);
                Double pX3 = Math.Sqrt(1 - (pX1 / pX2));

                pResult = 0.5 * (pBearing_DFit * pX3 - pScrew_CBore_D);
                return(pResult);
            }