Esempio n. 1
0
 public void SetLoad(string name,
                     eSeismicLoadDirection loadDirection,
                     double eccentricity,
                     eTimePeriodOption periodOption,
                     eCtType_IBC_2006 CtType,
                     double userSpecifiedPeriod,
                     bool userSpecifiedHeights,
                     double coordinateTopZ,
                     double coordinateBottomZ,
                     eSiteClass_IBC_2006 siteClass,
                     double omega,
                     double R,
                     double I,
                     double Ss,
                     double S1,
                     double Fa,
                     double Fv,
                     double Cd,
                     eSeismicCoefficient_IBC_2006 seismicCoefficientSource,
                     double latitude,
                     double longitude,
                     string zipCode,
                     double TL)
 {
 }
Esempio n. 2
0
        /// <summary>
        /// This function retrieves the definition of an IBC2006 response spectrum function.
        /// </summary>
        /// <param name="name">The name of an IBC2006 response spectrum function.</param>
        /// <param name="seismicCoefficientOption">The seismic coefficient option.</param>
        /// <param name="latitude">The latitude for which the seismic coefficients are obtained. <para />
        /// These items are used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" />.</param>
        /// <param name="longitude">The longitude for which the seismic coefficients are obtained. <para />
        /// These items are used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" />.</param>
        /// <param name="zipCode">The zip code for which the seismic coefficients are obtained. <para />
        /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
        /// <param name="Ss">The design spectral acceleration at short periods, Ss.<para />
        /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1UserDefined" />.</param>
        /// <param name="S1">The design spectral acceleration at a one second period, S1.<para />
        /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1UserDefined" />.</param>
        /// <param name="TL">The long-period transition period. [s].</param>
        /// <param name="siteClass">The site class.</param>
        /// <param name="Fa">The site coefficients Fa. <para />
        /// These items are used only when <paramref name="siteClass" /> = <see cref="eSiteClass_IBC_2006.F" />.</param>
        /// <param name="Fv">The site coefficients Fv.  <para />
        /// These items are used only when <paramref name="siteClass" /> = <see cref="eSiteClass_IBC_2006.F" />.</param>
        /// <param name="dampingRatio">The damping ratio for the function, 0 &lt;= <paramref name="dampingRatio" /> &lt; 1.</param>
        /// <exception cref="CSiException"></exception>
        public void GetFunction(string name,
                                ref eSeismicCoefficient_IBC_2006 seismicCoefficientOption,
                                ref double latitude,
                                ref double longitude,
                                ref string zipCode,
                                ref double Ss,
                                ref double S1,
                                ref double TL,
                                ref eSiteClass_IBC_2006 siteClass,
                                ref double Fa,
                                ref double Fv,
                                ref double dampingRatio)
        {
            int csiSeismicCoefficientOption = 0;
            int csiSiteClass = 0;

            _callCode = _sapModel.Func.FuncRS.GetIBC2006(name, ref csiSeismicCoefficientOption, ref latitude, ref longitude, ref zipCode, ref Ss, ref S1, ref TL, ref csiSiteClass, ref Fa, ref Fv, ref dampingRatio);
            if (throwCurrentApiException(_callCode))
            {
                throw new CSiException();
            }

            seismicCoefficientOption = (eSeismicCoefficient_IBC_2006)csiSeismicCoefficientOption;
            siteClass = (eSiteClass_IBC_2006)csiSiteClass;
        }
