...
Input Definitions
- origin is a 3,1 matrix with the x,y,z values of the center point of the outlet of the first sedimentation tank
- width~sed~ width sed is the distance between the outlets of the sedimentation tanks or the width of the sedimentation tanks from the center line of the wall on either side of a tank
- lvltank~dim~ lvltank dim is a 3,1 matrix with the x,y,z dimensions of the tank
- Δ x is the distance in the x direction in a top view from the outlet of the first sedimentation tank (or the origin of the first pipe) to the outside wall of the leveling tank
- Δ y is the distance in the y direction in a top view from the outlet of the first sedimentation tank (or the origin of the first pipe) to the outside wall of the leveling tank
- Δ z is the distance in the z direction in a top view from the outlet of the first sedimentation tank (or the origin of the first pipe) to the bottom wall of the platform
- lvltank~thick~ lvltank thick is the thickness of the walls of the leveling tank
- thick~platform~ thick platform is the thickness of the platform
- R1 is the inner radius of the pipes leading to the leveling tank
- R~main~ R main is the inner radius of the effluent pipe
- H~main~ H main is the height of the effluent pipe (or the water level in the leveling tank)
- n is the number of sedimentation tanks
- disp is the displacement of the center of the pipes coming up into the leveling tanks from the inside wall of the tank
...
Step by Step Description
The Sed~eff~ Sed eff program is composed of three scripts. The program will run Sedeff . script1 when n is 3, Sedeff . script2 when n is 4 and Sedeff . script3 when n is 5. Because the most common number of sedimentation tanks is three, the output of Sedeff . script1 will be described below.
Some points and values which will be used several times in the script are defined outside of the script so as to make it cleaner. These variables will be pseudo inputs for Sedeff . script1. They are listed below and will be described in greater detail further down.
- pipe2 . origin, pipe3 . origin, pipe4 . origin, pipe5 . origin, pipe6 . origin, elbow1 . origin, pipe7 . origin, tank . origin, main . origin, origin, lvltank . dim, Δx, Δy, Δz, tank . thick, thick . platform, width . sed, R1, R . main, H . main, n, disp
Pseudo Inputs
pipe3origin
pipe4origin
pipe5origin
pipe6origin
elbow1origin
pipe7origin
tankorigin
mainorigin
origin
lvltankdim
Δx
Δy
Δz
thicktank
thickplatform
widthsed
R1
Rmain
Hmain
n - number of sedimentation tanks to be drawn by the program.
disp
layer1 - Creates a 'lvlpipe' layer for all of the pipes (except the "main" pipe) in the program
Pipe1 - Creates a pipe with a radius of R1 and an origin at the variable "origin". See Pipe Help for details on the pipe function.
Pipe1 Length = Δx + thick tank + offset - ElbowRadius
Notes:
- Pipe1 Length is not a variable, the values are inputed directly into the pipe function
- offset is a function which divides the x dimension of the level tank by the number of sedimentation tanks, so as to evenly space the inlet pipes to the tank.
- ElbowRadius is the radius of curvature of an elbow. In the script it is given as a function of the inner radius. This function is defined in the Pipe Database program
Rotate1 - Pipe 1 is rotated using the Rotate3d function so that from a top view it is oriented in the west to east direction
p1:
- x: origin0 + R1
- y: origin1
- z: origin2
p2: origin
axis: "y"
ϕ: -90
Pipe2 - Creates a pipe with a radius of R1 and an origin at the variable "pipe2origin".
pipe2 origin =
- x: x,origin - Pipe1 Length
- y: y,origin + ElbowRadius
- z: z,origin
Pipe2 Length = Δy - 2ElbowRadius + thick tank + disp
Rotate2 - Pipe 2 is rotated using the Rotate3d function so it is oriented north to south in top view
p1:
- x: pipe2origin0 + R1
- y: pipe2origin1
- z: pipe2origin2
p2: pipe2origin
axis: "x"
ϕ: -90
Pipe3 -Creates a pipe with a radius of R1 and an origin at the variable "pipe3origin".
Pipe3 Length = Δx + thicktank + 2offset(lvltankdim0,n) - elbowRadius(2R1)
Rotate3 Pipe 3 is rotated using the Rotate3d function so that from a top view it is oriented in the west to east direction
p1:
- x: pipe3origin0 + R1
- y: pipe3origin1
- z: pipe3origin2
p2: pipe3origin
axis: "y"
ϕ: -90
Pipe4 -Creates a pipe with a radius of R1 and an origin at the variable "pipe4origin".
Pipe4 Length = Δy + widthsed - 2ElbowRadius(2R1) + thicktank + disp
Rotate4 Pipe 4 is rotated using the Rotate3d function so that from a top view it is oriented in the west to east direction.
p1:
- x: pipe4origin0 + R1
- y: pipe4origin1
- z: pipe4origin2
p2: pipe4origin
axis: "y"
ϕ: -90
Pipe5 -Creates a pipe with a radius of R1 and an origin at the variable "pipe5origin".
Pipe5 length: Δx + thicktank + 3offset(lvltankdim0,n) - ElbowRadius(2R1)
Rotate5 Pipe 5 is rotated using the Rotate3d function so that from a top view it is oriented in the west to east direction.
P1:
- x: pipe5origin0 + R1
- y: pipe5origin1
- z: pipe5origin2
p2: pipe5origin
axis: "y"
ϕ: -90
Pipe6 -Creates a pipe with a radius of R1 and an origin at the variable "pipe6origin".
Pipe6 length: Δy + 2widethsed - 2ElbowRadius(2R1) + thicktank + disp
Rotate6 - Pipe 6 is rotated using the Rotate3d function so it is oriented north to south in top view
Pipe7 -Creates a pipe with a radius of R1 and an origin at the variable "pipe7origin".
Pipe7 length: Δz - ElbowRadius(2R1) + thickplatform
zoomwin1 - Zoomwincreates a close-up window by using two points to specify the window size the object is to be viewed in.
p1: tankorigin
p2:
- x: tankorigin0 - lvltankdim0
- y: tankorigin1 + lvltankdim1
- z: tankorigin2
Copy5 - CopyCcreates a copy of the selected objects based on four chosen points.
p1:
- x: pipe7origin0 + R1
- y: pipe7origin1
- z: pipe7origin2
p2: pipe7origin
p3:
- x: -offset(lvltankdim0,n)
- y: 0
- z: 0
p4:
- x: -2offset(lvltankdim0,n)
- y: 0
- z: 0
Pipe8 -Creates a pipe with a radius of Rmain and an origin at the variable "mainorigin".
Pipe8 length: Hmain + thickplatform + Δz
layer2 - Layerset select the layer "0"
layer3 - Layerfreeze is used to freeze the layer "lvlpipe."
layer4 - Layernew is used to create a new, green layer "lvlelbow."
Elbow1 - Calls the Elbow Program program to build an elbow with the origin elbow1origin and an inner radius, R1.
Rotate7 - Pipe 7 is rotated using the Rotate3d function so...
p1:
- x: elbow1origin0
- y: elbow1origin1 + ElbowRadius(2R1)
- z: elbow1origin2
p2:
- x: elbow1origin0
- y: elbow1origin1 + ElbowRadius(2R1)
- z: elbow1origin2
axis: "z"
ϕ: -180
zoomwin2
Copy1 - CopyBcreates a copy of the selected objects based on three chosen points.
p1: pipe2origin
p2: pipe2origin
p3: pipe4origin
Copy2 - CopyBcreates a copy of the selected objects based on three chosen points.
p1: pipe2origin
p2: pipe2origin
p3: pipe6origin
Copy3 - CopyBcreates a copy of the selected objects based on three chosen points.
p1: pipe2origin
p2: pipe2origin
p3: pipe11
Rotate8 - Pipe 2 is rotated using the Rotate3d function so it is oriented north to south in top view
p1:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp)
- z: pipe2origin2
p2:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp)
- z: pipe2origin2
axis: "x"
ϕ: \180
Rotate9 - Pipe 2 is rotated using the Rotate3d function so that from a top view it is oriented in the west to east direction.
p1:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp
- z: pipe2origin2
p2:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp
- z: pipe2origin2
axis: "y"
ϕ: -90
Copy4 CopyCcreates a copy of the selected objects based on four chosen points.
p1:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp
- z: pipe2origin2
p2:
- x: pipe2origin0
- y: pipe2origin1 + (Δy - 2ElbowRadius(2R1) + thicktank + disp
- z: pipe2origin2
p3:
- x: -offset(lvltankdim0,n)
- y: 0
- z: 0
p4:
- x: -2offset(lvltankdim0,n)
- y: 0
- z: 0
layer5 - Layerset select the layer "0"
layer6 - Layerfreeze freezes the layer "lvlelbow."
layer7 - Layernew creates a new grey layer "lvltank."
Tank - Calls the Tank Program program to build a tank with the origin tankorigin, tank dimensions tankdim and thickness thicktank.
tankorigin - a 3 by 1 matrix with x,y,z positions corresponding to the point where the tank will be drawn
tankdim - a 3 by 1 matrix with x,y,z positions corresponding to the length, width and height dimensions of the tank
- x: tank.dim0 = length
- y: tank.dim1 = width
- z: tank.dim2 = height
thick - the thickness of the wall of the tank
layer8 - Layerthaw unfreezes the layer "lvlpipe."
layer9 - Layerthaw unfreezes the layer "lvlelbow."
layer10 - Layerset select the layer "lvlpipe."
cylinder - CylinderCcreates a cylinder based on a point, radius and length.
p1: mainorigin
R1: Rmain
L: Hmain + thickplatform + Δz
subtract -SubtractD subtracts based on two points.
p1: tankorigin
p2:
- x: mainorigin0 + Rmain
- y: mainorigin1
- z: mainorigin2
one
two
three
return