/// <summary> /// This function assigns auto seismic loading parameters for the NZS 1170 2004 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="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="R">The return period factor, R.</param> /// <param name="Z">The hazard factor, Z.</param> /// <param name="distanceToSeismicSource">Distance to the fault in km, used to calculate the near fault factor.</param> /// <param name="Sp">The structural performance factor, Sp.</param> /// <param name="Mu">The structural ductility factor, u.</param> /// <exception cref="CSiException"></exception> public void SetLoad(string name, eSeismicLoadDirection loadDirection, double eccentricity, eTimePeriodOption periodOption, double userSpecifiedPeriod, bool userSpecifiedHeights, double coordinateTopZ, double coordinateBottomZ, eSiteClass_NZS_1170_2004 siteClass, double R, double Z, double distanceToSeismicSource, double Sp, double Mu) { _callCode = _sapModel.LoadPatterns.AutoSeismic.SetNZS11702004(name, (int)loadDirection, eccentricity, (int)periodOption, userSpecifiedPeriod, userSpecifiedHeights, coordinateTopZ, coordinateBottomZ, (int)siteClass, Z, R, distanceToSeismicSource, Sp, Mu); if (throwCurrentApiException(_callCode)) { throw new CSiException(); } }
public void SetFunction(string name, eSiteClass_NZS_1170_2004 siteClass, double Z, double R, double distanceToFault, double dampingRatio) { }
public void GetFunction(string name, ref eSiteClass_NZS_1170_2004 siteClass, ref double Z, ref double R, ref double distanceToFault, ref double dampingRatio) { }
/// <summary> /// This function defines an NZS 1170 2004 response spectrum function. /// </summary> /// <param name="name">The name of an NZS 1170 2004 response spectrum function. <para /> /// If this is an existing function, that function is modified; otherwise, a new function is added.</param> /// <param name="siteClass">The site class.</param> /// <param name="Z">The hazard factor, Z.</param> /// <param name="R">The return period factor, R.</param> /// <param name="distanceToFault">Distance to the fault in km, used to calculate the near fault factor.</param> /// <param name="dampingRatio">The damping ratio for the function, 0 <= <paramref name="dampingRatio" /> < 1.</param> /// <exception cref="CSiException"></exception> public void SetFunction(string name, eSiteClass_NZS_1170_2004 siteClass, double Z, double R, double distanceToFault, double dampingRatio) { dampingRatio = limitDampingRatio(dampingRatio); _callCode = _sapModel.Func.FuncRS.SetNZS11702004(name, (int)siteClass, Z, R, distanceToFault, dampingRatio); if (throwCurrentApiException(_callCode)) { throw new CSiException(); } }
public void SetLoad(string name, eSeismicLoadDirection loadDirection, double eccentricity, eTimePeriodOption periodOption, double userSpecifiedPeriod, bool userSpecifiedHeights, double coordinateTopZ, double coordinateBottomZ, eSiteClass_NZS_1170_2004 siteClass, double R, double Z, double distanceToSeismicSource, double Sp, double Mu) { }
/// <summary> /// This function retrieves the definition of an NZS 1170 2004 response spectrum function. /// </summary> /// <param name="name">The name of an NZS 1170 2004 response spectrum function.</param> /// <param name="siteClass">The site class.</param> /// <param name="Z">The hazard factor, Z.</param> /// <param name="R">The return period factor, R.</param> /// <param name="distanceToFault">Distance to the fault in km, used to calculate the near fault factor.</param> /// <param name="dampingRatio">The damping ratio for the function, 0 <= <paramref name="dampingRatio" /> < 1.</param> /// <exception cref="CSiException"></exception> public void GetFunction(string name, ref eSiteClass_NZS_1170_2004 siteClass, ref double Z, ref double R, ref double distanceToFault, ref double dampingRatio) { int csiSiteClass = 0; _callCode = _sapModel.Func.FuncRS.GetNZS11702004(name, ref csiSiteClass, ref Z, ref R, ref distanceToFault, ref dampingRatio); if (throwCurrentApiException(_callCode)) { throw new CSiException(); } siteClass = (eSiteClass_NZS_1170_2004)csiSiteClass; }
/// <summary> /// This function retrieves auto seismic loading parameters for the NZS 1170 2004 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="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="R">The return period factor, R.</param> /// <param name="Z">The hazard factor, Z.</param> /// <param name="distanceToSeismicSource">Distance to the fault in km, used to calculate the near fault factor.</param> /// <param name="Sp">The structural performance factor, Sp.</param> /// <param name="Mu">The structural ductility factor, u.</param> /// <exception cref="CSiException"></exception> public void GetLoad(string name, ref eSeismicLoadDirection loadDirection, ref double eccentricity, ref eTimePeriodOption periodOption, ref double userSpecifiedPeriod, ref bool userSpecifiedHeights, ref double coordinateTopZ, ref double coordinateBottomZ, ref eSiteClass_NZS_1170_2004 siteClass, ref double R, ref double Z, ref double distanceToSeismicSource, ref double Sp, ref double Mu) { int csiLoadDirection = 0; int csiPeriodOption = 0; int csiSiteClass = 0; _callCode = _sapModel.LoadPatterns.AutoSeismic.GetNZS11702004(name, ref csiLoadDirection, ref eccentricity, ref csiPeriodOption, ref userSpecifiedPeriod, ref userSpecifiedHeights, ref coordinateTopZ, ref coordinateBottomZ, ref csiSiteClass, ref Z, ref R, ref distanceToSeismicSource, ref Sp, ref Mu); if (throwCurrentApiException(_callCode)) { throw new CSiException(); } loadDirection = (eSeismicLoadDirection)csiLoadDirection; periodOption = (eTimePeriodOption)csiPeriodOption; siteClass = (eSiteClass_NZS_1170_2004)csiSiteClass; }