Esempio n. 3
0
 /// <summary>
 /// Assigns auto seismic loading parameters for the 2009 IBC code.
 /// </summary>
 /// <param name="name">The name of an existing Quake-type load pattern with a corresponding auto seismic load assignment.</param>
 /// <param name="loadDirection">The seismic load direction.</param>
 /// <param name="eccentricity">The eccentricity ratio that applies to all diaphragms.</param>
 /// <param name="periodOption">The time period option.</param>
 /// <param name="CtType">The values of Ct and x.
 /// This only applies when <paramnamef name="periodOption" /> = <see cref="eTimePeriodOption.Approximate" /> or <see cref="eTimePeriodOption.ProgramCalculated" />.</param>
 /// <param name="userSpecifiedPeriod">The user specified time period. [s]
 /// This only applies when <paramnamef name="periodOption" /> = <see cref="eTimePeriodOption.UserDefined" /></param>
 /// <param name="userSpecifiedHeights">True: Top and bottom elevations of the seismic load are user specified.
 /// Else, the program determines the elevations.</param>
 /// <param name="coordinateTopZ">Global Z-coordinate at the highest level where auto seismic loads are applied. [L].
 /// This only applies when <paramnamef name="userSpecifiedHeights" /> = True.</param>
 /// <param name="coordinateBottomZ">Global Z-coordinate at the lowest level where auto seismic loads are applied. [L].
 /// This only applies when <paramnamef name="userSpecifiedHeights" /> = True.</param>
 /// <param name="siteClass">The site class.</param>
 /// <param name="omega">The system overstrength factor.</param>
 /// <param name="R">The response modification factor.</param>
 /// <param name="I">The importance factor.</param>
 /// <param name="Ss">The response acceleration for short periods, (g).</param>
 /// <param name="S1">The response acceleration for a one second period, (g).</param>
 /// <param name="Fa">The site coefficient Fa.</param>
 /// <param name="Fv">The site coefficient Fv.</param>
 /// <param name="Cd">The deflection amplification factor.</param>
 /// <param name="seismicCoefficientSource">The seismic coefficient source.</param>
 /// <param name="latitude">The latitude for which the seismic coefficients are obtained.
 /// This only applies when <paramnamef name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" /> or <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
 /// <param name="longitude">The longitude for which the seismic coefficients are obtained.
 /// This only applies when <paramnamef name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" /> or <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
 /// <param name="zipCode">The zip code for which the seismic coefficients are obtained.
 /// This only applies when <paramnamef name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
 /// <param name="TL">The long-period transition period. [s].</param>
 /// <exception cref="CSiException"><see cref="CSiApiBase.API_DEFAULT_ERROR_CODE" /></exception>
 public void SetLoad(string name,
                     eSeismicLoadDirection loadDirection,
                     double eccentricity,
                     eTimePeriodOption periodOption,
                     eCtType_IBC_2006 CtType,
                     double userSpecifiedPeriod,
                     bool userSpecifiedHeights,
                     double coordinateTopZ,
                     double coordinateBottomZ,
                     eSiteClass_IBC_2006 siteClass,
                     double omega,
                     double R,
                     double I,
                     double Ss,
                     double S1,
                     double Fa,
                     double Fv,
                     double Cd,
                     eSeismicCoefficient_IBC_2006 seismicCoefficientSource,
                     double latitude,
                     double longitude,
                     string zipCode,
                     double TL)
 {
     _callCode = _sapModel.LoadPatterns.AutoSeismic.SetIBC2009(name,
                                                               (int)loadDirection,
                                                               eccentricity,
                                                               (int)periodOption,
                                                               (int)CtType,
                                                               userSpecifiedPeriod,
                                                               userSpecifiedHeights,
                                                               coordinateTopZ,
                                                               coordinateBottomZ,
                                                               R,
                                                               omega,
                                                               Cd,
                                                               I,
                                                               (int)seismicCoefficientSource,
                                                               latitude,
                                                               longitude,
                                                               zipCode,
                                                               Ss,
                                                               S1,
                                                               TL,
                                                               (int)siteClass,
                                                               Fa,
                                                               Fv);
     if (throwCurrentApiException(_callCode))
     {
         throw new CSiException(API_DEFAULT_ERROR_CODE);
     }
 }
Esempio n. 4
0
 public void SetFunction(string name,
                         eSeismicCoefficient_IBC_2006 seismicCoefficientOption,
                         double latitude,
                         double longitude,
                         string zipCode,
                         double Ss,
                         double S1,
                         double TL,
                         eSiteClass_IBC_2006 siteClass,
                         double Fa,
                         double Fv,
                         double dampingRatio)
 {
 }
