IES VisualFoundation User's Guide
Example: Model & Load
Model & Load
Copy Code
//Builds a slab and grade beam system supported by piles that is
//loaded by four column piers, by a uniform slab load, and 
//by line loads on the perimeter grade beams. 

//Clear project & set units
DeleteAll();
SetUnits("USA (Mixed)");

//Project settings
SetMeshMedium();
SetMaterial("Concrete (F'c = 3.5 ksi)");
SetBearingPressure(2000);

//Project parameters to define the size of the square slab (a)
//and the extent of the grade beams (b) 
var a = 25; 
var b = 0.5*a-2;

//Add slabs
var s1 = AddRectangleSlab(0, 0, a, a);
Thickness(s1, 12);
SingleMat_Specify(s1, true, 5, "#6", 12, "#6", 12);

//Define locations and store as variables which are used to define
//piers and grade beams so that they perfectly align  
var lP1 = new Location(-b, b);
var lP2 = new Location(0, b);
var lP3 = new Location(b, b);
var lP4 = new Location(-b, 0);
var lP5 = new Location(0, 0);
var lP6 = new Location(b, 0);
var lP7 = new Location(-b, -b);
var lP8 = new Location(0, -b);
var lP9 = new Location(b, -b);

//Add piles 
AddPile(null, lP1, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP2, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP3, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP4, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP5, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP6, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP7, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP8, 8, "HP8X36", 0, "ASTM A992 Grade 50");
AddPile(null, lP9, 8, "HP8X36", 0, "ASTM A992 Grade 50");

//Add grade beams
AddBeam("GBX1", lP1, lP3, 12.0, 10.0, true);
AddBeam("GBX2", lP4, lP6, 16.0, 10.0, true);
AddBeam("GBX3", lP7, lP9, 12.0, 10.0, true);
AddBeam("GBY1", lP1, lP7, 12.0, 10.0, true);
AddBeam("GBY2", lP2, lP8, 16.0, 10.0, true);
AddBeam("GBY3", lP3, lP9, 12.0, 10.0, true);

//Add piers
var c1 = AddPier(-0.5*b, 0);
var c2 = AddPier(0.5*b, 0);
var c3 = AddPier(0, 0.5*b);
var c4 = AddPier(0, -0.5*b);
SquarePierSize(c1, 9);
SquarePierSize(c2, 9);
SquarePierSize(c3, 9);
SquarePierSize(c4, 9);

//Add slab loads
LoadSlab("D", s1, -25, 0, 0);

//Add perimeter grade beam loads
LoadLine("D", "GBX1", 0, 0, -10, 0, 0);
LoadLine("D", "GBX3", 0, 0, -10, 0, 0);
LoadLine("D", "GBY1", 0, 0, -10, 0, 0);
LoadLine("D", "GBY3", 0, 0, -10, 0, 0);
LoadLine("W+X", "GBY1", 0, 0, 5, 0, 0);
LoadLine("W+X", "GBY3", 0, 0, -5, 0, 0);
LoadLine("W+X", "GBX1", 0, 0, 0, 0, 50);
LoadLine("W+X", "GBX3", 0, 0, 0, 0, 50);

//Add pier loads
LoadPier("D", c1, 0, 0, -5, 0, 0);
LoadPier("D", c2, 0, 0, -5, 0, 0);
LoadPier("D", c3, 0, 0, -5, 0, 0);
LoadPier("D", c4, 0, 0, -5, 0, 0);
LoadPier("W+X", c1, 0, 0, 15, 0, 0);
LoadPier("W+X", c2, 0, 0, -15, 0, 0);

//Set view
Zoom(s1)