General Program Information

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 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 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 is the thickness of the walls of the leveling tank
  • thick platform is the thickness of the platform
  • R1 is the inner radius of the pipes leading to the leveling tank
  • R main is the inner radius of the effluent pipe
  • 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

Notes

  • All coordinates correspond to a top view.
  • The floor of the leveling tank is at the same elevation as the top of the platform

Pipe Labeling

Step by Step Description

The 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 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

  • No labels