Esempio n. 5
0
 public void GetFunction(string name,
                         ref eSeismicCoefficient_IBC_2006 seismicCoefficientOption,
                         ref double latitude,
                         ref double longitude,
                         ref string zipCode,
                         ref double Ss,
                         ref double S1,
                         ref double TL,
                         ref eSiteClass_IBC_2006 siteClass,
                         ref double Fa,
                         ref double Fv,
                         ref double dampingRatio)
 {
 }
Esempio n. 6
0
 /// <summary>
 /// This function defines an IBC2006 response spectrum function.
 /// </summary>
 /// <param name="name">The name of an IBC2006 response spectrum function. <para />
 /// If this is an existing function, that function is modified; otherwise, a new function is added.</param>
 /// <param name="seismicCoefficientOption">The seismic coefficient option.</param>
 /// <param name="latitude">The latitude for which the seismic coefficients are obtained. <para />
 /// These items are used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" />.</param>
 /// <param name="longitude">The longitude for which the seismic coefficients are obtained. <para />
 /// These items are used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" />.</param>
 /// <param name="zipCode">The zip code for which the seismic coefficients are obtained. <para />
 /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
 /// <param name="Ss">The design spectral acceleration at short periods, Sds.<para />
 /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1UserDefined" />.</param>
 /// <param name="S1">The design spectral acceleration at a one second period, Sd1.<para />
 /// This item is used only when <paramref name="seismicCoefficientOption" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1UserDefined" />.</param>
 /// <param name="TL">The long-period transition period. [s].</param>
 /// <param name="siteClass">The site class.</param>
 /// <param name="Fa">The site coefficients Fa. <para />
 /// These items are used only when <paramref name="siteClass" /> = <see cref="eSiteClass_IBC_2006.F" />.</param>
 /// <param name="Fv">The site coefficients Fv.  <para />
 /// These items are used only when <paramref name="siteClass" /> = <see cref="eSiteClass_IBC_2006.F" />.</param>
 /// <param name="dampingRatio">The damping ratio for the function, 0 &lt;= <paramref name="dampingRatio" /> &lt; 1.</param>
 /// <exception cref="CSiException"></exception>
 public void SetFunction(string name,
                         eSeismicCoefficient_IBC_2006 seismicCoefficientOption,
                         double latitude,
                         double longitude,
                         string zipCode,
                         double Ss,
                         double S1,
                         double TL,
                         eSiteClass_IBC_2006 siteClass,
                         double Fa,
                         double Fv,
                         double dampingRatio)
 {
     dampingRatio = limitDampingRatio(dampingRatio);
     _callCode    = _sapModel.Func.FuncRS.SetIBC2006(name, (int)seismicCoefficientOption, latitude, longitude, zipCode, Ss, S1, TL, (int)siteClass, Fa, Fv, dampingRatio);
     if (throwCurrentApiException(_callCode))
     {
         throw new CSiException();
     }
 }
