public void Analyze_Breyer6thEd_16_11_Succeeds() { var sB = new StringBuilder(); var level = new BuildingLevel("Level 2", 100); var lateralWalls = new List <AnalyticalWallLateral>(); lateralWalls.Add(new AnalyticalWallLateral("Wall A", new Point2D(0, 0), new Point2D(0, 240), level)); lateralWalls.Add(new AnalyticalWallLateral("Wall B", new Point2D(360, 0), new Point2D(360, 240), level)); lateralWalls.Add(new AnalyticalWallLateral("Wall C-1", new Point2D(0, 0), new Point2D(60, 0), level)); lateralWalls.Add(new AnalyticalWallLateral("Wall C-2", new Point2D(300, 0), new Point2D(360, 0), level)); lateralWalls.Add(new AnalyticalWallLateral("Wall D", new Point2D(0, 240), new Point2D(360, 240), level)); var deck = new OneWayDeck { Level = level, Boundary = new Polygon2D(new List <Point2D> { new Point2D(0, 0), new Point2D(0, 240), new Point2D(360, 240), new Point2D(360, 0) }), WeightPerArea = new Stress(40, StressUnit.psf) }; var lateralLevel = new BuildingLevelLateral2(deck); var forces = new List <LateralLevelForce> { new LateralLevelForce { DirectX = new Force(-6000, ForceUnit.Pound), LoadPattern = LoadPattern.Seismic_West, CenterOfForce = new Point2D(180, 120) }, new LateralLevelForce { AccidentalT = new Moment(6, MomentUnit.KipFoot), LoadPattern = LoadPattern.SeismicTorsion_XLoading, CenterOfForce = new Point2D(180, 120) } }; var loadCases = new List <LoadCase> { CommonResources.ASCE7LoadCases["-X - TX"], }; var analysis = new RigidAnalysis(lateralLevel, lateralWalls, forces, loadCases, 1); analysis.Analyze(); var table = RigidAnalysisTabularReport.GenerateShearWallForceStiffnessTable(analysis); sB.Append(table.PrintToMarkdown()); }
public BuildingLevelLateral2(OneWayDeck deck) { Level = deck.Level; Boundary = deck.Boundary; CenterOfMass = deck.Boundary.GetCentroid(); SeismicWeight = deck.SeismicWeight; var bounds = Boundary.GetMinMaxBounds(); LengthX = new Length(bounds.MaxX - bounds.MinX, LengthUnit.Inch); LengthY = new Length(bounds.MaxY - bounds.MinY, LengthUnit.Inch); }