Professional Documents
Culture Documents
Our web site brings you fast, convenient, up-to-the-minute information about Intergraph’s
products, services, and direction. Our web address is: http://www.intergraph.com.
For the lasest Support Services information, use a World Wide Web browser to connect to
http://www.intergraph.com/ppo/services/support.asp.
If you are outside of the United States, please call your local Intergraph office. The most up-
to-date list of international offices and distributors is available on the web at
http://www.intergraph.com.
The following numbers are only valid in the United States unless otherwise indicated. If you
are outside the United States, please call your local Intergraph office.
Bold Indicates a command name, parameter name, or dialog box title. Command
paths are shown using an arrow between command names. For example,
Normal Typewriter
Indicates an actual file or directory name. For example,
Warning — Critical information that could cause the loss of data if not followed.
Need a hint — used with activities and labs, provides a tip or hint for doing the
exercises.
The following list outlines the abbreviations this document uses for keyboard keys and
describes how to use them in combination. You can make some menu selections through the
use of keyboard accelerators, which map menu selections to key combinations.
Select the file original.dat from the list box, then click Delete to
remove it from the directory.
Drag To press and hold the data button (<D>) while moving the mouse or
hand-held cursor.
Key in To type in data and press ENTER to enter the data and execute the
default action.
Eden is a high-level symbol definition language modeled on the FORTRAN programming language. The Eden
language syntax is not case sensitive, except for module names, which are upper case. You can write code with
whatever case conventions make it easiest for you to read.
Eden allows you to design your own symbols for piping, instrumentation, specialty items, and equipment.
While you do not need a programming background to write Eden programs, any programming experience is
highly recommended. You also need to be familiar with an ASCII text editor, such as vi, emacs, or Notepad.
Most of the symbol definition functions are built into Eden’s command structure. This high-level command
structure makes it easier to share code among several symbol definitions. For example, when designing a gate
valve, the symbol definitions:
identify four specifically unique gate valves; however, each of these valves refer to the same
Primary physical data module (V1_AMS), which defines the specific dimensions and physical properties
of a gate valves.
Generic physical data module (VALVE_2_AMS), which defines flange thickness, gasket separation, and
outside separation.
By sharing these modules, you will not fill up valuable disk space with redundant data, which can also increase
valuable processing time.
Eden is flexible enough to allow you to design codes specific to your company’s needs, yet offers predefined
subroutines, called primitives, which carry out functions often repeated within symbol definitions.
________________
For example, the following primitive draws a cone with a length of X units, a diameter at the active point (first
end) of Y units, and a diameter at the opposite end of Z units.
Physical Data (Dimensions) Library — The delivered file ˜\rdusrdb\us_pcdim.l contains American
dimension data for components.
Piping Job Specification Table Library — The delivered file ˜\rdusrdb\us_pjstb.l contains specification
tables referenced in the Piping Job Specification. See the Piping Job Specification section in the
Reference Data Manager Reference Guide for more information.
Refer to Reference Data Overview section in the Reference Data Manager Reference Guide for more
information.
When you select a component for placement in the model, the system
Uses the active parameters (such as piping materials class and nominal diameter) to search the Piping Job
Specification (PJS) for the selected item name. If the selected item is found in the PJS database, the
system reads the PJS for the parameters required to place the component. Included in this information is
the model code (or specialty item number) for the selected component and the names of the spec tables
defined for the Piping Materials Class.
Uses the model code (or specialty item number), derived from the PJS, to access the graphic commodity
library. The definitions in the graphic commodity library determine the physical tables required to place
the component and call the tables in the physical commodity library.
Places the symbol graphics in the model design file and writes the nongraphic information for the
component in the database.
This section describes the graphic commodity data used in placing components in the piping model. Refer to
the Piping Design Graphics Reference Guide for a detailed description of the actual placement process.
________________
The Graphic Commodity Library (GCL) provides data for commodity items, engineered items, and instruments.
It is basically a catalog of component data which is accessed to
Determine physical data based on user specifications (such as NPD and end preparation)
Define the parametric shape for the model graphics. The Graphic Commodity Library includes data
required for model creation, resymbolization for model presentation, interference detection, and any
special functions of the Piping Job Specification, piping industry standards, or company design practices.
PDS Piping uses the Eden Parametric Language to define and place components, specialty items, operators, and
envelopes. Eden is a high level language (similar to FORTRAN) which uses information from the Piping Job
Specification and model to access parametric and dimensional data.
These modules are designed to carry out two functions: data definition and graphic presentation.
The data associated with these modules is delivered in the following files:
The modular approach provides for more efficient storage of information in these libraries by enabling common
information to be shared by different symbols.
The first line of each Eden module defines the type of module (such as symbol processor) and the module name.
This statement determines a two-character category code to be prefixed to the module name in the object
library. This prefix is only used by the system; it should not be keyed in as part of the module name.
________________
The entries in the library use the following prefixes to identify the type of data:
SP Symbol Processor
PD Physical Data Definition Module
MG Model Parametric Shape Definition Module
IG Interference Envelope Parametric Shape Definition Module
SS Sub-Symbol Processor Module
Each module must be given a unique name within the graphic commodity library.
________________
The physical data tables contain the physical data (dimensions, weights, and surface area) required for symbol
creation, interference detection, stress analysis, and MTO reporting. These tables are segregated for commodity
item data, engineered item data, and instrument data. Refer to the Reference Data Manager Reference Guide
for a detailed description of the physical data tables and the table naming conventions used in PDS.
The physical data tables for US Practice are delivered in the following files:
These libraries contain physical data for American standards. The physical data can be stored in one of ten
physical data libraries. The system uses the geometric industry standard for a particular commodity item (or
specialty item) to determine which library to reference for the physical data tables.
Geometric industry standard is expressed as a code list value from Standard Note Type 575. Code list numbers
2-6999 are reserved for standards that apply to American piping practices. Code list numbers 7000-27999 are
reserved for standards that apply to European piping practices. Numbers 28000-31999 are reserved for specific
company practices.
By segregating data into separate physical data libraries, you can access a subset of the total physical data
available for a project. You can also build a specific set of physical data for a particular project. The following
table types are required for piping and instrument components:
Generic tables contain data that is not specific to a particular symbol (such as flange outside diameter or
flange thickness). These tables are identified by the prefix BLT, FEM, or MAL (for the termination type)
and end with the extension .TBL (the table name is independent of the name of the physical data module).
Specific tables contain commodity data that is specific to a particular component (such as dimensions,
water weight, and surface area). These specific tables use the model code or commodity code as part of
the table name to classify data by symbol type.
— The system uses the water weight data to compute the wet weight using the specific gravity of the
operating fluid.
— The surface area data enables the system to perform paint requirement calculations and insulation
weight calculations.
________________
Specific commodity dry weight data
The dimensions, dry weight, water weight, and surface area for specialty items can be stored in a set of
tables or defined at placement.
The dimensional data, dry weight, water weight, and surface area for instruments can be stored in a set of
tables or defined at placement.
You can form the name of a physical data table from attributes for the component (such as geometry standard
and end preparation). However, the table name cannot exceed 46 characters.
The data retrieval from tables in the Physical Data Library is restricted to two independent variables and eight
dependent variables. If only one independent variable is required, then nine dependent variables are allowed. If
more independent variables are required, the additional independent variable(s) must be a part of the table name.
If nominal diameter is one of the independent variables, it must be listed first in the table.
In order to place the valve described earlier in this section, the system references the following tables:
The spec access for a six-inch gate valve defines the end preparation at both connect points as Raised Face
Flanged End (code list value 21), which is a bolted connection. As shown in the listing for VALVE_2_AMS,
the table name for a bolted connection on a two-connect point valve is
Using the values from the Piping Job Specification (PMC=1C0031, Item Name=6Q1C01), the actual table name
will be
This table returns the outside diameter, flange thickness, and the seating depth for each end of the valve. Note
that the termination type (20) is used rather than the actual end preparation value (21).
________________
The specific tables are used to define the main body of the valve. Refer to the Table Requirement section in the
Reference Data Manager Reference Guide for an outline of the types of tables that are required to place a valve.
Since the termination type is the same at both ends of the valve (bolted), no red connect point data is required.
The required tables are found by referring to the Bolted(G) termination type.
MC_GS_Term(G)_Rat(G)_A (P15A).
MC_GS_Term(G)_Rat(G)_B (P15B) — This table is only required if more than eight outputs are
necessary to define a commodity item.
Using this information, the dimension tables for a 6" gate valve are:
GAT_40_20_150_A
This table returns the face-to-center dimension for the valve. Table P15B is not required for a gate valve.
VAABAHCCAA
This table returns the empty weight of the valve, including the weight of the operator.
If the end preparations were different at each end of the valve (such as female threaded by socket welded), then
a different set of tables would be required.
An additional table look-up is required to access the dimensional data for the valve operator. The following
table is required to define the valve operator:
MC_Type(G)_Rat(G)_Op_A (P31A)
Using this table name format, the dimension table for a handwheel operator on a 6" gate valve is:
GAT_BLT_150_3_A
This table returns the stem length and the wheel diameter for the handwheel operator.
________________
This section provides a step-by-step example of how PDS uses Eden and the information in the physical
dimension tables to place components in a model.
These modules are designed to carry out two functions: data definition and graphic presentation.
The data associated with these modules is delivered in the following files:
The modular approach provides for more efficient storage of information in these libraries by enabling common
information to be shared by different symbols.
________________
The following graphic illustrates the relationship among these modules:
The first line of each Eden module defines the type of module (such as symbol processor) and the module name.
This statement determines a two-character category code to be prefixed to the module name in the object
library. This prefix is only used by the system; it should not be keyed in as part of the module name.
The entries in the library use the following prefixes to identify the type of data:
SP Symbol Processor
PD Physical Data Definition Module
UF User Function Module
MG Model Parametric Shape Definition Module
IG Interference Envelope Parametric Shape Definition Module
SS Sub-Symbol Processor Module
Each module must be given a unique name within the graphic commodity library.
________________
A symbol processor is the controlling function or logic used to produce the graphics for a commodity item,
piping specialty, instrument, pipe support, or interference envelope. During component placement, the symbol
processor
The system retrieves the active component parameters which are dependent upon a connect point from the PJS
in terms of green, red, or tap connect point properties. The symbol definition assigns the data corresponding to
these connect point types (green, red, or tap) to the physical connect point numbers (CP1, CP2, CP3, CP4, or
CP5).
The first line of the Eden module defines the type of module and the module name. The following statement is
used in the Eden modules to indicate a symbol processor module.
This statement tells the system to use the category code SP for the prefix. You should use the following
conventions in assigning the module name (the module name must be in UPPER CASE). The module name is
determined by the type of component being placed (commodity item or specialty item).
For a commodity item, the system searches for the New Item Name (model code) of the commodity item
as the module name. If the New Item Name is blank in the Commodity Item entity, the system searches
for the Item Name as the module name.
For a specialty item, the system searches for the specialty item name (derived from the PJS) as the
module name.
For an instrument, the system searches for the instrument name (derived from the PJS) as the module
name.
The delivered symbol processors are identified in the library with the prefix SP.
The following lists the symbol processor SPGAT, which is used to control the placement of a gate valve.
________________
The first line of a sub-symbol processor module indicates the module type and the module name.
This statement tells the system to use the category code SS for the prefix.
The sub-symbol processor name for operators is a concatenation of the characters OP_ and the modifier value
from the Commodity Item entity in the PJS database. The value is expressed as a code list number from CL550
(operator/actuator type). If the value is a positive number (such as 3) the operator is placed with the valve. If
the value is a negative number (such as -3) the operator is not placed with the valve. (This is useful in
segregating large diameter valves which almost always display a valve operator from small diameter valves,
which frequently do not display an operator in the model.)
The symbol processor for the gate valve calls a sub-symbol processor (Subcomponent = ’OP’ //
Valve_Operator), which places an operator on the valve. The following depicts the sub-symbol processor
SSOP_3, which is used to control the placement of a handwheel operator on the valve.
as the first line in the Eden module. This statement tells the system to use the category code PD for the prefix.
This prefix is only used by the system; it should not be keyed in as part of the module name.
The module name for a physical data module consists of a symbol type (such as V1, V2,... for valves) and a
generic type of geometric industry standard (such as AMS or DIN). You can define multiple physical data
modules for the same symbol depending on the type of standard being referenced (for example, V1_AMS for
American standards and V1_DIN for European standards).
You can manage ten different sets of logic for table naming conventions for the following industry practices.
The corresponding table suffix ranges and the suffix for the Piping Eden physical data modules are indicated
below.
The table suffix standard for a component is defined in the Piping Commodity Data table of the Material
Reference Database. Each component must be assigned a geometric industry standard if it is to use physical
data tables.
For most of the delivered symbols, the physical data modules are classified into two categories: specific and
generic. The specific physical data module is called by the symbol processor. This module then calls a generic
physical data module.
The physical data module PDV1_AMS determines the specific dimensions (face-to-center and face-to-face) and
other physical properties for a gate valve. This is the module called by the symbol processor SP_GAT.
________________
The generic modules contain information that is common to more than one symbol, such as flange thickness,
gasket separation, and outside diameter. The physical data module V1_AMS calls another physical data module
VALVE_2_AMS which contains the generic dimension data for all valves with two connect points.
________________
________________
Parametric shape definitions are used to place symbol graphics in the model or define interference envelopes.
This involves the following major functions:
Parametric shape definitions are divided into two basic types: model parametric shapes and interference
envelopes. The first line of the Eden module indicates the module type and the module name.
Model parametric shapes are used to define the symbol graphics to be placed in the model. For example, the
parametric shape module for a valve consists of a cylinder, two cones, and a cylinder (flange, valve body,
flange).
This statement tells the system to use the category code MG for the prefix. This prefix is only used by the
system; it should not be keyed in as part of the module name.
The module name for a parametric shape module consists of a symbol type (such as V1, V2,... for valves).
The parametric shape module MGV1 determines the model graphics for a valve. This is the module called by
the symbol processor SPGAT. The parametric shape module MGOP3 determines the model graphics for a
handwheel operator. This is the module called by the sub-symbol processor SSOP_3.
________________
Interference parametric shapes are not used during component placement. They are referenced during
interference detection to determine the volume (interference envelope) to be compared for clashes with other
elements. If a clash is detected during the interference detection process, the interference parametric shape is
used to place an interference marker. Refer to the PDS Interference Checker/Manager (PD_Clash) User’s
Guide for more information on interference envelopes.
This statement tells the system to use the category code IG for the prefix.
The module name for the interference parametric shape definition should be the same as the module name for
the model parametric shape definition.
________________
If no interference module is found for a component, the system uses the model graphics module
to determine the interference parametric shape.
The data gathered through the forms serves as the input that defines the values of the global variables used by
the Eden modules. When a new specialty item is defined through Eden a form specific to that item can be
created using the Form Builder and Symbol Editor products, or the DBAccess product.
________________
As described in the Piping Job Specification description, connect point information for commodity items,
piping specialties, and instruments is classified in terms of green and red connect points. The following
conventions are used to coordinate the two sets of data:
For full-size components, data is only defined for the green connect point and applies to all ends of the
component.
For size change components, data for commodity items, speciality items, or instruments should be created
with the green connect point representing the larger diameter (first size) of the component and the red
connect point diameter representing the smaller diameter (second size).
If the end preparation is different at each end of the component, the end preparation should be defined to
match the required green and red connect points.
If a component has ends with the same nominal diameter but other end properties that differ, the
following rules apply:
— If the ends have different end preparations (regardless of the values for schedule/thickness) the end(s)
whose end preparations have the lowest code list number are designated as the green connect point.
— If the end preparations are the same but the values for rating, schedule, or thickness differ, the
"stronger" end(s) are designated as the green connect point.
Schedule or thickness values should be defined for all applicable components. Refer to the PJS Tables
and Functions section in the Reference Data Manager (PD_DATA) Reference Guide for a detailed
description of the methods for defining the schedule or thickness value.
A flow direction component (such as a check valve) must be defined so that the flow is directed from
connect point 1 to connect point 2.
A tee type branch must be defined with connect point three on the branch leg of the tee.
The origin of a component must lie between connect point 1 and connect point 2.
Flanges should be defined with the green connect point representing the flanged connect point and the red
connect point representing the non-flanged connect point.
________________
A valve operator is always placed at the component origin of the corresponding valve body.
To ensure consistency in pipe cut length calculations, the connect points of a component should be
located using face-to-face or face-to-center dimension rather than end-to-end or end-to-center dimension.
A change of direction component placed by component center must be defined such that connect point 1
is on the primary axis.
For bend components (specific and generic), the item name must be unique with respect to the angle of
the bend. In other words, you specify the angle of the bend by selecting the item name for the
corresponding angle of the bend.
The number of joints in a miter is required to compute the stress intensification factor (SIF). The graphics
symbol description in the Graphic Commodity Library sets an attribute in the piping design database that
defines the number of joints.
For miter bend components, the system requires that the item name and the new item name be unique
with respect to the number of miter joints of the bend. In other words, the item name specifies the
number of miter joints of the bend.
For branches (tees and laterals), the system uses the first and second size to access the branch table and to
determine the item name of the component to be placed at the branch point (intersection). Depending on
the active values, the branch table may define a single component or a set of two or three components.
________________
The data for the number of bolts and the bolt diameter is available with the flange data in the Physical
Dimension Table Library as a function of nominal piping diameter, pressure rating, termination type, and
geometric industry standard. However, the bolt data and the flange data are stored in separate tables.
Refer to the Report Manager (PD_Report) User’s Guide for a description of the table access.
A lap joint flange is defined with the end preparation at one end as flanged and the other end as lap.
The system determines the gasket separation at each connect point of a piping component, speciality item,
and an instrument component by the following rules:
— If the end preparation for the connect point is flanged, the gasket separation for the connect point is set
to one-half the Active Gasket Separation. However, some flanged connections (lug, ring type joint, or
wafer) have integral gaskets and do not have a gasket separation. In this situation, the gasket
separation at each connect point is set to zero.
— If the end preparation for the connect point is not flanged, the gasket separation for the connect point
will be set to zero.
— The first table (BLT_Term_Rat_TS) contains the flange data required for modeling activities (such as
flange outside diameter and flange thickness).
— The second table (STUD_Rat_TS) contains flange data required for reporting or analysis activities
(such as bolt diameter, number of bolt holes, and nut extension).
________________
All tubing (such as fiberglass and copper) is specified in terms of piping outside diameter rather than
nominal piping diameter. All commodity item data in the Physical Dimension Table Library exists in
terms of nominal piping diameter.
Mechanical joint and cast iron pipe can have various fixed lengths. Polypropylene-lined tube is
purchased with flanged ends in various fixed lengths.
Piping wall thickness is defined in terms of NPD units rather than model units.
A piping converter component (which converts nominal piping diameter from one system of units to
another system of units) must be defined in the PJS database for each specific pair of nominal piping
diameters. You cannot specify a converter component for a range of nominal piping diameters.
Eden is similar to the FORTRAN programming language. Therefore, the general rules for evaluating
expressions in Eden are identical to those in FORTRAN.
Eden definitions are usually simpler than FORTRAN programs. To use Eden, you must be able to visualize the
symbol (in 3D) that you want to develop.
Statements
— Beginning
— Ending
Variables
— Local
— Global
Keywords
Operators
— Arithmetic
— Relational
— Logical
Expressions
Functions
SP - Symbol_Processor ’6CHAR’
SS - Sub_Symbol_Processor ’6CHAR’
PD - Physical_Data_Definition ’28CHAR’
UF - User_Function_Definition ’28CHAR’
MG - Model_Parametric_Shape_Definition ’28CHAR’
IG - Interference_Parametric_Shape_Definition ’28CHAR’
Symbol_Processor ’GAT’
Physical_Data_Definition ’V1_AMS’
Ending statements mark the end of the module in which the system has been processing. Ending statements in
the symbol and subsymbol processor (beginning statements SP and SS) include:
Stop
End
Ending statements in the children processor (beginning statements PD, UF, MG, and IG) include:
Return
End
________________
Variables in Eden can be either local or global. They can contain either numeric or alphanumeric data.
Internally, numeric data is stored as REAL*8 (double precision). If a different data type is required in the
context of an expression, then the conversion is performed at the time the expression is evaluated.
Variable names can be either upper or lower case. Symbols tend to be easier to read when you
use all lower case for local symbols and all upper case for global symbols or vice versa.
When converting a floating point number to an integer, the fractional part of the floating point number is
truncated.
A variable used in a logical expression evaluates to TRUE when the value of the variable is 1 and 0 when
the logical value is FALSE.
Variables that hold values representing distances are assumed to be in subunits. A variable containing the
value 25 represents 25 inches in an English unit design file and 25 millimeters in a metric unit design file.
Be careful when using hard coded numbers or when using the system_of_units keyword.
Local variables are user defined and declared in the symbol definition. You can refer to a local variable only
when you are in the same module as the local variable.
Local variable names are formed using alphanumeric (a-z), numeric (1-9), and special (_ and $) characters.
They must begin with an alphanumeric character and must be less than or equal to 31 characters in length.
The Eden compiler does not verify the spelling of local variables within call statements. It assumes a
null value for the misspelled variable at component placement time.
The Eden language refers to constants as local variables. Both character strings and numeric constants are
valid; however, character string constants must be surrounded by single quotes. In most cases, character
strings and constants are case sensitive. Thus, a and A are interpreted differently.
diameter 13.25
shell_thickness ’A TEXT STRING’
projection_1 radius [2]
25
________________
Only in Pipe Support and Equipment Modeling can you declare local variable types. The variable types default
to either CHARACTER or REAL depending on the context. To override this default, you can use a local
variable type declaration statement anywhere before the variable(s) is (are) actually referenced. Variable types
INT2, R8, and LOCATION are recognized by the compiler.
In the following example, variables a, B, and C are declared as type short integers. They hold values ranging
from -32767 to 32767.
Int2 a
Int2 B, C
In the example below, variable d is declared as a type REAL, capable of holding decimal fractional values. This
is the usual default type for numeric variables. However, explicit typing to this category may be necessary to
declare local arrays.
R8 d
As a recommendation, all declaration statements should be placed at the very beginning of the symbol code and
not interspersed among statements to be executed during symbol placement. This improves program
readability.
Also in Pipe Support and Equipment Modeling, referencing a variable using subscripts is extremely useful when
coding repetitive statements such as the body of a loop. Prior to use, variables must appear in a type declaration
in which its subscript or index range is also specified.
Below, LENGTHS is an array of 10 REAL variables. They are referenced as LENGTHS [1] ... LENGTHS [10]
R8 LENGTHS [10]
Global variables are system-defined names allowing you to refer to them at any subroutine level. More
specifically, you can use them for passing values between subroutine levels or for communicating input values
to the symbol. The following list shows the global variables common to all Eden applications. Refer to the
application-specific section for detailed information concerning specific global variables.
________________
Global variables are system-defined. You cannot declare global or subscripted global variables.
Input_n (Input_1 through Input_20) An array with up to 20 variables used to define the input
parameters for table lookups. (Input_11 through Input_20 are specifically designed for
user function arguments in equipment and pipe support modeling.)
Output_n (Output_1 through Output_20) An array with up to 20 variables where the results of the
table lookup are stored. (Output_11 through Output_20 are specifically designed for user
function return arguments in equipment and pipe support modeling.)
Dimension_n (Dimension_1 through Dimension_20) General purpose variables used for communicating
input to the symbol logic. You can also use these variables for passing values between
subroutines or simply for local storage. (Dimension_20 is for angle; Dimension_1 through
Dimension_19 is for linear piping.)
Nom_Pipe_D_n Variable containing the current item nominal pipe diameter. This variable contains the
nominal diameter in coded units. A special primitive is provided to help you convert from
coded units to subunits.
Gen_Type_n Variable containing the current item end preparation generic type (BLT, MAL, FEM). This
is a read-only variable.
Term_Type_n Variable containing the current item end preparation termination type (21, 22, and 23 will
fall into Term_Type_1=20). This is a read-only variable.
Bend_Angle The bend angle is defined at placement for a component that has a
variable sweep angle.
Bend_Radius The bend radius is defined through the component itself by means of a
table lookup.
Bend_Radius_NPD The bend radius in tems of NPD from the PCD file for the bend
component.
Body_OD_n (n = 1-5) The body outside diameter is the outer diameter of either a
bolted, male, or female end of the indicated termination type.
Branch_Table Identifies the branch insertion table used to determine the name of the
branch commodity item to be used for tee and lateral branches.
CP_Offset_n (n = 1-5) The connect point offset adjusts the graphics relative to the
connect point (for flanges, it adjusts for the gaskets) for female, adjust
for penetration. Male is set to zero.
Depth_n (n = 1-4) The connect point depth is the depth of a socket as defined in
the table FEM_Term_Rat_TS. It determines a component’s
dimensional parameters by calculating the depth of the socket minus
1/16 inches.
DIM_TOLERANCE = 1/64 in. The minimum dimension standards are the minimal values permitted in
the Eden program. The minimum distance used for checking connect
point separation if 400 units of resolution (USRs) which is
approximately equal to 1/5 inch.
Facing_OD_n (n = 1-5) The facing outside diameter is the outer diameter of either a
bolted, male, or female end of the indicated termination type.
Gen_Flag_Red The generic flag retrieves the table suffix for use with table
Gen_Flag_Green identification.
Geo_Ind_Std The geometric industry standard is used to define table lengths. The
data comes from the piping component data entry.
________________
Insulation The insulation thickness is defined by the designer at time of pipeline
placement. It is used to increase the volume of the interference
detection and the display of the Insulation Graphics.
Item_Name This variable equates to the model code used in defining a table name.
MIN_CYL_DIA = 1/32 in. The minimum cylinder diameter permitted in the Eden program.
MIN_DIMENSION = 5/8 in. Hard-coded global variable. The minimum linear dimenstion value
permitted by the Eden program is approximately 1/16 inch.
Nipple_Length The nipple length is retrieved from the modifier column in piping
component data from the reference database.
Nom_Bend_Rad The nominal bend radius. This variable will write to the database and
allow reconstruction of the component.
NUMBER_BOLTS Table lookups are performed during the execution of the MTO process
when two mating flanges are found. This keyword is used to hold the
data retrieved for the table and then pass on to the MTO process.
Number_of_Taps The number of taps is retrieved from the modifier column in the piping
component data from the reference database.
Op_Weight The operator weight data referenced from a table and stored in the
database.
Seat_Depth_n (n = 1-5) The seating depth is the depth as defined in the table
BLT_Term_RAT_TS. The dimension represents the distance from the
outermost surface of the bolted end to the seating surface of the gasket.
________________
Sch_Thick_n (n = 1-5) The schedule/thickness is the wall thickness of the applicable
end of a component of the indicated nominal diameter as defined in the
table MALWT_Term_Sc/Th_TS_WC.
Surface_Area The surface area data referenced from a table and stored in the database.
Thick_Table_Name Identifies the thickness data table used in piping wall thickness
calculations for this piping material class.
Valve_Operator The valve operator is the value retrieved from the modifier data and
tells what valve operator to place.
Weight_Code Defines the weight code for the component and determines the table to
be used in finding the dry weight.
Wet_Weight The fluid volume weight data referenced from a table stored in the
database.
________________
Eden uses keywords for labeling specific values or groups of values. All keywords except TRUE and FALSE
can appear as arguments in system-defined primitives (or subroutines). Keywords can be upper or lower case.
For consistency, this reference guide displays keywords in upper case.
ENGLISH Names used to define the units of a constant used in the symbol definition.
METRIC
GREEN RED The spec connect point properties assign connect point properties to a given
connect point (that is, end prep, schedule, pressure, table suffix) retrieved from
the active material class.
NULL_GEN_TYPE The generic term type is used in testing the current end preparation retrieved
from the commodity to determine the necessary graphics and dimensions needed
to construct the components connection graphics.
STANDARD_TYPE The standard types are used in building the physical data module name. The
keyword STANDARD_TYPE is replaced by one of the following keywords
dependent upon the table suffix value found for the commodity being placed.
________________
Keyword Practice Range
AMS U.S. Practice 2-99
DIN European - DIN 100-199
BS European - British Standard 200-299
EURO_A European - Practice A 300-399
JIS International - JIS 400-499
AUS International - Australian 500-599
EURO_B European - Practice B 600-699
INT_A International - Practice A 700-799
INT_B International - Practice B 800-899
COMPANY Company Practice 900-999
The geometric standard determines which dimension library to use, such as U.S. Practice or
Company Practice. The table suffix determines which physical data definition modules to use to
read table data, such as V1_AMS or V1_COMPANY.
NPD_SUB_UNITS The file NPD working units. Test against the keywords ENGLISH or
METRIC.
ITEM_NAME The model code data retrieved from the piping commodity data used in
building table names.
PHYSICAL_DATA_IDENT The physical data identification is used to retrieve tag names or numbers for
an instrument. It is also used for table lookup dimensions.
Oper_Dim_A The operator dimensions keywords allow you to load valve operator
Oper_Dim_B dimensions with read/write access into the relational database for piping and
Oper_Dim_C instrument components.
Oper_Dim_D
The dimensions of valve operators vary from supplier to supplier. Typically,
valve operators are defined as over-sized in the piping model. Although this
is safe with respect to interference checking, it is not always safe with
respect to access — a valve operator may appear to be accessible when it is
not. For this reason, these keywords provide the mechanism for four valve
operator dimensions to be loaded into the model on the basis of definitions in
the Reference Database, such that the data in the model can be reviewed and
compared with data for the purchased valves.
NON_RADIAL_BRANCH The non-radial branch keyword must be used to define the connect point
geometry type for non-radial branch components.
________________
ORIFICE_TAP_ORIENTATION 0 180 degree orientation
ORIFICE_TAP_ORIENTATION 1 90 degree orientation
The orifice tap orientation keyword allows relative orientation of two taps on
an orifice flange. The use of this keyword is required in conjunction with the
Place Component option in Piping Design. The Place Component option
places an orifice flange with two taps. These taps are oriented 90 degrees
apart versus 180 degrees apart, as specified in the Reference Database.
You must define the number of taps for the orifice flange in the Piping
Commodity Specification Data Table, PDtable_202, of the Material
Reference Database. By default, the orifice taps are oriented 180 degrees
apart on the outside diameter of the flange, when the modifier column is +2.
If you require an orifice flange to have the taps oriented 90 degrees apart,
you must specify the modifier column as -2.
T80Cn The pipe support data keywords (where n is the applicable column number in
the Pipe Support Data Table of the Piping Design Database) allows you to
load pipe support data with read/write access into the relational database.
This includes updating the pipe support’s data when the source of that data is
either hard-coded in a Piping Eden module or read from a table in the
Physical Data Library.
________________
To place a comment within Piping source code, the comment must be on a separate line from the source line
and the exclamation point (!) must be in the first column of the comment line.
You cannot place a comment immediately after a call statement (on the same line).
________________
Operators are used in conjunction with variables to form expressions. As in FORTRAN, operators can be
anyone of three types:
1. Arithmetic
2. Relational
3. Logical
Arithmetic operators are used to form arithmetic expressions. These operators follow the mathematical
conventions. Valid arithmetic operators include:
+ addition
- subtraction
* multiplication
/ division
** exponentiation
// concatenation using ’_’
The first five operators (+, -, *, /, **) can only be used with numeric local and global variables. The
concatenation operators (// ) can be used with both numeric and string variables.
The concatenation operator // is used primarily to form table names. It joins two variables together with an
underbar (_) character. The result is a text string.
produces
When using the concatenation operation, real numbers are converted to integers (that is, truncated), then
converted to character strings and finally joined together with the underbar character. The concatenation
operation is generally used to form messages and character field outputs.
________________
produces
Relational operators are used to form relational expressions that test the value of an Eden expression or establish
conditions under which a group of Eden statements can be executed. Valid relational operators include:
.EQ. equal to
.NE. not equal to
.GE. greater than or equal to
.GT. greater than
.LE. less than or equal to
.LT. less than
Relational operators can be used on both numeric and character string variables. However, mixing the two
types of operands for a given operation produces computing errors.
In character relational expressions, less than means precedes in the ASCII collating sequence, and greater than
means follows in the ASCII collating sequence.
If two strings in a relational expression are not the same length, the shorter one is padded on the right with
spaces until the lengths are equal.
Logical operators are used to combine relational expressions into more complex logical expressions. Valid
logical operators include:
.OR. logical or
.AND. logical and
For every IF statement, there must be an ENDIF statement to end the expression. You can nest
up to five If-then-else expressions within an Eden module.
For the Replacement, Do while, and If-then-else expressions, you can use parentheses to alter the precedence of
calculation.
Replacement statements are used to set variables or perform calculations. The following list illustrates the
various Replacement statements:
thickness = 25.
vessel_od = DIMENSION_1
test = test + 1
table_name = ’BLT’ // GEN_TYPE // PR_RATING // ’5’
dim_a = (dim_b + dim_c) * 2. + dim_d
Call statements are used to execute system primitives. The syntax for the Call statement is:
The Do While statement is used to form indefinite loops. The condition of a Do While statement must equal a
logical value (either true or false). The body of the Do While statement will be repeatedly executed as long as
the logical expression remains true.
________________
The following Do While loop places four cylinders end to end. The pretested loop condition fails on the fifth
try (if i equals 4), and control transfers to the message display routine.
i=0
do while (i .LT. 4)
i=i+1
Call Draw_Cylinder_With_Capped_Ends (diam, leng)
enddo
The Indexed Do statement allows you to form loops that execute a specified number of times. This number is
determined by an initial, a terminal, and an incremental parameter of a control variable. The syntax for the
Indexed Do statement is:
where
v1 are constants or variables that evaluate to the initial, terminal, and incremental parameters respectively.
v2 v3 is optional. If v3 is omitted, the system assumes that the incremental parameter is one.
v3
V3 cannot be negative.
In this example, I is set to 1. The body of the loop is then executed. I increments by 2 each time the cycle is
complete, and the value 3 is checked against the terminator 20. The iteration continues as long as I is less than
or equal to 20. When the iteration is greater than 20, the loop ends.
________________
If - then - else statements are used when a group of statements is to be conditionally executed. The Eden syntax
is the same as FORTRAN syntax.
An If statement of the form if (condition) is not valid. In Eden, all If statements must be of the
form If (condition) then. The else statement is optional.
________________
Eden provides several functions for performing common mathematical operations. These functions can be used
within replacement statements.
The Convert NPD to Subunits primitive converts the coded input value and returns its Real*8 equivalent.
This primitive is often used for converting the nominal piping diameter that is stored in the database.
Metric files base the diameter in millimeters. Imperial files store the nominal piping diameter as
NPD 1/32 + 5000. Thus,
For Eden symbols in Piping that use imperial and metric files, hard coding the dimensions is not
recommended. A dimension entered as 5 inches and placed in an Imperial file is interpreted as 5
inches. However, the same value placed in a Metric file is interpreted as 5 millimeters. Instead
of hard coding, load the dimensions in a table to allow the piping software to convert the
dimensions to the correct values.
This primitive does not perform unit conversions. If American standard pipe sizes are being used in a Metric
file, this primitive will return the NPD in inches.
coded_input The nominal pipe diameter in internal or coded units. This variable must be
the keyword Nom_Pipe_D_n.
In this example, the Real*8 equivalence of the coded NPD in Nom_Pipe_D_1 is returned in Pipe_Dia_1.
All NPDs used internally in the software are in encoded form. Most table lookups based on
NPDs require the input to be in encoded form. However, if a nozzle size is needed in a
calculation, it must be converted from internal units to subunits.
________________
The Define Active Orientation primitive allows you to define the active orientation by specifying the
directions of the primary and secondary axes. The orientation is defined in the local coordinate system by the
symbol. This definition has no bearing on the design file coordinate system.
In Piping, this primitive defines the current flow centerline and a direction that is normal to the flow centerline
in terms of the connect point orientation (defined by the symbol’s connect point geometry) in order to place
graphic shapes.
Specific keywords are available for specifying either the primary axis or the secondary axis of the connect
point’s orientation.
secondary Variable that defines the line perpendicular to the flow centerline or secondary
direction.
CP_PRIMARY_n
CP_SECONDARY_n
CP_NORMAL_n
If the initial active orientation for a symbol definition has the primary pointing east and the
secondary pointing north, the normal axis of the active orientation would be up. (Normal axis
can be found using the right-hand rule.)
________________
In Piping, you must have already called Place Connect Point (CPn). For operator, initial point of
operator is assumed CP1.
In Piping, the two variables used must have the same connect point number.
In the following example, the secondary orientation at connect point 2 becomes the new active primary
orientation at the active point, and the primary orientation at connect point 2 becomes the active secondary.
________________
The Draw Cone primitive places a cone where the first end is at the current active point and the second end is at
a location computed by the system given the input length along the primary axis. You must define the
diameters of each end of the cone with separate variables.
length The length of the cone (A) which can be positive or negative.
diameter_2 The diameter of the cone (C) at the end opposite the active point.
________________
The Draw Cylinder primitive places a cylinder where the first end is at the current active point and the second
end is at a location computed by the system along the primary axis. You must specify the diameter and the
length of the cylinder. The active point will be moved to the opposite end.
If cyl_len is positive, a cylinder of the specified length is drawn. If cyl_len is zero, nothing
happens. If cyl_len is negative, the active point is moved the specified negative distance, but the
cylinder is not drawn.
________________
The Draw Eccentric Cone primitive allows you to place an eccentric truncated cone. The first end is at the
current active point. The second end is at a location the system computes by moving from the current active
point along the current flow centerline by the length of the cone and along the secondary axis by the negative of
the eccentric offset. You must specify the eccentric offset and the diameters of both ends of the eccentric cone.
eccentric_offset Eccentric cone offset. This is the center-to-center distance between cone
endpoints as measured positive going against the secondary.
You must specify the projected height, projected width, and projected length dimensions.
length1 Length of the rectangle side (C) parallel to the secondary axis of the active
orientation.
length2 Length of the rectangle side (B) parallel to the normal axis of the active
orientation.
The active point must be located at the center of geometric shape of the rectangle.
The active point must be located at the center of geometric shape of the triangle.
Make sure that dimension A is greater than 1/2 of dimension B, otherwise errors will result.
________________
The Draw Semi-Ellipsoid primitive allows you to place a semi-ellipsoid, where the center is at the current
active point. You must specify the diameter of the major axis and the radius of the minor axis.
The system does not update to a new active orientation after placement of the semi ellipsoid.
The refresh tee and orientation will not change after placement.
The torus diameter must be greater than or equal to ( ) 1/32 inches, and the bend radius diameter must be
greater than or equal to ( ) 1/32 inches and greater than (>) 1/2 the torus diameter.
radius The bend radius of the torus (B) as measured from the origin of the torus to its
centerline.
One component can have up to five connect points including up to two tap points, for a total of five
connect points per component.
You must assign all the connect points for a component before you call the physical data routine. Once
you make another call, Eden assumes that there are no more connect points associated with the symbol.
Any connect points assigned after the subroutine call are considered illegal.
To ensure that the connect points are assigned before another call is made, place the call to
assign connect points in the beginning of the Symbol Processor module.
This routine is needed because of limited connect point geometry types in ISOGEN. Refer to the ISOGEN
Interface User’s Guide for more information. This primitive should be used only for speciality items.
The following example assigns GREEN properties to connect point 4, but is by definition a tap.
________________
The Assign Tap primitive allows you to define a pressurized connect point as a tap. The system uses the
nominal piping diameter you specified for the tap and the connect point data from the Tap Properties Table of
the Piping Job Specification.
The Assign Tap command applies only to components that have the geometry type of
ORIFICE_FLANGE.
You must assign all connect points and the tap_diameter before assigning a tap.
The following example assigns a tap at connect point three with a diameter of two inches.
________________
The Compute Perpendicular Vector primitive computes orientation vectors where the primary axis is
perpendicular to the primary vector of connect point 1 and in the plane of the secondary axis, and the new
secondary is in the same direction as the primary of connect point 1.
This is used mainly for RWELDS and RPADS s that the cylinder is flat on the pipe. You can use any unused
connect point for storage.
All connect points should be placed before this computed orientation is used because this could
cause a problem when connect point geometry is checked at placement time.
Using Define Connect Geometry, you can define the orientation for each connect point and check that the
correct number of connect points have been defined.
The number of connect points for the geometry type defined here must match the number in the Symbol
Processor module.
The geometry type is limited to the possible geometries associated with the component being placed.
The following example calls the connect point geometry for a bend that tests to see that all connect points are
defined for a bend geometry type.
________________
The Display Tutorial primitive allows you to display a tutorial from within an Eden module in order to obtain
dimensions from the user key-ins. This routine should not be called in Interference Graphics modules.
Tut_Name The form as it appears in the forms directory. You are limited to six
characters.
In this example, the tutorial for operator 33C dimensions is displayed. You can now enter the needed
dimensions.
________________
The Draw Cone With Capped Ends primitive allows you to request the placement of a cone with capped ends,
where the first end is at the current active point and the second end is at a location computed by the system.
diameter_1 Variable (B) that defines the diameter at the active point.
diameter_2 Variable (C) that defines the diameter at the opposite end of the of the
cone.
________________
The Draw Cylinder With Capped Ends primitive allows you to place a cylinder with capped ends, where the
first end is at the current active point and the second end is at a location computed by the system. You must
specify the diameter of the cylinder and the length.
The following example draws a cylinder with a length of 5.0 and a diameter of 1.0.
If cyl_len is positive, a cylinder of the specified length is drawn. If cyl_len is zero, nothing
happens. If cyl_len is negative, the active point is moved the specified negative distance, but the
cylinder is not drawn.
________________
The Draw Eccentric Cone With Capped Ends primitive allows you to place an eccentric truncated cone with
capped ends. The first end is at the current active point. The second end is at a location the system computes
by moving from the current active point along the current flow centerline by the length of the cone and along
the secondary axis by the negative of the eccentric offset. You must specify the eccentric offset and the
diameters of both ends of the eccentric cone.
The following example draws a hexagonal shape with the specified diameter and depth.
________________
The Draw Mitered Torus primitive allows you to place a mitered torus. The system emulates the mitered torus
by placing cylinders representing miters. You must must specify the number of miters. The diameter must be
greater than or equal to ( ) 1/32 inches, and the bend radius must be greater than or equal to ( ) 1/2 the
diameter.
The following example draws a torus with the bend radius, bend angle, and diameter equal to the outside
diameter of the body at connect point 1.
________________
The Draw Octagon primitive allows you to draw an octagon of the specified width and depth.
The following example draws an octagonal shape given the width and depth.
________________
The Draw Parametric Shape primitive allows you to reference a user-defined module that draws the graphics
for the parametric shape of the component being placed. The module name is limited to a maximum of 28
characters.
You must assign the appropriate graphic name to the parametric shape that you want to draw.
parametric_shape Name of the module that you defined to draw the graphics. The name
must be set before calling the module.
The following example calls the module that places the graphics, connect points, and so forth for parametric
shape F47.
— OR —
________________
The Draw Torus with Capped Ends primitive allows you to place a torus with capped ends from the current
flow centerline to the current direction of the secondary axis using the bend radius, bend angle, and the diameter
you specify.
The diameter must be greater than or equal to ( ) 1/32 inches and the bend radius diameter must be greater than
or equal to 1/32 inches and > 1/2 torus diameter.
The following example draws a torus with capped ends with a radius equal to the bend radius, at an angle equal
to the active bend_angle, with a diameter equal to the outside diameter of the body at connect point 1.
________________
The Get Physical Data primitive allows you to reference a user-defined module or user-selected standard
(Metric or English) that defines the physical data for the component being placed. The name of the module
must be less than or equal to ( ) 28 characters.
Set the physical data source variable equal to the name of the physical data module you are
calling.
physical_data_source Name of the physical data module set previous to this primitive.
The following example sets the variable physical_data_source to F47_AMS and then calls the routine
which accesses the physical data:
The following example sets a variable named physical_data_source to F47_AMS and then calls the
routine which accesses the physical data:
The following example calls the routine which accesses the physical data without defining a variable for
the physical data source:
________________
The Move Along Axis primitive allows you to move a specified distance along a specified axis. It is useful for
symbols such as olets that do not have graphics that start at the point of connection.
In this example, after obtaining radius of pipe and diameter of cylinder, move along the active secondary axis to
the edge of the pipe and place cylinder graphics for olet.
________________
The Move By Distance primitive allows you to move from the current active point along the current flow
centerline by a distance (positive or negative). The distance you specify must be a real number in floating point
form.
distance Variable name for the distance along the flow centerline.
The following example moves the active point by a distance equal to the offset of connect point 2:
The following example moves the active point by a distance equal to the face to center dimension for
connection point 2 and in the opposite direction:
________________
The Move To Connect Point primitive allows you to move from the current active point to the location of a
connect point that has been previously placed in the symbol description. The connect point assumes the
orientation of the new connect point location.
You must call the Place Connect Point primitive before calling Move_To_Connect_Point.
In the following example, the call moves the active point to connect point 1:
________________
The Place COG Location primitive allows you to define the location of the center of gravity for either dry or
wet (operational) conditions. Specific keywords are available for specifying the basis for the center of gravity
location. When you call this subroutine, the system assigns the COG_Type to the Active_Point location.
Specific keywords are available for specifying the connect point identification of the component center, the
pressurized connect point or the tap. When you call Place Connect Point, the location of the Active_Point is
assigned to the connect point. You must place all of the connect points that were assigned in the symbol
processor module.
The following example places a connect point at the current location with current orientation:
________________
The Prompt to Orient Operator primitive allows you to prompt the operator to orient a valve operator. This
request is only required for non-symmetrical valves, where the secondary axis cannot be used to define the
valve operator orientation. The message for the prompt is determined by referencing a message in the PDS
Piping Design Message Library. Do not call this primitive from the interference checking modules.
________________
The Read Table primitive allows you to read data from a table in the Piping Job Spec Table Library or
Dimension Table Library. Call this primitive from the Physical Data Definition module.
Refer to the Reference Data Manager (PD_DATA) Reference Guide for information on the valid naming
formats for tables and the valid units that can be used in tables.
Use the input and output arrays that are defined in the Data Dictionary.
Table names are limited to 46 characters. You must assign input values before using this primitive; otherwise,
the system sets the input values to zero. The syntax for the Read Table primitive is:
input Variable defining the input used to access data in the table. This variable
ranges from input_1 to input_10.
output Variable defining the output read from the table. The variable range is from
output_1 to output_8.
The following example sets the global variable, Table_Name_A, equal to the name of the table to be called, then
sets input_1 equal to the nominal pipe diameter at connect point 1 and input_2 to the nominal pipe diameter at
connect point 2, and then calls the routine that reads the output from the table. The face to center dimension is
output 3 from the table read.
You do not need to put the underbar in the table name. Concatenation inserts the underbar when
forming the table names.
________________
The Rotate Orientation primitive allows you to rotate the active orientation about any axis and with any angle.
In the following example, after the primitive is executed the primary and normal are rotated 90 degrees about
the secondary axis:
________________
The following is a list of connect point geometries for specific piping components:
A reducing component with two connect points, such as a reducer or a reducing bend, must be defined by
the convention that the nominal piping diameter at connect point one is the larger of the two nominal
piping diameters.
By PDS definition, flanges should be defined in the Piping Graphic Commodity Library with the green
connect point representing the flanged connect point and the red connect point representing the non-
flanged connect point.
By PDS definition, for a symmetrical valve, the primary axis of the Refresh Tee determines the centerline
of the valve body, and the secondary axis determines the centerline of the valve’s operator (if there is an
operator in the symbol definition). If the valve body is non-symmetrical and the secondary axis is needed
to orient the valve body, the user must be prompted in the symbol definition to orient the centerline of the
valve operator.
The following list contains connect point geometry keywords, their definitions and example diagrams.
You must define the connect point geometry type before placing any connect points.
LINEAR Any component that has all connect points along one vector, such as a gate valve or
a weld-neck flange.
ELBOLET Elbolets or any component that has a tap that lies along the same vector as the one
formed by CP1 and CP0 or CP2 and CP0.
________________
BEND Direction-change components where the angle of change is not necessarily 90
degrees.
ECC_REDUCER Eccentric Reducing components. The connect points are offset along the secondary
axis. The vectors coming into and leaving the component remain parallel.
BRANCH_TEE Branch component where CP1 and CP2 are along the same primary vector. CP3 is
along the vector of the secondary.
BRANCH_WYE Branch component where CP1 is on the primary axis; CP2 and CP3 are both on
vectors that are offset from the primary vector by 45 degrees in either direction.
The vectors created by CP2 and CP0 or CP3 and CP0 are perpendicular.
BRANCH_2WYE A 4-connect-point branch that has the same general layout as the BRANCH_WYE,
but instead of the line splitting off in two directions, a third line continues on the
flow centerline.
________________
CROSS A 4-connect-point branch that is formed on 2 perpendicular vectors. CP0 is where
the 2 vectors cross.
OPERATOR Any item that does not have connect points. Operators have no connect points.
LATROLET Olets that can be placed at a variable angle to the primary or flow centerline, such
as reinforcing pad and reinforcing weld.
ORIFICE_FLANGE Linear component that has 1 or 2 taps that are perpendicular to the flow centerline.
GENERIC_COMPONENT
Specialties, instruments, and pipe supports where the geometry is not rigidly
defined (Not to be used with piping components).
________________
The refresh tee must point inwards (to CP0) before you define each connect point (CP#). Not all
geometric configurations associated with this type may be defined for ISOGEN.
________________
Before a new piping component can be defined through Eden, follow these steps:
— Create piping symbols directory. If the new components will be shared by two or more projects the
new directory could look like this:
c:\users\default\projects\custom\pipesym
where custom is an optional directory where customized libraries and symbol definition directories for
all projects can be kept.
— If the customized libraries and components will be specific to one project the following alternative
can be used:
c:\users\default\projects\proj1\pipesym
c:\users\default\projects\custom\tbls
— OR —
c:\users\default\projects\proj1\tbls
3. Create a directory path for graphic data and table libraries, and copy them into this directory.
— OR —
c:\users\default\projects\proj1\libs
— OR —
4. Access the Reference Database Defaults form and enter the node name and path to the directories
previously defined.
— Enter the path and node name to the directories previously created.
— Make sure that the Piping Spec definitions are specified. If a U.S. standards project is being used the
following data should appear:
A detailed description of the Default Project Control Data option is provided in the
next few pages.
5. Access the Reference Database Management Data form, and define the node name and directory path to
the graphic data and table libraries. When testing new libraries in a live project, it is recommended to
enter them as "Not Approved"
________________
— Select Cancel on the Defaults form.
— Select the Default All Library Locations, and enter the library directory previously created.
— Make sure that the specifications are correct for each library (some of the default values are incorrect).
The following specifications are used for a U.S. standards project:
If working in a non-U.S. standards project, see the directory being used to find the correct
specifications
1. Select Reference Database Management Data from the Reference Data Manager form.
2.
Select the RDB file from the list of files. You can use the scroll arrows to review the listed files.
The system identifies the file for the selected field in the fields at the bottom of the form. There are no
default settings for these files; you must define the applicable file locations before you can continue.
Material/Specification Reference Identifies the Material Reference Database for the project. Refer to
Database the Project Setup Manager in the Project Administrator
(PD_Project) Reference Guide for more information on this
database.
Piping Job Specification Table Identifies the location of the Spec Table library.
Library
________________
Short Material Description Library Identifies the library that contains the short bill-of-material
description for all piping commodity items and the BOM
description addenda for taps.
Long Material Description Library Identifies the library that contains the long BOM description for all
piping commodity items. The long BOM description is only used
for requisitions.
Specialty Material Description Identifies the library that contains the BOM description for
Library engineered items, in-line instruments, and pipe supports. This
library tends to be customer-specific.
Standard Note Library Identifies the location of the standard note library.
Label Description Library Identifies the location of the label description library.
Piping Assembly Library Identifies the location of the Piping Assembly library. This library
contains the symbol definitions for assemblies.
Graphic Commodity Library Identifies the library that contains the Eden modules used to place
components in the model.
Physical Data Library Identify the library files that contain the physical data tables for a
range of geometric industry standards.
Commodity Synonym Library Identifies the user-defined library that contains the map for
translating the piping commodity names displayed on Intergraph
forms to names specified by the user.
Orthographic Drawing Borders Identifies the path to the drawing border files to be used when
creating drawings. A set of border files are delivered to the
directory c:\win32app\ingr\pddraw\border\.
3. Key in any changes to the selected RDB files. Refer to Delivered Reference Data in the Reference Data
Manager (PD_DATA) Reference Guide for a listing of the delivered reference data files.
If you specify an unapproved file, the system will use the unapproved file for all Reference Data
Manager operations (such as revising entries in a library).
Refer to the Project Data Manager in the Project Administrator (PD_Project) Reference Guide for
information on setting the choice of data for a model file or drawing.
4. You can select Approved –> Not Approved to copy the approved definition of the selected RDB file to
the Not Approved fields. Select confirm to update the information.
Refer to the individual managers for information on posting the unapproved information to the approved
files.
5. You can select Default Project Control Data to define the default location for the RDB source files used
during the operation of the Reference Data Manager.
________________
6. Select Confirm following each change to the reference to data to accept the specified file location.
— THEN —
1. Select the field to be defined, and key in the location of the source files and the associated node name.
Piping Eden Path / Node the default location for the Eden source files.
Eden Table Path / Node The default location of the Dimension Table and Spec Table source
files.
Piping Spec Path / Node The default location for the neutral files to be used to load the
Specification/Material Reference Database.
Assembly Path / Node The default location for the Piping Assembly Language source files.
Standard Note Library The default location for the Standard Note (code list) source files.
Equipment Eden Path / Node The default location for the Equipment Eden source files.
TDF Table Path / Node The default location for the Equipment tutorial definition files.
Model Builder Path / Node The default location for the model builder language source files.
________________
2. Select the Confirm ( ) button to accept any changes to the Project Control Data.
________________
When defining a new component, the first step is to have a sketch of the graphic symbol that will be used to
represent that component. Since the piping design software has various items, from basic shapes to complex
components, available for placement, the Eden modules for existing components can be extracted and used as
models to define new piping components. In order to extract the Eden modules for an existing piping
component, the item’s model code must be known. There are two ways of determining the model code for a
component:
1. Find the component that would require the least number of modifications to make it appear as the
graphics that will represent the new item.
2. Retrieve the model code from the first line on the bottom of the title block. If more than one "MC" are
listed the first one is all that is needed.
3. Place a component or instrument or specialty item that closely resembles the component to be created.
The model code is the first item displayed in the message box.
The items that appear indented in the message box are the physical data definitions and parametric shape
definitions used for placing the component.
Once the model code is known, you can extract the symbol processor for the existing item. The name of the
symbol processor for a component is always the same as the model code. To obtain all the data about a
component, the physical data and parametric shape definitions called from the symbol processor also need to be
extracted. These modules may require slight to several changes as well as the symbol processor to create a new
component these changes depend on how closely the existing item resembles the new one.
To extract the Eden modules for the symbol processor, physical data definition, and parametric shape definition,
follow these steps:
9. Repeat Steps 5-8 for the physical data and parametric shape definitions.
10. Sub symbol processors (valve operators) can be extracted the same way as above if the symbol processor
has.
11. Extracted modules are placed in the symbols directory pipesym (or equivalent) previously created during
setup.
If the physical data definition for the new component requires dimensions or weight tables that do not already
exist, there are two ways of defining tables:
1. Find the table format that fits the input/output requirements for the new component.
2. Use a screen editor to create the new table(s) following the format requirements found.
3. Place the new table in the tbls (or equivalent) directory previously defined during setup.
4. Identify the table library being used (U.S. practice, European - Din, and so forth) and accept the form.
6. Enter the name of a table used by the physical data definition of the existing component referred to in the
steps above, and press RETURN.
The extracted table is placed in the tbls (or equivalent) directory previously defined during setup.
10. Use a screen editor to modify the extracted table as necessary to contain the type of input/output required
by the new component.
________________
After the Eden modules for an existing component have been extracted, they can be used as models or modified
as needed to make them generate a new component. It is recommended that the symbol processor be created
first and the additional modules be created/edited as needed in the same sequence, in which they are called from
their parent modules.
If the new component will require the creation or editing of forms, turn to the end of this chapter for information
about using DBAccess.
________________
To compile newly created Eden modules, they should be loaded to the existing graphic commodity library.
New modules are compiled as they are loaded. If everything is correct in the code and compilation is
completed, the new modules are incorporated into the graphic commodity library.
5. With the toggle set to Single enter the name of the file containing the new Eden module. If several
modules have to be loaded at one time write their file names to an ASCII file, and enter the name of that
file with the toggle set to List.
7. If any errors are found during compilation, take note of what the errors are, edit the incorrect module, and
try reloading it.
8. Use the List option to verify that the new module(s) is/are part of the graphic commodity library.
5. With the toggle set to Single enter the name of the file containing the new table. If several tables have to
be loaded at one time write their file names to an ASCII file, and enter the name of that file with the
toggle set to List.
7. If any errors are found during compilation, take note of what the errors are, edit the incorrect table, and try
reloading it.
8. Use the List option to verify that the new table(s) was/were successfully loaded.
________________
After the Eden modules of a new component have been defined, the component should be placed in the piping
design environment to verify that it places correctly. Should the component not place correctly, follow these
steps to revise the incorrect Eden module:
9. Edit the file as needed and exit the editor. The system recompiles the file automatically.
10. Place the component using the revised table in the design environment to verify fixes.
________________
DBACCESS is used to create the forms needed to interact with the operator. When a new piping item is
defined through Eden, some form customization may be required to make the new item accessible to the users.
The fastest way to generate a new form or add a new option within an existing form is to copy and edit a
standard delivered form. The following general procedure can serve as a guideline when creating a form that is
to be linked to a new component:
1. Create a directory where forms can be worked on. This should be done on a workstation that has PDS
loaded or that at least has access to the server where PDS products are loaded.
2. Copy into the new forms directory a form used to place an existing component.
6. Use the Single Edit command to modify those gadgets on the form that only require minor changes such
as gadget numbers or text editing.
7. Use the Single Copy command followed by the Single Edit command to copy existing options that should
be left intact and edit the new options to perform the desired task. This is useful when reproducing the
font or line style of a gadget or when the new gadget will perform a task similar to that of the parent
gadget.
8. Use the Characteristics Form when gadget number and other gadget attributes need to be updated.
9. Use Single Delete to remove gadgets from the original form that won’t be needed on the new one.
10. Use the Place Gadget option to place fields, buttons, toggles, text, lines, and so forth.
11. Use the Set Form Parameters option to select gadget colors, styles, fonts, and so forth.
12. Use the Associate Gadgets option to create and manipulate gadget sequences (where the cursor should
appear following an entry in a key-in gadget).
13. If you are familiar with the procedures used in piping and equipment modeling for identifying, accepting,
and rejecting a selection using the mouse, you will find it easy to follow the prompts provided for each of
the FORMS commands
14. When exiting and saving a form make sure that the exit form has the following selections turned on: No
Program Skeleton, Erase Form Yes, Write Form Yes.
________________
15. To place a new or customized form where the piping design software will be able to access it copy the
new form to the pdshell\forms directory.
16. Refer to the DBACCESS documentation for detailed information on using this product.
There is no symbol editor for the Windows NT environment. However, bitmaps (BMP files) can
be used to create symbols.
________________
You can customize the I/Forms for instrument and piping specialty components for ’complete data input’. You
must adhere to the following conventions. If not documented, any I/Form you customize should remain
consistent with those delivered by Intergraph.
Intergraph has chosen to name the I/Forms for instruments with ’complete data input’ using the convention
INA<nnn>, where <nnn> are three unique alphanumeric characters. Use the convention INU<nnn> to avoid
confusion with any Intergraph I/Forms. Similarly, the I/Forms for piping specialties with ’complete data input’
have been named using the convention PSA<nnn>. Use the convention PSU<nnn> to avoid confusion with any
Intergraph I/Forms.
buttons (automatic):
’help’ selection
key: 456
gadget number: 995
button: automatic
key: 403
gadget number: 997
button: automatic
’exit’ selection
key: 4001
gadget number: 998
button: manual
’accept’ selection
________________
key: 4002
gadget number: 999
button: manual
input fields
All input fields should be sequenced and must have the following characteristics. The settings for ’editing
options’ in the Form Builder should be as follows.
change mode
’not required’
’echo input’
’replace text mode’
’notify by line’
The characteristics form in the Form Builder should have the following settings
toggles
You can customize the I/Forms for instrument and piping specialty components for ’partial data input’. You
must adhere to the following conventions to customize these I/Forms. If not documented, any I/Form you
customize should remain consistent with those delivered by Intergraph.
Intergraph has chosen to name the I/Forms for instruments with ’partial data input’ using the convention
INB<nnn>, where <nnn> are three unique alphanumeric characters. Use the convention INU<nnn> to avoid
confusion with any Intergraph I/Form. Similarly, the I/Forms for piping specialties with ’partial data input’
have been named using the convention PSB<nnn>. Use the convention PSU<nnn> to avoid confusion with any
Intergraph I/Forms.
buttons (automatic):
’help’ selection
key: 456
gadget number: 995
button: automatic
key: 403
gadget number: 997
button: automatic
’exit’ selection
key: 4001
gadget number: 998
button: manual
’accept’ selection
key: 4002
gadget number: 999
button: manual
’select/review’ fields
input fields
All input fields should be sequenced and must have the following characteristics. The settings for ’editing
options’ in the Form Builder should be as follows.
change mode
’not required’
’echo input’
’replace text mode’
’notify by line’
________________
The characteristics form in the Form Builder should have the following settings
You can customize the I/Forms for valve operators. You must adhere to the following conventions when
customizing these I/Forms. If not documented, any I/Form you customize should remain consistent with those
delivered by Intergraph.
Intergraph has chosen to name the I/Forms for valve operators using the convention VOP<nnn>, where <nnn>
are three unique alphanumeric characters. Use the convention VOU<nnn> to avoid confusion with any
Intergraph I/Forms.
buttons (automatic):
’help’ selection
key: 456
gadget number: 995
button: automatic
key: 403
gadget number: 997
button: automatic
’exit’ selection
key: 4001
gadget number: 998
button: manual
’accept’ selection
key: 4002
________________
gadget number: 999
button: manual
input fields
All input fields should be sequenced and must have the following characteristics. The settings for ’editing
options’ in the Form Builder should be as follows.
change mode
’not required’
’echo input’
’replace text mode’
’notify by line’
________________
The characteristics form in the Form Builder should have the following settings
toggles
You can customize the I/Form, PSP000.fb, for use as the pipe support menu. You must adhere to the following
conventions in customizing this I/Form. If not documented, any other gadgets on the I/Form should remain
consistent with those delivered by Intergraph.
key: "$<i/form_name>,<model_code>"
where
Intergraph has chosen to name the I/Forms for physical pipe supports using the convention PSP<nnn>, where
<nnn> are three unique alphanumeric characters.
key: "#<pipe_support_type>,<model_code>"
where
Intergraph has chosen to name the I/Forms for physical pipe supports using the convention PSP<nnn>, where
<nnn> are three unique alphanumeric characters.
________________
gadget number: defined by user
’help’ selection
key: 456
gadget number: 995
button: automatic
key: 403
gadget number: 997
button: automatic
’exit’ selection
key: 4001
gadget number: 998
button: manual
’accept’ selection
key: 4002
gadget number: 999
button: automatic
You can customize the I/Forms for pipe supports. You must adhere to the following conventions to customize
these I/Forms. If not documented, any I/Form you customize should remain consistent with those delivered by
Intergraph.
Intergraph has chosen to name the I/Forms for pipe supports using the convention PSP<nnn>, where <nnn> are
three unique alphanumeric characters. Use the convention SPU<nnn> to avoid confusion with any Intergraph
I/Forms.
________________
I/Forms delivered by Intergraph may be used as examples for customization.
buttons (automatic):
’help’ selection
key: 456
gadget number: 995
button: automatic
key: 403
gadget number: 997
button: automatic
’exit’ selection
key: 4001
gadget number: 998
button: manual
’accept’ selection
key: 4002
gadget number: 999
button: manual
input fields
Gadgets 121 through 140 in the previous list are input fields that pass dimensions into Eden
only. Gadgets 141 through 145 pass the dimensions into Eden and pdtable_80. Gadgets 161
through 165 pass dimensions only into pdtable_80 in the database.
All input fields should be sequenced and must have the following characteristics. The settings for ’editing
options’ in the Form Builder should be as follows.
________________
change mode
’not required’
’echo input’
’replace text mode’
’notify by line’
The characteristics form in the Form Builder should have the following settings:
This section lists the EDEN error messages and explanations of the messages.
This error occurs when a connect point is skipped in the definition. For example, connect point 3 is defined
without first defining connect point 2.
This is a general purpose message that simply means one or more errors were encountered during generation of
the object code. The error will also be covered by one of the more specific error messages.
This error occurs when the EDEN module has an assignment statement trying to assign a value to a read-only
variable. Read-only variables include: , , , ,
, , , and .
This error occurs when a subroutine name has been mistyped and does not match any of the valid subroutine
names. The refers to the sequential number of the call statement within the EDEN module.
This error occurs when an argument has been left out of a call statement. The refers to the sequential number
of the call statement in error within the EDEN module.
This error occurs when an extra argument has been found for a particular call statement. The refers to the
sequential number of the call statement in error within the EDEN module.
This error occurs when a call statement is expecting a particular argument and receives and incorrect argument.
An example would be the call statement. It expects one of the following
variables to be used for the arguments: , , . If any
other variable is used (i.e. a user-defined keyword), then this error will occur. The refers to the incorrect
argument in call statement .
This error occurs when a call statement is expecting a particular data-type in the argument variable. An
example would be the call statement. It requires the second argument to be
a data-type. If an type variable was used in this statement, an error would occur. The
refers to the incorrect argument in call statement .
________________
This error occurs when there is an incorrect argument in a call statement. It is similar to the two previous errors.
This error occurs when the symbol id specified in the EDEN module exceeds 28 characters - the maximum
allowed. The symbol name is automatically truncated to 28 characters.
This error occurs when a blank symbol name is specified in the EDEN module.
Due to an internal software error, the data needed to complete the object code generation for a conditional
statement in the EDEN code cannot be accessed. You should contact Intergraph and send the EDEN module if
this error is encountered.
This error occurs when the total number of bytes of object code has exceeded 9560.
The number of nested if-then-else clauses is limited to 5. This error indicates that this nesting limit has been
exceeded.
Due to an internal software error, the data-type for the variable cannot be determined.
The symbol file that was specified is read-only or cannot be opened for some other reason. You should check
permissions for the file and re-try.
The graphic commodity library for the project cannot be opened or located. You should check which library is
specified using the Reference Database Management Data form to review the current setting for the graphic
commodity library.
This error indicates an internal problem in PDS, and is not related to the EDEN module being processed. If this
error occurs, contact Intergraph.
________________
An error occurred while trying to write the text of the EDEN module into the text library. Either the library
could not be opened for some reason, or there was an internal problem with the library.
One of the error messages listed previously should be added at the end of this message when an error occurs
during the object code generation part of compiling.
This error occurs when a in the EDEN module has character data in it.
This error occurs when a string variable in the EDEN module exceeds the 50 character maximum length.
This error occurs when the EDEN module has an illegal use of a relational operator ( , , etc.).
This error occurs when the compiler encounters a phrase in the EDEN module that cannot be interpreted as a
valid number, keyword, phrase or variable.
This error occurs when incorrect syntax is used in the EDEN module. For example, this error occurs when the
statement is left off an if-then-else clause.
This error indicates an internal problem in PDS. If this error occurs, contact Intergraph.
This error occurs when the EDEN module tries to subscript a variable that is not an type variable.
This error occurs when the EDEN module tries to subscript a variable that is not an type variable.
This error occurrs when the EDEN module contains code that is not valid.
________________
________________
AABBCC code an alphanumeric code which represents a specific item type within a given
class. This value is also referred to as the Item Name.
beginning statements Eden statements that define the types of modules being entered.
call statement Eden statement used to execute system primitives (or subroutines).
code list A set of acceptable values for a particular attribute (column) which can be
referred to by an index number or selected from a form. For example, the
code list set for the fluid code attribute allows you to select from a set of
standard entries (such as P for process or MMA for methyl alcohol).
code list sets Files which define the values for all codelists having universal applicability
within PDS.
code-listed attribute an attribute linked to a specific entry in a code list set. These attribute
values can be referenced by entering the associated code list number.
color table A file which contains the standard color settings to be used for a design file
or set of design files.
comment Text inserted into Eden code which is ignored by the system. Comments
can be used to describe the code and to provide instructions to the user.
commodity code a user-defined code that provides an index to the material descriptions in the
Material Data Tables of the Specification/Material Database.
database table The part of the database that is made of rows and columns and contains
information about the project and design elements.
design database a database which contains the non-graphic design data for a project. Each
model represents a partition of the database.
Do While statement Eden statement used to form indefinite loops. The condition of a Do While
statement must equal a logical value (either true or false). The body of the
Do While statement will be repeatedly executed as long as the logical
expression remains true.
Eden module the source code used to define and place parametric symbols in the model.
Eden modules are contained in the Graphic Commodity Library.
ending statements Eden statements that mark the end of the module in which the system has
been processing.
form An interface or screen menu designed with the I/FORMS product or with
the DM/DBA product. Because many of the screen menus in the
application software on CLIX workstations are built with I/FORMS, you
must have the FORMS_S product on your workstation. There is no such
requirement for Windows NT.
format file a file that determines the contents and format of a report. It defines all the
needed criteria for creating the actual report, including which database
attributes are reported.
full path name The name of the entire path or directory hierarchy to a file, including the file
name. See also relative path name.
generic physical data Physical data module containing information common to more than one
module symbol. Generic physical data modules are called by specific physical data
modules.
________________
Geometric industry a code-listed attribute which identifies the source of the data (industry
standard standard such as ANSI, ISO, or DIN, or company standard) from which the
specific geometry of a commodity item is deduced.
global variable System-defined names that can be referred to at any subroutine level.
Graphic Commodity a data library which contains the parametric symbol definitions (Eden
Library modules) required to place piping and instrument components in a 3-D
model.
If - then - else statement Eden statement that allows a group of statements to be conditionally
executed.
Indexed Do statement Eden statement which allows loops that execute a specified number of
times.
interference parametric Eden code used to define the interference envelope for a component, to be
shape definition used in interference detection to show clashes in the model.
item name name used to access the Piping Job Specification. Refer to AABBCC code.
keyword Eden label for specific values or groups of values. Keywords can appear as
arguments in system-defined primitives (or subroutines).
Label Description Library a library which defines the types of labels and the label formats used in PDS
3D.
local variable Variable that is declared in the symbol definition, and which can only be
referred to in the same Eden module as the variable itself.
logical operator Operator used to combine relational expressions into more complex logical
expressions.
Long Material Description a library which contains the long bill-of-material descriptions for all piping
Library commodities.
MC model code
model code name used to reference the parametric definition of a component. The
model code is also referred to as the new item name.
model parametric shape Eden code used to define the symbol graphics to be placed in the model.
definition
neutral file an ASCII file which can be used to load data into a library, database, or
design file.
object library a compiled library which contains reference data which can be accessed by
the task. For example, the Material Description Library.
OC operator code
OT operator type
parametric shape Eden code used to describe the graphics symbol placed for a component in
definition the model. Parametric shape definitions are divided into two basic types:
model parametric shapes and interference envelopes.
partition a subset of the database. Each model represents a partition of the database.
path name The sequence of directories leading to a file. See also full path name and
relative path name.
piping specialty a user-defined component. Specialty items can be defined in the Piping Job
Specification database or defined interactively while working in a model.
physical data definition A set of code which gathers data to use in placing graphics for commodity
items.
physical data table a table which contains the physical data such as dimensions, weights, and
surface area required for component placement, interference checking,
stress analysis, and MTO reporting. These tables can be stored in different
physical data libraries segregated by geometric industry standard (practice).
piping assembly a group of associated components that can be placed as a logical group
(such as a valve with mating flanges) using Piping Assembly Language
syntax.
________________
Piping Assembly Library a library which contains the piping assembly definitions which define the
parameters necessary to place a piping assembly automatically in the model.
Piping Job Specification non-graphics data which provides selection criteria for piping commodity
items, engineered items, and instruments.
plant A group of facilities and equipment used to perform one or more material
processing functions within a given geographical area. One company may
have many plants located in many different geographical locations.
primitive System-defined Eden routines that perform specific functions for symbol
definition.
project A term used for the convenient grouping of either all or part of the facilities
and equipment that constitute a plant. At a given time, the items that
constitute the plant can be included in one or more projects.
project control database a database used to define all the information related to managing a project
including design area definitions, interference management data, and
revision management data.
Relational DataBase A database management system that uses SQL, the Structured Query
Management System Language, to implement and query data in relational tables.
RDBMS
Relational Interface A generic relational database interface that isolates the differences in
System specific vendors’ relational database management systems.
relational operator Operator used to form relational expressions that test the value of an Eden
expression or establish conditions under which a group of Eden statements
can be executed.
relative path name The sequence of directories leading from the current directory to a particular
file. See also path name and absolute path name.
________________
replacement statement Eden statements used to set variables or perform calculations.
row A unit of related information in a table. One collection of column values for
a table.
Short Material Description a library which contains the short bill-of-material descriptions for all piping
Library commodity items and the description addenda for taps.
SN symbol name
source file the uncompiled version of a language file or other data table. Source files
are usually contained in text libraries. See also neutral file.
Spec Table Library a library which contains the Piping Job Specification tables and other
special tables which contain nonphysical data.
Specialty Material a library which contains the bill-of-material descriptions for engineered
Description Library items, instruments, and pipe supports.
specific physical data Physical data module that determines the dimensions and other physical
module properties for a specific component.
standard note a set of acceptable responses defined in the Standard Note Library. See also
code-list.
Standard Note Library library which contains the text for code-listed attributes and standard notes.
All attributes identified as code-listed are stored in the database as integer
data.
sub-symbol processor A set of code used to produce graphics for a subcomponent on a commodity
item.
symbol processor The controlling function or logic used to produce the graphics for a
commodity item.
________________
task A specialized PDS function such as the Piping and Instrumentation
Diagrams (P&ID) task or the Piping Designer task.
task database Working database in which the actual engineering or design effort is
performed. A separate task database exists for each PDS task.
text library a library which contains a set of ASCII files. The PDS 3D software enables
you to extract source files from a text library.
type 63 element an element used to store active parameters and customization data in a
model or drawing. Most of the customization data defined with the Project
Data Manager is stored in a type 63 element.
unit A grouping of those parts of the schematic and individual worlds of a plant
that together perform a given process function.
A draw (continued)
arithmetic operators 51 mitered torus 78
assign octagon 79
connect point 68 parametric shape 80
generic tap 69 projected
tap 70 rectangle 63
triangle 64
B semi ellipsoid 65
beginning statements 40 sphere 66
bends and branches 35 torus 67
bolts 36 with capped ends 81
C E
call Eden
statement 53 basics 13
comments 50 language structure 39
compiling new modules 109 beginning statements 40
compute perpendicular vector 71 comments 50
connect ending statements 40
point expressions 53
data 34 functions 56
convert keywords 47
NPD to subunits 57 operators 51
replacement statements 53
D variables 41
data editing modules 108
retrieval ending statements 40
from the physical data library 19 example
default project control data 103 physical data look-up 19
define expressions 53
active call 53
orientation 58 do while 53
connect point geometry 72 if - then - else 55
dimension data indexed do 54
example of data look-up 19 replacement statements 53
display extracting sample modules 105
tutorial 73
do while statement 53 F
draw flanges 36
cone 60 functions 56
with capped ends 74
cylinder 61 G
with capped ends 75 gaskets 36
eccentric cone 62 get
with capped ends 76 physical data 82
hexagon 77
________________
global variables 42 O
piping 43 operators 51
graphic arithmetic 51
commodity logical 52
library 16 relational 52
parametric shape definitions 30
physical data definitions 26 P
sub-symbol processor 25 parametric shape definitions 30
symbol processors 23 physical
data data
library 15 definitions 26
graphic commodity library 16 tables 18
notes for graphic commodity data 34 data look-up 19
physical data tables 18 data retrieval 19
pipe 37
H piping
hose 37 specialty components 113
place
I COG
if - then - else statement 55 location 86
indexed do statement 54 connect point 87
primitives 57
K convert NPD to subunits 57
keywords define active orientation 58
common 47 draw
piping 47 cone 60
cylinder 61
L eccentric cone 62
local variables 41 projected rectangle 63
logical operators 52 projected triangle 64
semi ellipsoid 65
M sphere 66
modules torus 67
compiling 109 piping
editing 108 assign
extracting 105 connect point 68
revising 110 generic tap 69
move tap 70
along compute perpendicular vector 71
axis 83 define connect point geometry 72
by distance 84 display tutorial 73
to draw
connect point 85 cone with capped ends 74
cylinder with capped ends 75
N eccentric cone with capped ends 76
notes hexagon 77
graphic commodity data 34 mitered torus 78
bends and branches 35 octagon 79
bolts, gaskets, and flanges 36 parametric shape 80
connect point data 34 torus with capped ends 81
pipe, tubing, and hose 37 get physical data 82
________________
primitives (continued)
piping (continued)
move
along axis 83
by distance 84
to connect point 85
place
COG location 86
connect point 87
prompt to orient operator 88
read table 89
rotate orientation 90
prompt to orient operator 88
R
read table 89
reference database management data 100
default project control data 103
relational operators 52
replacement statements 53
revising modules 110
rotate orientation 90
S
sample modules
extracting 105
specialty components
piping 113
statements
beginning 40
call 53
do while 53
ending 40
if - then - else 55
indexed do 54
replacement 53
structure Eden 39
sub-symbol processor 25
symbol processors 23
T
tubing 37
typefaces 9
V
variables 41
global 42
local 41
________________