Esempio n. 7
0
        /// <summary>
        /// Returns auto seismic loading parameters for the 2009 IBC code.
        /// </summary>
        /// <param name="name">The name of an existing Quake-type load pattern with a corresponding auto seismic load assignment.</param>
        /// <param name="loadDirection">The seismic load direction.</param>
        /// <param name="eccentricity">The eccentricity ratio that applies to all diaphragms.</param>
        /// <param name="periodOption">The time period option.</param>
        /// <param name="CtType">The values of Ct and x.
        /// This only applies when <paramref name="periodOption" /> = <see cref="eTimePeriodOption.Approximate" /> or <see cref="eTimePeriodOption.ProgramCalculated" />.</param>
        /// <param name="userSpecifiedPeriod">The user specified time period. [s]
        /// This only applies when <paramref name="periodOption" /> = <see cref="eTimePeriodOption.UserDefined" /></param>
        /// <param name="userSpecifiedHeights">True: Top and bottom elevations of the seismic load are user specified.
        /// Else, the program determines the elevations.</param>
        /// <param name="coordinateTopZ">Global Z-coordinate at the highest level where auto seismic loads are applied. [L].
        /// This only applies when <paramref name="userSpecifiedHeights" /> = True.</param>
        /// <param name="coordinateBottomZ">Global Z-coordinate at the lowest level where auto seismic loads are applied. [L].
        /// This only applies when <paramref name="userSpecifiedHeights" /> = True.</param>
        /// <param name="siteClass">The site class.</param>
        /// <param name="omega">The system overstrength factor.</param>
        /// <param name="R">The response modification factor.</param>
        /// <param name="I">The importance factor.</param>
        /// <param name="Ss">The response acceleration for short periods, (g).</param>
        /// <param name="S1">The response acceleration for a one second period, (g).</param>
        /// <param name="Fa">The site coefficient Fa.</param>
        /// <param name="Fv">The site coefficient Fv.</param>
        /// <param name="Cd">The deflection amplification factor.</param>
        /// <param name="seismicCoefficientSource">The seismic coefficient source.</param>
        /// <param name="latitude">The latitude for which the seismic coefficients are obtained.
        /// This only applies when <paramref name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" /> or <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
        /// <param name="longitude">The longitude for which the seismic coefficients are obtained.
        /// This only applies when <paramref name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSLatLong" /> or <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
        /// <param name="zipCode">The zip code for which the seismic coefficients are obtained.
        /// This only applies when <paramref name="seismicCoefficientSource" /> = <see cref="eSeismicCoefficient_IBC_2006.SsAndS1FromUSGSZipCode" />.</param>
        /// <param name="TL">The long-period transition period. [s].</param>
        /// <exception cref="CSiException"><see cref="CSiApiBase.API_DEFAULT_ERROR_CODE" /></exception>
        public void GetLoad(string name,
                            ref eSeismicLoadDirection loadDirection,
                            ref double eccentricity,
                            ref eTimePeriodOption periodOption,
                            ref eCtType_IBC_2006 CtType,
                            ref double userSpecifiedPeriod,
                            ref bool userSpecifiedHeights,
                            ref double coordinateTopZ,
                            ref double coordinateBottomZ,
                            ref eSiteClass_IBC_2006 siteClass,
                            ref double omega,
                            ref double R,
                            ref double I,
                            ref double Ss,
                            ref double S1,
                            ref double Fa,
                            ref double Fv,
                            ref double Cd,
                            ref eSeismicCoefficient_IBC_2006 seismicCoefficientSource,
                            ref double latitude,
                            ref double longitude,
                            ref string zipCode,
                            ref double TL)
        {
            int csiLoadDirection            = 0;
            int csiPeriodOption             = 0;
            int csiSiteClass                = 0;
            int csiSeismicCoefficientSource = 0;
            int csiCtType = 0;

            _callCode = _sapModel.LoadPatterns.AutoSeismic.GetIBC2009(name,
                                                                      ref csiLoadDirection,
                                                                      ref eccentricity,
                                                                      ref csiPeriodOption,
                                                                      ref csiCtType,
                                                                      ref userSpecifiedPeriod,
                                                                      ref userSpecifiedHeights,
                                                                      ref coordinateTopZ,
                                                                      ref coordinateBottomZ,
                                                                      ref R,
                                                                      ref omega,
                                                                      ref Cd,
                                                                      ref I,
                                                                      ref csiSeismicCoefficientSource,
                                                                      ref latitude,
                                                                      ref longitude,
                                                                      ref zipCode,
                                                                      ref Ss,
                                                                      ref S1,
                                                                      ref TL,
                                                                      ref csiSiteClass,
                                                                      ref Fa,
                                                                      ref Fv);
            if (throwCurrentApiException(_callCode))
            {
                throw new CSiException(API_DEFAULT_ERROR_CODE);
            }

            loadDirection            = (eSeismicLoadDirection)csiLoadDirection;
            periodOption             = (eTimePeriodOption)csiPeriodOption;
            siteClass                = (eSiteClass_IBC_2006)csiSiteClass;
            seismicCoefficientSource = (eSeismicCoefficient_IBC_2006)csiSeismicCoefficientSource;
            CtType = (eCtType_IBC_2006)csiCtType;
        }