0c15b8_04f6fbfbdb9068d7efc96a7a213a9527.pdf

March 30, 2018 | Author: Kodali Naveen Kumar | Category: Library (Computing), Keyboard Shortcut, Subroutine, Computer Keyboard, Modularity
Share Embed Donate


Short Description

pds eden...

Description

PDS Eden Interface Reference Guide - Volume 1:Piping

Document Number DPDS3-PB-200013A DPDS3-PB-200013B

Version PDS 7.1 PDS 7.3

Date April 2002 October 2004

Pages 1-140 Cover/Notice

Copyright Copyright © 1984-2004 Intergraph Corporation. All Rights Reserved. Including software, file formats, and audiovisual displays; may be used pursuant to applicable software license agreement; contains confidential and proprietary information of Intergraph and/or third parties which is protected by copyright law, trade secret law, and international treaty, and may not be provided or otherwise made available without proper authorization.

Restricted Rights Legend Use, duplication, or disclosure by the Government is subject to restrictions as set forth in subparagraph (c) of the Contractor Rights in Technical Data clause at DFARS 252.2277013, subparagraph (b) of the Rights in Computer Software or Computer Software Documentation clause at DFARS 252.227-7014, subparagraphs (b)(1) and (2) of the License clause at DFARS 252.227-7015, or subparagraphs (c) (1) and (2) of Commercial Computer Software---Restricted Rights at 48 CFR 52.227-19, as applicable. Unpublished---rights reserved under the copyright laws of the United States. Intergraph Corporation Huntsville, Alabama 35894-0001

Warranties and Liabilities All warranties given by Intergraph Corporation about equipment or software are set forth in your purchase contract, and nothing stated in, or implied by, this document or its contents shall be considered or deemed a modification or amendment of such warranties. Intergraph believes the information in this publication is accurate as of its publication date. The information and the software discussed in this document are subject to change without notice and are subject to applicable technical product descriptions. Intergraph Corporation is not responsible for any error that may appear in this document. The software discussed in this document is furnished under a license and may be used or copied only in accordance with the terms of this license. No responsibility is assumed by Intergraph for the use or reliability of software on equipment that is not supplied by Intergraph or its affiliated companies. THE USER OF THE SOFTWARE IS EXPECTED TO MAKE THE FINAL EVALUATION AS TO THE USEFULNESS OF THE SOFTWARE IN HIS OWN ENVIRONMENT.

Trademarks Intergraph, the Intergraph logo, SmartSketch, FrameWorks, SmartPlant, INtools, MARIAN, and PDS are registered trademarks of Intergraph Corporation. Microsoft and Windows are registered trademarks of Microsoft Corporation. MicroStation is a registered trademark of Bentley Systems, Inc. ISOGEN is a registered trademark of Alias Limited. Other brands and product names are trademarks of their respective owners.

________________

If You Need Assistance

If You Need Assistance Intergraph Online 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.

Support 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 upto-date list of international offices and distributors is available on the web at http://www.intergraph.com.

Intergraph Directory 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.

Intergraph General Information All countries — 1-256-730-2000

Training Registration 1-800-766-7701 (U.S. Only) 1-256-730-5400 (Outside the U.S.)

Mailing Address Intergraph Process, Power & Offshore 300 Intergraph Way Madison, Alabama 35758 U.S.A. You can also reach us by electronic mail at [email protected].

3

________________ Documentation Contacts We are constantly working on updates and improvements to the documents and other educational media. If you have any suggestions on where we can improve the documentation or where you think more information is needed, let us know. You can reach us by: Mail

4

Intergraph Process, Power & Offshore Documentation Manager 300 Intergraph Way Madison, AL 35758

________________

Table of Contents

Table of Contents

1.

2.

3.

If You Need Assistance ........................................................................................................ Intergraph Directory .............................................................................................................

3 3

General Conventions ....................................................................................................................

9

Keyboard Conventions ......................................................................................................... Terminology .........................................................................................................................

10 11

The Eden Basics ...........................................................................................................................

13

Graphic Commodity Data ............................................................................................................ Graphic Commodity Library ........................................................................................................ Physical Data Tables ....................................................................................................................

15 16 18

Data Retrieval from the Physical Data Library .................................................................... Example of Physical Data Look-Up .....................................................................................

19 19

Component Placement Example ..................................................................................................

21

Eden Modules ..............................................................................................................................

21

Symbol Processors ................................................................................................................ Sub-Symbol Processor .......................................................................................................... Physical Data Definitions ..................................................................................................... Parametric Shape Definitions ...............................................................................................

23 25 26 30

Forms Interface ............................................................................................................................ Notes for Graphic Commodity Data ............................................................................................

33 34

Connect Point Data ............................................................................................................... Bends and Branches .............................................................................................................. Bolts, Gaskets, and Flanges .................................................................................................. Pipe, Tubing, and Hose .........................................................................................................

34 35 36 37

Eden Language Structure .............................................................................................................

39

Beginning Statements .................................................................................................................. Ending Statements ....................................................................................................................... Variables ...................................................................................................................................... Common Keywords ..................................................................................................................... Comments .................................................................................................................................... Operators ...................................................................................................................................... Expressions .................................................................................................................................. Functions ...................................................................................................................................... Primitives .....................................................................................................................................

40 40 41 47 50 51 53 56 57

5

________________ PDS Eden for Piping - April 2002

4.

6

Convert NPD to Subunits ..................................................................................................... Define Active Orientation ..................................................................................................... Draw Cone ............................................................................................................................ Draw Cylinder ...................................................................................................................... Draw Eccentric Cone ............................................................................................................ Draw Projected Rectangle .................................................................................................... Draw Projected Triangle ....................................................................................................... Draw Semi-Ellipsoid ............................................................................................................ Draw Sphere ......................................................................................................................... Draw Torus ........................................................................................................................... Assign Connect Point ........................................................................................................... Assign Generic Tap .............................................................................................................. Assign Tap ............................................................................................................................ Compute Perpendicular Vector ............................................................................................. Define Connect Point Geometry ........................................................................................... Display Tutorial .................................................................................................................... Draw Cone With Capped Ends ............................................................................................. Draw Cylinder With Capped Ends ....................................................................................... Draw Eccentric Cone With Capped Ends ............................................................................. Draw Hexagon ...................................................................................................................... Draw Mitered Torus .............................................................................................................. Draw Octagon ....................................................................................................................... Draw Parametric Shape ........................................................................................................ Draw Torus with Capped Ends ............................................................................................. Get Physical Data ................................................................................................................. Move Along Axis ................................................................................................................. Move By Distance ................................................................................................................ Move To Connect Point ........................................................................................................ Place COG Location ............................................................................................................. Place Connect Point .............................................................................................................. Prompt to Orient Operator .................................................................................................... Read Table ............................................................................................................................ Rotate Orientation .................................................................................................................

57 58 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90

Connect Point Geometry ..............................................................................................................

91

Creating a New Piping Component ..............................................................................................

97

Eden Setup ...................................................................................................................................

97

Reference Database Management Data ................................................................................ Default Project Control Data ................................................................................................

100 103

Extracting Sample Modules ......................................................................................................... Editing Modules ........................................................................................................................... Compiling New Modules ............................................................................................................. Revising Modules ........................................................................................................................ Basic Use of Forms ...................................................................................................................... Piping Specialty Components ......................................................................................................

105 108 109 110 111 113

________________

Table of Contents

Appendix A:

EDEN Error Messages ...............................................................................................

125

Glossary ...............................................................................................................................................

129

Index ....................................................................................................................................................

137

7

________________ PDS Eden for Piping - April 2002

8

________________

Table of Contents

General Conventions This document contains many visual cues to help you understand the meaning of certain words or phrases. The use of different fonts for different types of information allows you to scan the document for key concepts or commands. Symbols help abbreviate and identify commonly used words, phrases, or groups of related information.

Typefaces Italic

Indicates a system response, which is an explanation of what the software is doing. For example, The text is placed in the viewing plane.

Bold

Indicates a command name, parameter name, or dialog box title. Command paths are shown using an arrow between command names. For example, Choose File > Open to load a new file.

Sans serif

Indicates a system prompt or message, which requires an action be taken by the user. For example, Select first segment of alignment

Bold Typewriter Indicates what you should literally type in. For example, Key in original.dat to load the ASCII file. Normal Typewriter Indicates an actual file or directory name. For example, The ASCII report is stored in the layout.rpt file.

9

________________ PDS Eden for Piping - April 2002

Symbols This document uses the following symbols to represent mouse buttons and to identify special information:

Command button Data button (usually the left mouse button) Reset/reject button (usually the right mouse button) Tentative button (usually the center mouse button) Note — Important supplemental information.

Warning — Critical information that could cause the loss of data if not followed.

Technical tip or information — provides information on what the software is doing or how it processes information. Map or path — shows you how to get to a specific command or form.

More information — indicates there is additional or related information.

Need a hint — used with activities and labs, provides a tip or hint for doing the exercises.

Keyboard Conventions 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.

10

ALT CTRL DEL ENTER ESC

Alternate key Control key Delete key Enter key Escape key

CTRL+z ESC,k

To hold down the Control key and press Z. To press the Escape key, then K.

________________

Table of Contents

Terminology Click

To use a mouse or key combination to pick an item that begins an action. For example, Click Apply to save the changes.

Select

To mark an item by highlighting it with key combinations or by picking it with your cursor. Selecting does not initiate an action. After selecting an item, you click the action you want to affect the item. For example, Select the file original.dat from the list box, then click Delete to remove it from the directory. In addition, you would select items to define parameters, such as selecting toggle buttons. This also applies to selecting graphic elements from the design file. For example, Select the line string to define the graphic template.

Tentative-select

To place a tentative point on an existing graphic element in a design file. If you are using the CLIX operating system, you tentative-select by double-clicking with a mouse or pressing on a hand-held cursor. If you are using the Windows NT operating system, you tentative-select by pressing a left-button, right-button chord.

Double-click

To select and execute a command by clicking the mouse or hand-held cursor button twice in rapid succession. This term implies that you are clicking the data button () as part of a menu or dialog box action. For example, Double-click on the file original.dat to load it into the new surface.

Drag

To press and hold the data button () while moving the mouse or hand-held cursor.

Type

To key a character string into a text box.

Key in

To type in data and press ENTER to enter the data and execute the default action. In a dialog box, pressing TAB after keying in data will enter the data and move the cursor to the next field.

11

________________ PDS Eden for Piping - April 2002

12

________________

The Eden Basics

1.

The Eden Basics

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: GATSP GAT GATF GATR

short pattern gate valve long pattern, bolted or male ends gate valve regular pattern, female ends, full port gate valve regular pattern, female ends, reduced port gate valve

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. Model graphic (V1). 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.

13

1.Intro

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.

________________ PDS Eden for Piping - April 2002

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. Call Draw_Cone (X, Y, Z)

The output produced will look similar to the following graphic:

You can call up to five nested subroutines within a program.

14

________________

Graphic Commodity Data

Graphic Commodity Data 1.Intro

The graphic commodity data is contained in the following object libraries: Graphic Commodity Library — The delivered file ˜\pdshell\lib\pip_gcom.l contains parametric definitions for the components. 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.

15

________________ PDS Eden for Piping - April 2002

Graphic Commodity Library 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) Assign connect point data from the Piping Job Specification 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. Eden is composed of three major modules. 1.

Symbol Processors and Sub-Symbol Processors

2.

Physical Data Subroutines

3.

Parametric Shape Definitions

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: ˜\pdshell\lib\pip_gcom.l — object library ˜\pdshell\lib\pip_gcom.l.t — text library 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.

16

________________

Graphic Commodity Library

1.Intro

Eden Module Relationships The entries in the library use the following prefixes to identify the type of data: SP PD MG IG SS

Symbol Processor Physical Data Definition Module Model Parametric Shape Definition Module Interference Envelope Parametric Shape Definition Module Sub-Symbol Processor Module

Each module must be given a unique name within the graphic commodity library.

17

________________ PDS Eden for Piping - April 2002

Physical Data Tables 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: ˜\rdusrdb\us_pcdim.l — object library ˜\rdusrdb\us_pcdim.l.t — text library ˜\rdusrdb\us_pcdim.l.r — revision library 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 dimensional data 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 commodity data 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. fluid weight = water weight * specific gravity for fluid operating weight = dry weight + fluid weight — The surface area data enables the system to perform paint requirement calculations and insulation weight calculations.

18

________________

Physical Data Tables

Specific commodity dry weight data Piping Specialty physical data

Instrument physical data 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.

Data Retrieval from the Physical Data Library 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.

Example of Physical Data Look-Up In order to place the valve described earlier in this section, the system references the following tables:

Generic 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 table_name= ’BLT’ // Term_Type_1 // Pr_Rating_1 // Gen_Flag_Green

Using the values from the Piping Job Specification (PMC=1C0031, Item Name=6Q1C01), the actual table name will be BLT_20_150_5 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).

19

1.Intro

The dimensions, dry weight, water weight, and surface area for specialty items can be stored in a set of tables or defined at placement.

________________ PDS Eden for Piping - April 2002

Specific Tables 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. Commodity Code (P59). 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.

20

________________

Component Placement Example

2.

Component Placement Example

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.

Eden Modules Eden is composed of three major modules: Symbol Processors Sub-Symbol Processors

2.

Physical Data Subroutines

3.

Parametric Shape Definitions

2.Placement

1.

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: ˜\pdshell\lib\pip_gcom.l — object library ˜\pdshell\lib\pip_gcom.l.t — text library The modular approach provides for more efficient storage of information in these libraries by enabling common information to be shared by different symbols.

21

________________ PDS Eden for Piping - April 2002

The following graphic illustrates the relationship among these modules:

Eden Module Relationships 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 PD UF MG IG SS

Symbol Processor Physical Data Definition Module User Function Module Model Parametric Shape Definition Module Interference Envelope Parametric Shape Definition Module Sub-Symbol Processor Module

Each module must be given a unique name within the graphic commodity library.

22

________________

Symbol Processors

Symbol Processors 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 Accesses the active component design parameters Assigns connect points Calls the required physical data modules

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. Symbol_Processor

’MODULE NAME’

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.

23

2.Placement

Determines and calls the required parametric shape modules.

________________ PDS Eden for Piping - April 2002

! REGULAR PATTERN, BOLTED OR MALE ENDS GATE VALVE Symbol_Processor ’GAT’ Call Assign_Connect_Point ( GREEN, CP1 ) Call Assign_Connect_Point ( RED, CP2 ) physical_data_source = ’V1’ // Standard_Type Call Get_Physical_Data ( physical_data_source ) parametric_shape = ’V1’ Call Draw_Parametric_Shape ( parametric_shape ) Valve_Operator = DABS ( Valve_Operator ) If ( Valve_Operator .NE. 0 ) Then If ( Valve_Operator .LT. 1000 ) Then Subcomponent = ’OP’ // Valve_Operator Else Subcomponent = ’A’ // Valve_Operator EndIf Operator_Orient = FALSE EndIf Stop End

Listing for Symbol Processor SPGAT

24

________________

Sub-Symbol Processor

Sub-Symbol Processor A subcomponent call in a symbol processor module indicates a sub-symbol processor. Subcomponents are additions to symbols such as an operator on a valve. The first line of a sub-symbol processor module indicates the module type and the module name. Sub_Symbol_Processor

’module name’

This statement tells the system to use the category code SS for the prefix.

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.

! HANDWHEEL OPERATOR Sub_Symbol_Processor ’OP_3’ If ( Operator_Orient .EQ. TRUE ) Then prompt = 1.0 Call Prompt_to_Orient_Operator ( prompt ) EndIf physical_data_source = ’OPERATOR_3’ Call Get_Physical_Data ( physical_data_source ) parametric_shape = ’OP3’ Call Draw_Parametric_Shape ( parametric_shape ) Stop End

Listing for Sub-Symbol Processor SSOP_3

25

2.Placement

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.)

________________ PDS Eden for Piping - April 2002

Physical Data Definitions The system uses the physical data definitions to determine the dimension data, weight data, and surface area data using the active design parameters. Physical data modules are identified by the statement Physical_Data_Definition

’MODULE NAME’

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. Practice U.S. Practice European - DIN European - British Standard European - Practice A International - JIS International - Australian European - Practice B International - Practice A International - Practice B Company Practice

Range 1-99 100-199 200-299 300-399 400-499 500-599 600-699 700-799 800-899 900-999

Suffix AMS DIN BRITISH_STD EURO_A JIS AUS EURO_B INT_A INT_B COMPANY

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.

Specific Physical Data Modules 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. Physical_Data_Definition ’V1_AMS’ physical_data_source = ’VALVE_2_AMS’ Call Get_Physical_Data ( physical_data_source ) Call Read_Table ( Table_Name_A, input, output ) Surface_Area = Output_1 Wet_Weight = Output_2

26

________________

Physical Data Definitions

F_to_C_Dim_1 = Output_3 If ( Term_Type_1 .EQ. Term_Type_2 ) Then F_to_C_Dim_2 = F_to_C_Dim_1 Else F_to_C_Dim_2 = Output_4 EndIf F_to_F_Dim = F_to_C_Dim_1 + F_to_C_Dim_2 If ( Valve_Operator .LE. 24.0 ) Then Call Read_Table ( Table_Name_W, input, output ) Dry_Weight = Output_1 EndIf Return End

2.Placement

Listing for Physical Data Module PDV1_AMS

Generic Physical Data Modules 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. Physical_Data_Definition ’VALVE_2_AMS’ Input_1 = Nom_Pipe_D_1 If ( Gen_Type_1 .EQ. BOLTED ) Then table_name = ’BLT’ // Term_Type_1 // Pr_Rating_1 // Gen_Flag_Green Call Read_Table ( table_name, input, output ) Facing_OD_1 = Output_1 Thickness_1 = Output_2 Seat_Depth_1 = Output_3 Thickness_1 = Thickness_1 - Seat_Depth_1 CP_Offset_1 = Gasket_Sep_1 If ( Symbology .EQ. MODEL ) Then Thickness_1 = 0.0 Depth_1 = 0.0 Pipe_OD_1 = 0.0 Body_OD_1 = Facing_OD_1 Else table_name = ’MAL_300_5’ Depth_1 = Thickness_1 Input_1 = Nom_Pipe_D_1 Call Read_Table ( table_name, input, output ) Pipe_OD_1 = Output_2 Body_OD_1 = Pipe_OD_1 EndIf Else If ( Gen_Type_1 .EQ. MALE ) Then table_name = ’MAL’ // Term_Type_1 // Gen_Flag_Green Call Read_Table ( table_name, input, output ) Facing_OD_1 = Output_2 Thickness_1 = 0.0 Depth_1 = 0.0 Seat_Depth_1 = 0.0 CP_Offset_1 = 0.0 Pipe_OD_1 = Facing_OD_1 Body_OD_1 = Facing_OD_1 Else table_name = ’FEM’ // Term_Type_1 // Pr_Rating_1 // Gen_Flag_Green Call Read_Table ( table_name, input, output ) Facing_OD_1 = Output_1 Depth_1 = Output_2 Seat_Depth_1 = 0.0 Thickness_1 = 0.0

27

________________ PDS Eden for Piping - April 2002

If ( symbology .EQ. MODEL ) Then Depth_1 = 0.0 CP_Offset_1 = 0.0 Pipe_OD_1 = 0.0 Body_OD_1 = Facing_OD_1 Else CP_Offset_1 = -Depth_1 table_name = ’MAL_300_5’ Call Read_Table ( table_name, input, output ) Pipe_OD_1 = Output_2 Body_OD_1 = Pipe_OD_1 EndIf EndIf EndIf If ( Term_Type_2 .EQ. Term_Type_1 .AND. Nom_Pipe_D_1 .EQ. Nom_Pipe_D_2 ) Then Facing_OD_2 = Facing_OD_1 Pipe_OD_2 = Pipe_OD_1 Body_OD_2 = Body_OD_1 Thickness_2 = Thickness_1 Depth_2 = Depth_1 Seat_depth_2 = Seat_Depth_1 CP_Offset_2 = CP_Offset_1 Else Input_1 = Nom_Pipe_D_2 If ( Gen_Type_2 .EQ. BOLTED ) Then table_name = ’BLT’ // Term_Type_2 // Pr_Rating_2 // Gen_Flag_Red Call Read_Table ( table_name, input, output ) Facing_OD_2 = Output_1 Thickness_2 = Output_2 Seat_Depth_2 = Output_3 Thickness_2 = Thickness_2 - Seat_Depth_2 CP_Offset_2 = Gasket_Sep_2 If ( Symbology .EQ. MODEL ) Then Thickness_2 = 0.0 Depth_2 = 0.0 Pipe_OD_2 = 0.0 Body_OD_2 = Facing_OD_2 Else Depth_2 = Thickness_2 table_name = ’MAL_300_5’ Input_1 = Nom_Pipe_D_2 Call Read_Table ( table_name, input, output ) Pipe_OD_2 = Output_2 Body_OD_2 = Pipe_OD_2 EndIf Else If ( Gen_Type_2 .EQ. MALE ) Then table_name = ’MAL’ // Term_Type_2 // Gen_Flag_Red Call Read_Table ( table_name, input, output ) Facing_OD_2 = Output_2 Thickness_2 = 0.0 Depth_2 = 0.0 Seat_Depth_2 = 0.0 CP_Offset_2 = 0.0 Pipe_OD_2 = Facing_OD_2 Body_OD_2 = Facing_OD_2 Else table_name = ’FEM’ // Term_Type_2 // Pr_Rating_2 // Gen_Flag_Red Call Read_Table ( table_name, input, output ) Facing_OD_2 = Output_1 Depth_2 = Output_2 Seat_Depth_2 = 0.0 Thickness_2 = 0.0 If ( Symbology .EQ. MODEL ) Then Depth_2 = 0.0 CP_Offset_2 = 0.0 Pipe_OD_2 = 0.0 Body_OD_2 = Facing_OD_2 Else CP_Offset_2 = -Depth_2 table_name = ’MAL_300_5’ Input_1 = Nom_Pipe_D_2 Call Read_Table ( table_name, input, output ) Pipe_OD_2 = Output_2 Body_OD_2 = Pipe_OD_2 EndIf

28

________________

Physical Data Definitions

EndIf EndIf EndIf Table_Name_A = Item_Name // Geo_Ind_Std // Term_Type_1 Table_Name_W = Commodity_Code Input_1 = Nom_Pipe_D_1 Input_2 = Nom_Pipe_D_2 If ( Term_Type_1 .EQ. Term_Type_2 .AND. Nom_Pipe_D_1 .EQ. Nom_Pipe_D_2 ) Then Table_Name_A = Table_Name_A // Pr_Rating_1 // ’A’ Else If ( Gen_Type_1 .EQ. Gen_Type_2 ) Then ! Male X Male or Bolted X Bolted ! or Female X Female Table_Name_A = Table_Name_A // Pr_Rating_1 // Term_Type_2 // Pr_Rating_2 // ’A’ Else If ( Gen_Type_1 .EQ. MALE ) Then

!

! Bolted

Male X Bolted and Male X Female Table_Name_A = Table_Name_A // Term_Type_2 // Pr_Rating_2 // ’A’ Else If ( Gen_Type_2 .EQ. MALE ) Then Bolted X Male and Female X Male Table_Name_A = Table_Name_A // Pr_Rating_1 // Term_Type_2 // Else Bolted X Female and Female X

2.Placement

!

Table_Name_A = Table_Name_A // Pr_Rating_1 // Term_Type_2 // Pr_Rating_2 // ’A’ EndIf EndIf EndIf EndIf Return End

Listing for Physical Data Module PDVALVE_2_AMS Physical_Data_Definition ’OPERATOR_3’ Input_1 = Nom_Pipe_D_1 If ( Gen_Type_1 .EQ. BOLTED ) Then Table_Name_A = Item_Name // ’BLT’ // Pr_Rating_1 // Valve_Operator // ’A’ Else If ( Gen_Type_1 .EQ. MALE ) Then Table_Name_A = Item_Name // ’MAL’ // Pr_Rating_1 // Valve_Operator // ’A’ Else If ( Gen_Type_1 .EQ. FEMALE ) Then Table_Name_A = Item_Name // ’FEM’ // Pr_Rating_1 // Valve_Operator // ’A’ EndIf EndIf EndIf Call Read_Table ( Table_Name_A, input, output ) Dimension_1 = Output_1 Dimension_2 = Output_2 OP_Weight = 0.0 Return End

Listing for Physical Data Module OPERATOR_3

29

________________ PDS Eden for Piping - April 2002

Parametric Shape Definitions The parametric shape definition describes the graphics symbol (such as bend, flange, or valve body) that is placed for the component in the model. Parametric shape definitions are used to place symbol graphics in the model or define interference envelopes. This involves the following major functions: Defining connect point geometry Placing connect points Moving the active location a specified distance Drawing a specific graphic shape Placing a center of gravity location. 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 Shape Definitions 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). The first line for these modules is of the form Model_Parametric_Shape_Definition

’MODULE NAME’

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.

30

________________

Parametric Shape Definitions

Model_Parametric_Shape_Definition ’V1’ Call Define_Connect_Point_Geometry ( LINEAR ) Call Place_Connect_Point ( CP1 ) Call Move_By_Distance ( CP_Offset_1 ) Call Draw_Cylinder_With_Capped_Ends ( Depth_1, Facing_OD_1 ) length = F_to_C_Dim_1 - Thickness_1 diameter = 0.0 Call Draw_Cone ( length, Body_OD_1, diameter ) Call Place_Connect_Point ( CP0 ) Call Place_COG_Location ( DRY_COG ) Call Place_COG_Location ( WET_COG ) length = F_to_C_Dim_2 - Thickness_2 Call Draw_Cone ( length, diameter, Body_OD_2 ) Call Draw_Cylinder_With_Capped_Ends ( Depth_2, Facing_OD_2 ) Call Move_By_Distance ( CP_offset_2 ) Call Place_Connect_Point ( CP2 ) Return End

2.Placement

Listing for Parametric Shape Module MGV1

Model_Parametric_Shape_Definition ’OP3’ Call Define_Connect_Point_Geometry ( OPERATOR ) Call Convert_NPD_to_Subunits ( Nom_Pipe_D_1, dia ) dist = dia + Min_Cyl_Dia * 0.5 angle = 90.0 radius = ( Dimension_2 - Min_Cyl_Dia ) * 0.5 Call Draw_Cylinder_With_Capped_Ends ( Dimension_1, Min_Cyl_Dia ) Call Move_by_Distance ( -dist ) Call Rotate_Orientation ( angle, Secondary ) Call Rotate_Orientation ( angle, Normal ) Call Move_Along_Axis ( -radius, Secondary ) Call Draw_Torus ( radius, angle, Min_Cyl_Dia ) Call Draw_Torus ( radius, angle, Min_Cyl_Dia ) Call Draw_Torus ( radius, angle, Min_Cyl_Dia ) Call Draw_Torus ( radius, angle, Min_Cyl_Dia ) Return End

Listing for Parametric Shape Module MGOP3

Interference Parametric Shape Definition 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. Interference_Parametric_Shape_Definition ’MODULE NAME’ 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.

31

________________ PDS Eden for Piping - April 2002

If no interference module is found for a component, the system uses the model graphics module to determine the interference parametric shape. Interference_Parametric_Shape_Definition ’V1’ Call Define_Connect_Point_Geometry ( LINEAR ) dist = 0.0 If ( Gen_Type_1 .EQ. BOLTED ) Then extra1 = CP_Offset_1 Else extra1 = 0.0 dist = CP_Offset_1 EndIf If ( Gen_Type_2 .EQ. BOLTED ) Then extra2 = CP_Offset_2 Else extra2 = 0.0 EndIf sec1 = Depth_1 + extra1 sec2 = Depth_2 + extra2 diameter1 = Facing_OD_1 + Insulation * 2.0 diameter2 = Facing_OD_2 + Insulation * 2.0 diameter3 = Body_OD_1 + Insulation * 2.0 length = F_to_C_Dim_1 - Thickness_1 + F_to_C_Dim_2 - Thickness_2 Call Move_By_Distance ( dist ) If ( diameter1 .GE. diameter2 ) Then Call Draw_Cylinder_With_Capped_Ends ( sec1+sec2+length, diameter1 ) Else Call Draw_Cylinder_With_Capped_Ends ( sec1+sec2+length, diameter2 ) EndIf Return End

Listing for VI IFC Interference_Parametric_Shape_Definition ’OP3’ Call Define_Connect_Point_Geometry ( OPERATOR ) Call Convert_NPD_to_Subunits ( Nom_Pipe_D_1, dia ) dist = dia + Min_Dimension * 0.5 Call Draw_Cone_With_Capped_Ends ( Dimension_1 - dia, 0.0, Dimension_2 ) Call Draw_Cylinder_With_Capped_Ends ( dia, Dimension_2 ) Return End

Listing for OP3 IFC

32

________________

Forms Interface

Forms Interface Forms in piping design serve to collect input via key-in fields or command buttons. They also provide feedback information to the user through message fields. 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.

2.Placement

33

________________ PDS Eden for Piping - April 2002

Notes for Graphic Commodity Data Connect Point Data 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.

34

________________

Notes for Graphic Commodity Data

A valve operator is always placed at the component origin of the corresponding valve body.

A change of direction component placed by component center must be defined such that connect point 1 is on the primary axis.

Bends and Branches 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.

35

2.Placement

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.

________________ PDS Eden for Piping - April 2002

Bolts, Gaskets, and Flanges 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. Flange data exists in two tables. — 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).

36

________________

Pipe, Tubing, and Hose

Pipe, Tubing, and Hose 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.

2.Placement

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. Flexible hose has flanged, screwed, or quick disconnect end preparations.

37

________________ PDS Eden for Piping - April 2002

38

________________

Eden Language Structure

3.

Eden Language Structure

Eden is similar to the FORTRAN programming language. Therefore, the general rules for evaluating expressions in Eden are identical to those in FORTRAN. You do not need to know FORTRAN to use the Eden language.

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. The Eden language structure incorporates: Statements — Beginning — Ending

3.Structure

Variables — Local — Global Keywords Connect Point Geometry Operators — Arithmetic — Relational — Logical Expressions Functions Primitives (or Subroutines)

39

________________ PDS Eden for Piping - April 2002

Beginning Statements Beginning statements define the types of modules being entered. Names within the single quotes must be all upper case. 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’

Examples Symbol_Processor ’GAT’ Physical_Data_Definition ’V1_AMS’

Ending Statements 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

40

________________

Variables

Variables 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.

Examples: 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.

3.Structure

Be careful when using hard coded numbers or when using the system_of_units keyword.

Local Variables 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.

Examples: diameter shell_thickness projection_1 25

13.25 ’A TEXT STRING’ radius [2]

41

________________ PDS Eden for Piping - April 2002

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.

Example: 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

Example: 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.

Example: Below, LENGTHS is an array of 10 REAL variables. They are referenced as LENGTHS [1] ... LENGTHS [10] R8 LENGTHS [10]

Global Variables Common to Piping, Equipment, and Pipe Support Modeling 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.

42

________________

Variables

Global variables are system-defined. You cannot declare global or subscripted global variables.

(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.)

Pr_Rating_n

Variable containing the current item pressure rating value.

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.

Piping Eden Global Variables 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.

BOLT_DIAMETER BOLT_EXTENSION

Diameter information not used when placing a flanged component. Table lookups are performed during the execution of the MTO process when two mating flanges are found. These keywords are used to hold the data retrieved for the table and then pass on to the MTO process.

Br_Ref_Thick

The branch reinforcement thickness.

Br_Ref_Width

The branch reinforcement width.

43

3.Structure

Input_n

________________ PDS Eden for Piping - April 2002

Branch_Angle

Used for a table name lookup.

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.

Commodity_Code

A user-assigned code that together with the NPD and schedule/thickness uniquely defines the component.

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.

CP_Normal_n

(n = 1-5) The normal vector.

CP_Primary_n

(n = 1-5) The flow centerline vector.

CP_Secondary_n

(n = 1-5) The secondary vector.

CP_to_Origin_n

(n = 1-5) The CP to origin dimension.

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.

Dry_COG

The center of gravity dry.

Dry_Weight

The dry weight.

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.

F_to_C_Dim_n F_to_F_Dim

(n = 1-5) The face-to-center and face-to-face dimensions retrieve information from a dimension table and pass that information to the database for the appropriate connect point or face to face dimension.

Gasket_Sep_n

(n = 1-5) The gasket separation.

Gen_Flag_Red Gen_Flag_Green

The generic flag retrieves the table suffix for use with table identification.

Geo_Ind_Std

The geometric industry standard is used to define table lengths. The data comes from the piping component data entry.

44

________________

Variables

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.

Insulation_n

(n=1 to 4) This variable is used to exclude insulation by connect point.

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.

Min_Weld_Size

The minimum weld size retrieves output from the Branch_Angle/Branch_Table.

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_Miter

The number of miter joints is the number of miters to be used in a mitered joint. It is retrieved from the modifier column in the piping component data from the reference database.

Number_of_Taps

The number of taps is retrieved from the modifier column in the piping component data from the reference database.

Operator_Orient

Prompts for a secondary orientation of an operator. For example, a handle for a lever or gear operator.

Op_COG

The operator center of gravity.

Op_Weight

The operator weight data referenced from a table and stored in the database.

Or_Port_Size

The orifice port size is defined in the Eden code.

Pipe_OD_n

(n = 1-5) The piping outside diameter.

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.

45

3.Structure

Insulation

________________ PDS Eden for Piping - April 2002

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.

Stem_Length

The stem length table lookup/calculated — stored in database.

Surface_Area

The surface area data referenced from a table and stored in the database.

Symbology

Defines the use of simple or detailed graphics.

Table_Name_A Table_Name_B

Stores the dimension table name.

Table_Name_W

Stores the weight table name.

Thick_Table_Name

Identifies the thickness data table used in piping wall thickness calculations for this piping material class.

Toggle_n

(n = 1-5) Currently used only for valve operations.

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_COG

The wet center of gravity.

Wet_Weight

The fluid volume weight data referenced from a table stored in the database.

46

________________

Common Keywords

Common Keywords 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. TRUE

Logical true. Used in logical expressions.

FALSE

Logical false. Used in logical expressions.

MALE FEMALE BOLTED

Keywords for generic end preparation.

PRIMARY SECONDARY NORMAL

Keywords used to identify or refer to individual refresh tee axes.

ENGLISH METRIC

Names used to define the units of a constant used in the symbol definition.

3.Structure

Keywords (Piping Specific) The following keywords are specific to the Piping Eden interface. 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.

CPn

The connect point numbers.

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.

THICKNESS_n

(n = 1-5) The fitting CP thickness (flange_depth, thread_depth or socket_depth) represents the distance from the outermost face of the flange to the back surface of the flange on which the nut rests including any projections on the flange.

NULL_PRESSURE 0 WALL_THICKNESS SCHEDULE CALCULATE

The schedule/thickness and pressure types.

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.

47

________________ PDS Eden for Piping - April 2002

Keyword AMS DIN BS EURO_A JIS AUS EURO_B INT_A INT_B COMPANY

Practice U.S. Practice European - DIN European - British Standard European - Practice A International - JIS International - Australian European - Practice B International - Practice A International - Practice B Company Practice

Range 2-99 100-199 200-299 300-399 400-499 500-599 600-699 700-799 800-899 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.

SUBCOMPONENT

The subcomponent name is used to access subcomponents. For example, Subcomponent = ’OP’//Valve_Operator.

FLOW_DIRECTION

The flow direction indicators. FLOW_DIRECTION = TRUE cp1 must be placed at the upstream portion of the pipeline. Generally used on items including check valves. If False or not defined, it is bidirectional.

MODEL

The model symbology types.

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 Oper_Dim_B Oper_Dim_C Oper_Dim_D

The operator dimensions keywords allow you to load valve operator dimensions with read/write access into the relational database for piping and instrument components. 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

48

The non-radial branch keyword must be used to define the connect point geometry type for non-radial branch components.

________________

Common Keywords

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.

3.Structure

49

________________ PDS Eden for Piping - April 2002

Comments 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).

Example: Table_Data_Definition ’T_41_420_3000_NREQD_52’ ! Description= CL3000 equal tee socketwelded ends weight ! Source= GRINNELL catalog PF-78

50

________________

Operators

Operators 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 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 ’_’

3.Structure

+ * / ** //

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.

Example: ’ABC’ // ’DEF’

produces ’ABC_DEF’

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.

51

________________ PDS Eden for Piping - April 2002

Example: If GEN_TYPE = 20 and PR_RATING = 300, then ’BLT’ // GEN_TYPE // PR_RATING // ’5’

produces ’BLT_20_300_5’

Relational Operators 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. .NE. .GE. .GT. .LE. .LT.

equal to not equal to greater than or equal to greater than less than or equal to less than

Periods must appear before and after the expression.

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. ’ABCD’ .LT. ’ACCD’

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. ’PQRSTU’ .EQ. ’PQR



Logical Operators Logical operators are used to combine relational expressions into more complex logical expressions. Valid logical operators include: .OR. .AND.

logical or logical and

Periods must appear before and after the expression.

52

________________

Expressions

Expressions Expressions are variables, constants, and operators combined to make statements. The format of most Eden expressions is the same as in FORTRAN. Valid expressions include: Replacement Call Do while Indexed Do If - then - else

simple arithmetic replacement executes primitives or subroutines execute loop execute loop conditional execution

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 3.Structure

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 Statement Call statements are used to execute system primitives. The syntax for the Call statement is: call "primitive" or "subroutine" (argument 1, argument 2, ...)

Example: Call Place_Cylinder_With_Capped_Ends (diameter, length)

Do While Statement 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.

53

________________ PDS Eden for Piping - April 2002

Example: 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

Indexed Do Statement 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: do V = v1, v2, v3 . . . enddo

where V

is a control variable (non-string type)

v1 v2 v3

are constants or variables that evaluate to the initial, terminal, and incremental parameters respectively. v3 is optional. If v3 is omitted, the system assumes that the incremental parameter is one.

V3 cannot be negative.

Example: 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. do I = 1, 20, 2 . . . enddo

54

________________

Expressions

If - then - else Statement 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. if (condition) then . . . else . . . endif

Example: if (DIMENSION_1 .gt. 24.) then thk = thk + .125 else thk = thk + .250 endif

55

3.Structure

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.

________________ PDS Eden for Piping - April 2002

Functions Eden provides several functions for performing common mathematical operations. These functions can be used within replacement statements. The following functions must contain the parentheses.

DSQRT () square root DABS () absolute value DSINR () sine of an angle in radians DCOSR () cosine of an angle in radians DTANR () tangent of angle in radians DSIND () sine of an angle in degrees DCOSD () cosine of an angle in degrees DTAND () tangent of an angle in degrees DASINR () arcsine returned in radians DACOSR () arccosine returned in radians DATANR () arctangent returned in radians DASIND () arcsine returned in degrees DACOSD () arccosine returned in degrees DATAND () arctangent returned in degrees

Example: The following list illustrates a few possible Eden functions: length = hypot * DSIND (30.) side = DTANR (pi/2) + 32. hypot = DSQRT (a**2 + b**2) angle = DATAND (side1/side2)

56

________________

Primitives

Primitives Primitives are system-defined routines that perform specific functions for symbol definition.

Convert NPD to Subunits 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, 1 inch NPD is 5000 + 32 * 1 = 5032 20 inch NPD is 5000 + 32 * 20 = 5640

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.

Syntax Call Convert_NPD_To_Subunits (coded_input, npd)

Options coded_input

The nominal pipe diameter in internal or coded units. This variable must be the keyword Nom_Pipe_D_n.

npd

The nominal piping diameter in subunits.

Examples In this example, the Real*8 equivalence of the coded NPD in Nom_Pipe_D_1 is returned in Pipe_Dia_1. Call Convert_NPD_To_Subunits (Nom_Pipe_D_1, 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.

57

3.Structure

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.

________________ PDS Eden for Piping - April 2002

Define Active Orientation 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.

Syntax Call Define_Active_Orientation (primary, secondary)

Options primary

Variable that defines the flow centerline or primary direction.

secondary

Variable that defines the line perpendicular to the flow centerline or secondary direction.

Valid keywords for the primary and secondary variables include: CP_PRIMARY_n CP_SECONDARY_n CP_NORMAL_n For the Piping keywords, n is the connect point number. 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.)

58

________________

Define Active Orientation

Restrictions 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.

Example: 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. Call Define_Active_Orientation (CP_Secondary_2, CP_Primary_2)

3.Structure

59

________________ PDS Eden for Piping - April 2002

Draw Cone 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.

Syntax Call Draw_Cone (length, diameter_1, diameter_2)

Options length

The length of the cone (A) which can be positive or negative.

diameter_1

The diameter of the cone (B) at the active point.

diameter_2

The diameter of the cone (C) at the end opposite the active point.

60

________________

Draw Cylinder

Draw Cylinder 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.

Syntax Call Draw_Cylinder (length, diameter)

Options The length (A) of the cylinder.

diameter

The diameter (B) of the cylinder. 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.

61

3.Structure

length

________________ PDS Eden for Piping - April 2002

Draw Eccentric Cone 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.

Syntax Call Draw_Eccentric_Cone (length, eccentric_offset, diameter_1, diameter_2)

Options length

Cone length (A).

eccentric_offset

Eccentric cone offset. This is the center-to-center distance between cone endpoints as measured positive going against the secondary.

diameter_1

Diameter (B) at active point.

diameter_2

Diameter (C) at the opposite end.

62

________________

Draw Projected Rectangle

Draw Projected Rectangle The Draw Projected Rectangle primitive allows you to place a component with a rectangular cross section. The current active point must be moved to the center of the rectangle, and the primary axis must point in the direction of the projection. The secondary axis orients the side of length1.

You must specify the projected height, projected width, and projected length dimensions.

Syntax 3.Structure

Call Draw_Proj_Rectangle (length1, length2, projection)

Options 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.

projection

Length of the projection (A).

Restrictions The active point must be located at the center of geometric shape of the rectangle. The refresh tee must point inward (the direction of projection).

63

________________ PDS Eden for Piping - April 2002

Draw Projected Triangle The Draw Projected Triangle primitive allows you to place a component that has an isosceles triangular cross-section. The current active point must be moved to the center of the cross-section. The primary axis points in the direction of the projection, and the secondary axis points to the base of the triangle. You must specify the side length, base length, and projected length dimensions.

Syntax Call Draw_Proj_Triangle (project_side_length, project_base_length, project_length)

Options project_side_length

Length of the side (A) of the triangle.

project_base_length

Length of the base (B) of the triangle.

project_length

Length of the projection (C).

Restrictions The active point must be located at the center of geometric shape of the triangle. The refresh tee must point inward. Make sure that dimension A is greater than 1/2 of dimension B, otherwise errors will result.

64

________________

Draw Semi-Ellipsoid

Draw Semi-Ellipsoid 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.

3.Structure

Syntax Call Draw_Semi_Ellipsoid (major_axis_diameter, minor_axis_radius)

Options major_axis_diameter

Variable defining the major axis diameter (A).

minor_axis_radius

Variable defining the minor axis radius (B).

65

________________ PDS Eden for Piping - April 2002

Draw Sphere The Draw Sphere primitive allows you to place a sphere where the center of the sphere is at the current active point. You must specify the radius, and the radius must be greater than or equal to (≥) 1/64 inches. The refresh tee and orientation will not change after placement.

Syntax Call Draw_Sphere (radius)

Options radius

66

Variable (A) defining the sphere radius.

________________

Draw Torus

Draw Torus The Draw Torus primitive allows you to place a torus from the current flow centerline to the current direction of the secondary axis using the bend radius, bend angle, and diameter you specify. This call changes the active orientation.

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.

3.Structure

Syntax Call Draw_Torus (radius, angle, diameter)

Options radius

The bend radius of the torus (B) as measured from the origin of the torus to its centerline.

angle

The bend angle of the torus (C).

diameter

The diameter of the torus (A).

67

________________ PDS Eden for Piping - April 2002

Assign Connect Point The Assign Connect Point primitive allows you to assign the connect point data for one color (GREEN or RED) in the Piping Job Specification to a pressurized connect point. This primitive assigns to connect points the properties in the specification associated with the color assigned with the connect point.

Syntax Call Assign_Connect_Point (color, CPn)

Options color

RED - small line size. GREEN - large line size.

CPn

Connect point number.

Restrictions 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.

Examples The following example assigns GREEN properties to connect point 1. Call Assign_Connect_Point (GREEN,CP1)

The following example assigns RED properties to connect point 2. Call Assign_Connect_Point (RED, CP2)

68

________________

Assign Generic Tap

Assign Generic Tap The Assign Generic Tap primitive allows you to assign a connect point as a tap, but still to go to the spec for connect point properties instead of the Tap Properties Table. 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.

Syntax Call Assign_Generic_Tap (cp_type, CPn)

Options cp_type

GREEN or RED

CPn

Connect point number.

3.Structure

Example The following example assigns GREEN properties to connect point 4, but is by definition a tap. Call Assign_Generic_Tap (GREEN, CP4)

69

________________ PDS Eden for Piping - April 2002

Assign 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.

Syntax Call Assign_Tap (tap_diameter, CPn)

Options tap_diameter

Diameter of the tap.

CPn

Connect point number.

Example The following example assigns a tap at connect point three with a diameter of two inches. tap_diameter = 2.0 Call Assign_Tap (tap_diameter, CP3)

70

________________

Compute Perpendicular Vector

Compute Perpendicular Vector 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.

Syntax Call Compute_Perpendicular_Vector (CPn, CP_Primary_n, CP_Secondary_n)

Options Connect point number (stored temporarily).

CP_Primary_n

Variable used to store computed primary.

CP_Secondary_n

Variable used to store computed secondary.

3.Structure

CPn

Example Call Call Call Call

Compute_Perpendicular_Vector (CP5, CP_Primary_5, CP_Secondary_5) Move_By_Distance (f_to_c_dim_1) Define_Active_Orientation (CP_Primary_5, CP_Secondary_5) Draw_Cylinder (length, diameter)

71

________________ PDS Eden for Piping - April 2002

Define Connect Point Geometry The Define Connect Point Geometry primitive allows you to define the connect point geometry from the component being placed. Specific keywords are available for specifying the type of connect point geometry. Connect point geometry is used at placement time to determine that all connect points are correct. 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.

Syntax Call Define_Connect_Point_Geometry (geometry_type)

Options geometry_type

Name of specific geometry of symbol. Valid geometries include: LINEAR ELBOLET BEND ANGLE_VALVE ECC_REDUCER BRANCH_TEE BRANCH_LAT BRANCH_WYE BRANCH_2WYE

CROSS OPERATOR LATROLET OLET SINGLE SINGLE_CP RET_180 ORIFICE_FLANGE GENERIC_COMPONENT NON_RADIAL_BRANCH OPERATOR

Restrictions Each component can have only one geometry type. 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.

Example 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. Call Define_Connect_Point_Geometry (BEND)

72

________________

Display Tutorial

Display Tutorial 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.

Syntax Call Display_Tutorial (Tut_Name)

Options Tut_Name

The form as it appears in the forms directory. You are limited to six characters.

Example 3.Structure

In this example, the tutorial for operator 33C dimensions is displayed. You can now enter the needed dimensions. Call Display_Tutorial (’VOP33C’)

73

________________ PDS Eden for Piping - April 2002

Draw Cone With Capped Ends 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.

Syntax Call Draw_Cone_With_Capped_Ends (length, diameter_1, diameter_2)

Options length

Variable (A) that defines the length of the cone.

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.

Example A = 5 B = 2 C = 1 Call Draw_Cone_With_Capped_Ends (A, B, C)

74

________________

Draw Cylinder With Capped Ends

Draw Cylinder With Capped Ends 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.

Syntax Call Draw_Cylinder_With_Capped_Ends (length, diameter)

Options Variable (A) defining the cylinder length.

diameter

Variable (B) defining the cylinder diameter.

3.Structure

length

Example 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. A = 5.0 B = 1.0 Call Draw_Cylinder_With_Capped_Ends (A, B)

75

________________ PDS Eden for Piping - April 2002

Draw Eccentric Cone With Capped Ends 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.

Syntax Call Draw_Eccentric_Cone_With_Capped_Ends (length, offset, diameter_1, diameter_2)

Options length

Variable (A) defining the cone length.

offset

Variable defining the eccentric cone offset.

diameter_1

Variable (B) defining the diameter at the active point.

diameter_2

Variable (C) defining the diameter at the opposite end.

Example A = F_to_f_Dim - Thickness_1 - Thickness_2 offset = 0.5 * (C - B) Call Draw_Eccentric_Cone_With_Capped_Ends (A, offset, B, C)

76

________________

Draw Hexagon

Draw Hexagon The Draw Hexagon primitive draws a hexagon of the specified length and depth.

Syntax 3.Structure

Call Draw_Hexagon (length, depth)

Options side_length

Side B is the side length.

proj

Side A is the length of the projection.

Example The following example draws a hexagonal shape with the specified diameter and depth. A = Dimension_2 B = Dimension_3 Call Draw_Hexagon (B, A)

77

________________ PDS Eden for Piping - April 2002

Draw Mitered Torus 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.

Syntax Call Draw_Mitered_Torus (radius, angle, diameter, number)

Options radius

Variable (A) defining the torus bend radius.

angle

Variable (B) defining the torus bend angle.

diameter

Variable (C) defining the torus diameter.

number

Number of cuts to generate a miter.

Example 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. A = bend_radius B = bend_angle C = body_OD_1 Call Draw_Mitered_Torus (A, B, C, 2)

78

________________

Draw Octagon

Draw Octagon The Draw Octagon primitive allows you to draw an octagon of the specified width and depth.

3.Structure

Syntax Call Draw_Octagon (width, projection)

Options width

Distance (A) between the two opposite sides.

projection

Depth (B) of shape.

Example The following example draws an octagonal shape given the width and depth. A = Dimension_2 B = Dimension_3 Call Draw_Octagon (A, B)

79

________________ PDS Eden for Piping - April 2002

Draw Parametric Shape 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.

Syntax Call Draw_Parametric_Shape (parametric_shape)

parametric_shape

Name of the module that you defined to draw the graphics. The name must be set before calling the module.

Example The following example calls the module that places the graphics, connect points, and so forth for parametric shape F47. parametric_shape = ’F47’ Call Draw_Parametric_Shape (parametric_shape)

— OR —

Call Draw_Parametric_Shape (’F47’)

80

________________

Draw Torus with Capped Ends

Draw Torus with Capped Ends 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.

3.Structure

Syntax Call Draw_Torus_with_Capped_Ends (radius, angle, diam)

Options radius

Variable (B) defining the bend radius.

angle

Variable (C) defining the angle of the torus.

diam

Diameter (A) of the torus.

Example 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. Call Draw_Torus_with_Capped_Ends (bend_radius, bend_angle, body_OD_1))

81

________________ PDS Eden for Piping - April 2002

Get Physical Data 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.

Syntax Call Get_Physical_Data (physical_data_source)

Options physical_data_source

Name of the physical data module set previous to this primitive.

Examples The following example sets the variable physical_data_source to F47_AMS and then calls the routine which accesses the physical data: physical_data_source = ’F47’ // STANDARD_TYPE Call Get_Physical_Data (physical_data_source)

The following example sets a variable named physical_data_source to F47_AMS and then calls the routine which accesses the physical data: physical_data_source = ’F47_AMS’ Call Get_Physical_Data (physical_data_source)

The following example calls the routine which accesses the physical data without defining a variable for the physical data source: Call Get_Physical_Data (’F47_AMS’)

82

________________

Move Along Axis

Move Along Axis 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.

Syntax Call Move_Along_Axis (distance, axis)

Options distance

Negative or positive distance to move.

axis

Axis to move along: PRIMARY, SECONDARY, or NORMAL.

Examples

cyl_diam = Dimension_1 radius = (Dimension_2 - cwht) + 0.5 Call Move_Along_Axis (-radius, SECONDARY) Call Draw_Cylinder (radius, cyl_diam)

83

3.Structure

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.

________________ PDS Eden for Piping - April 2002

Move By Distance 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.

Syntax Call Move_By_Distance (distance)

Options distance

Variable name for the distance along the flow centerline.

Examples The following example moves the active point by a distance equal to the offset of connect point 2: Call Move_By_Distance (CP_Offset_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: Call Move_By_Distance (-F_to_C_Dim_2)

84

________________

Move To Connect Point

Move To Connect Point 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.

Syntax Call Move_To_Connect_Point (CPn)

Options CPn

Variable defining the connect point number (n = 0,1,2,3,4,5).

3.Structure

Example In the following example, the call moves the active point to connect point 1: Call Move_To_Connect_Point (CP1)

85

________________ PDS Eden for Piping - April 2002

Place COG Location 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.

Syntax Call Place_COG_Location (COG_type)

Options COG_type

Variable defining the center of gravity type.

Examples The following examples display the three types of centers of gravity: Call Place_COG_Location (DRY_COG) Call Place_COG_Location (WET_COG) Call Place_COG_Location (OP_COG)

86

________________

Place Connect Point

Place Connect Point The Place Connect Point primitive allows you to define the location and the orientation of the component center, a pressurized connect point, or a tap and place that point. 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.

Syntax Call Place_Connect_Point (CPn)

Options CPn

Variable defining the connect point (n = 0,1,2,3,4,5).

3.Structure

Example The following example places a connect point at the current location with current orientation: Call Place_Connect_Point (CP0)

87

________________ PDS Eden for Piping - April 2002

Prompt to Orient Operator 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.

Syntax Call Prompt_to_Orient_Operator (prompt)

Example Prompt = 1.0 Call Prompt_to_Orient_Operator (prompt)

88

________________

Read Table

Read Table 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: Call Read_Table (table_name, input, output)

Option Variable defining the table name.

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.

3.Structure

table_name

Example 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. Table_Name_A = Item_Name // Geo_Ind_Std // Term_Type_1 Input_1 = Nom_Pipe_D_1 Input_2 = Nom_Pipe_D_3 Call Read_Table (Table_Name_A, input, output) F_to_C_Dim_1 = Output_3

89

________________ PDS Eden for Piping - April 2002

Rotate Orientation The Rotate Orientation primitive allows you to rotate the active orientation about any axis and with any angle.

Syntax Call Rotate_Orientation (angle, axis)

angle

Angle of rotation in degrees.

axis

Axis of rotation either primary, secondary, or normal.

Example In the following example, after the primitive is executed the primary and normal are rotated 90 degrees about the secondary axis: Call Rotate_Orientation (angle, SECONDARY)

90

________________

Connect Point Geometry

Connect Point Geometry 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 nonflanged 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.

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.

91

3.Structure

LINEAR

________________ PDS Eden for Piping - April 2002

BEND

Direction-change components where the angle of change is not necessarily 90 degrees.

ANGLE_VALVE

Valves that have a 90 degree direction change.

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.

ERROR - couldn’t open graphic: /usr3/eden/ref/branchtee.fig

92

________________

Connect Point Geometry

Branch component that has the branch leg coming off at a variable angle from the primary. CP1 and CP2 are along the primary, and CP3 is along 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.

93

3.Structure

BRANCH_LAT

________________ PDS Eden for Piping - April 2002

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.

OLET

Olets that are perpendicular to the flow centerline.

94

________________

Connect Point Geometry

SINGLE_CP

Items with 1-connect-point, such as a cap.

RET_180

U-shaped components, they must be 180 degrees.

ORIFICE_FLANGE

Linear component that has 1 or 2 taps that are perpendicular to the flow centerline.

3.Structure

GENERIC_COMPONENT Specialties, instruments, and pipe supports where the geometry is not rigidly defined (Not to be used with piping components).

95

________________ PDS Eden for Piping - April 2002

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.

96

________________

Creating a New Piping Component

4.

Creating a New Piping Component

Eden Setup Before a new piping component can be defined through Eden, follow these steps: 1.

Create a directory path for symbol definition files — Login to the server where the PDS project resides — 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 where proj1 is the directory of an existing project.

4.New

2.

Create a directory path for dimension and spec tables. — Login to the server where the PDS project resides. — Create the dimension and spec tables directory. 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. — Login to the server where the PDS project resides — Create library directory.

97

________________ PDS Eden for Piping - April 2002

c:\users\default\projects\custom\libs — OR — c:\users\default\projects\proj1\libs — Copy standard delivered libraries into library directory. copy c:\win32app\ingr\rdusrdb\*.l* c:\users\default\projects\custom\libs\ copy c:\win32app\ingr\pdshell\lib\*.l* c:\users\default\projects\custom\libs\

— OR —

copy c:\win32app\ingr\rdusrdb\*.l* c:\users\default\projects\proj1\libs\ copy c:\win32app\ingr\pdshell\lib\*.l* c:\users\default\projects\proj1\libs\

If working in a non-U.S. standards project, substitute rdusrdb with the rdb being used. 4.

Access the Reference Database Defaults form and enter the node name and path to the directories previously defined. — Access the pdshell form. — Select a project from the form. — Select the Reference Data Manager option. — Select the Default Project Control Data option. — Enter the path and node name to the directories previously created. Piping Eden Path: c:\users\default\projects\custom\pipesym\ Piping Eden node: Dim/Spec Table Path: c:\users\projects\custom\tbls\ Dim/Spec Table node:

— Make sure that the Piping Spec definitions are specified. If a U.S. standards project is being used the following data should appear: Piping Spec Path: c:\win32app\ingr\rdusrdb\spec_data\ Piping Spec node:

If working in a non-U.S. standards project, substitute rdusrdb with the rdb being used. A detailed description of the Default Project Control Data option is provided in the next few pages. 5.

98

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"

________________

Creating a New Piping Component

— Select Cancel on the Defaults form. — Select the Reference Database Management Data option. — Select the Default All Library Locations, and enter the library directory previously created. Network Address: Directory: c:\users\default\projects\custom\libs

— 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: Piping Job Spec Table Short Matl Description Long Matl Description Specialty Matl Description Standard Note Label Description Piping Assembly Graphic Commodity Physical Data - U.S. Practice

us_pjstb.l us_shbom.l us_lgbom.l us_spbom.l std_note.l labels.l assembly.l pip_gcom.l us_pcdim.l

If working in a non-U.S. standards project, see the rdb directory being used to find the correct specifications To revise an entry, follow these steps: — Identify the library to be checked. — Place the cursor at the beginning of the "Specification" field. — Delete to the right of the cursor. — Enter the correct value and press the return key.

4.New

— Accept the form. A detailed description of the Reference Database Management option is provided in the next few pages

99

________________ PDS Eden for Piping - April 2002

Reference Database Management Data The Reference Database Management Data form allows you to define the file names for Reference Database Files, graphic commodity data, dimension tables, and spec tables. You can define both approved or unapproved RDB data for each item. You can also define the default location for the source files used to load the RDB files (such as neutral files, language files, and report files.)

Operating Sequence 1.

Select Reference Database Management Data from the Reference Data Manager form.

2.

Select RDB File Type 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.

100

Material/Specification Reference Database

Identifies the Material Reference Database for the project. Refer to the Project Setup Manager in the Project Administrator (PD_Project) Reference Guide for more information on this database.

Piping Job Specification Table Library

Identifies the location of the Spec Table library.

________________

Reference Database Management Data

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 Library

Identifies the library that contains the BOM description for 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\.

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.

101

4.New

3.

Short Material Description Library

________________ PDS Eden for Piping - April 2002

6.

Select Confirm following each change to the reference to data to accept the specified file location. — THEN — Select Cancel to exit the form.

102

________________

Default Project Control Data

Default Project Control Data This button allows you to define the default location for files commonly used by the project (such as neutral files, report files, and library files). You can also set or change these file locations during the operation of the applicable managers.

Operating Sequence 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.

103

4.New

1.

________________ PDS Eden for Piping - April 2002

2.

104

Select the Confirm (√) button to accept any changes to the Project Control Data.

________________

Extracting Sample Modules

Extracting Sample Modules 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:

Method I 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.

Method II Enter the piping design environment.

2.

Select the place component command.

3.

Place a component or instrument or specialty item that closely resembles the component to be created.

4.

Select the diagnostics command.

5.

Select the Review Component Placement option from the form.

4.New

1.

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: 1.

Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

105

________________ PDS Eden for Piping - April 2002

3.

Select the Graphic Data Management option.

4.

Toggle Full List to Sub-string.

5.

Enter the name of the symbol processor, and press RETURN.

6.

Select the Extract option.

7.

Identify the symbol processor from the form.

8.

Accept the form.

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:

Method I 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.

Method II 1.

Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

3.

Select the Physical Data Management option.

4.

Identify the table library being used (U.S. practice, European - Din, and so forth) and accept the form.

5.

Toggle Full List to Sub-string.

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.

7.

Select the Extract option.

106

________________

Extracting Sample Modules

8.

Identify the table from the form.

9.

Accept the form. 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.

4.New

107

________________ PDS Eden for Piping - April 2002

Editing Modules 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.

108

________________

Compiling New Modules

Compiling New Modules 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. To load and compile new Eden modules, follow these steps: 1.

Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

3.

Select the Graphic Data Management option.

4.

Select either of the Create options.

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.

6.

Accept the form.

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.

To load and compile new tables, follow these steps: Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

3.

Select the Physical Data Management option.

4.

Select either of the Create options.

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.

6.

Accept the form.

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.

4.New

1.

109

________________ PDS Eden for Piping - April 2002

Revising Modules 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: 1.

Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

3.

Select the Graphic Data Management option.

4.

Toggle Full List to Sub-string.

5.

Enter the name of the Eden module to be revised.

6.

Select the Revise option.

7.

Identify the Eden module to be revised from the form.

8.

Accept the form.

9.

Edit the file as needed and exit the editor. The system recompiles the file automatically.

10.

Place the component in the design environment to verify fixes.

To revise an incorrect table, follow these steps: 1.

Select the Reference Data Manager option.

2.

Select the Graphic Data Library Manager option.

3.

Select the Physical Data Management option.

4.

Toggle Full List to Sub-string.

5.

Enter the name of the table to be revised.

6.

Select the Revise option.

7.

Identify the table to be revised from the form.

8.

Accept the form.

9.

Edit the file as needed, and exit the editor.

10.

Place the component using the revised table in the design environment to verify fixes.

110

________________

Basic Use of Forms

Basic Use of Forms 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. copy c:\win32app\ingr\pdshell\forms\PA001 forms\. From the forms directory access DBACCESS.

4.

Select the Define Form option.

5.

Identify the form to be modified from the list, and accept.

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.

4.New

3.

111

________________ PDS Eden for Piping - April 2002

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. copy PA001 c:\win32app\ingr\pdshell\forms\PA001

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.

112

________________

Piping Specialty Components

Piping Specialty Components Specialty Items with Complete Data Input 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, where are three unique alphanumeric characters. Use the convention INU 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. Use the convention PSU to avoid confusion with any Intergraph I/Forms. The I/Forms delivered by Intergraph may be used as examples for customization. buttons (automatic): ’operator menu’ selection ’placement options’ selection B=A C=A D=A E=A C=B B = 0.5 * A C = 0.5 * A D = 0.5 * A E = 0.5 * A

key = 4090 key = 3001 key = 3012 key = 3013 key = 3014 key = 3015 key = 3016 key = 3021 key = 3022 key = 3023 key = 3024

4.New

’help’ selection key: gadget number: button:

456 995 automatic

’form size’ selection key: gadget number: button:

403 997 automatic

’exit’ selection key: gadget number: button:

4001 998 manual

’accept’ selection

113

________________ PDS Eden for Piping - April 2002

key: gadget number: button:

4002 999 manual

message area ’a’ for messages gadget number: characters: lines deep: edit mode: font size:

251 40 3 review only 12

message area ’b’ for active segment data display gadget number: characters: lines deep: edit mode: font size:

254 40 3 review only 12

material description display gadget number: characters: lines deep: edit mode: font size:

150 80 3 review only 12

input fields Dimension_1 Dimension_2 Dimension_3 Dimension_4 Dimension_5 Dimension_6 Dimension_7 Dimension_8 Dimension_9 Dimension_10 Dimension_11 Dimension_12 Dimension_13 Dimension_14 Dimension_15 Dimension_16 Dimension_17 Dimension_18 Dimension_19 Dimension_20 tag number dry weight

114

gadget = 101 gadget = 102 gadget = 103 gadget = 104 gadget = 105 gadget = 106 gadget = 107 gadget = 108 gadget = 109 gadget = 110 gadget = 111 gadget = 112 gadget = 113 gadget = 114 gadget = 115 gadget = 116 gadget = 117 gadget = 118 gadget = 119 gadget = 120 gadget = 130 gadget = 201

________________

Piping Specialty Components

wet weight surface area

gadget = 202 gadget = 203

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 ’notify upon completion —> off (NOT the default) ’notify upon initial’ —> off toggles

I/Form key I/Form gadget ’off’ gadgets ’on’ gadgets

Toggle_1

Toggle_2

Toggle_3

Toggle_4

Toggle_5

4051 981 701-710 711-720

4052 982 721-730 731-740

4053 983 741-750 751-760

4054 984 761-770 771-780

4055 985 781-790 791-800

Specialty Items With Partial Data Input

Intergraph has chosen to name the I/Forms for instruments with ’partial data input’ using the convention INB, where are three unique alphanumeric characters. Use the convention INU 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. Use the convention PSU to avoid confusion with any Intergraph I/Forms. These I/Forms delivered by Intergraph can be used as examples for customization. buttons (automatic): ’operator menu’ selection ’placement options’ selection B=A C=A D=A E=A C=B B = 0.5 * A

key = 4090 key = 3001 key = 3012 key = 3013 key = 3014 key = 3015 key = 3016 key = 3021

115

4.New

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.

________________ PDS Eden for Piping - April 2002

C = 0.5 * A D = 0.5 * A E = 0.5 * A

key = 3022 key = 3023 key = 3024

’help’ selection key: gadget number: button:

456 995 automatic

’form size’ selection key: gadget number: button:

403 997 automatic

’exit’ selection key: gadget number: button:

4001 998 manual

’accept’ selection key: gadget number: button:

4002 999 manual

message area ’a’ for messages gadget number: characters: lines deep: edit mode: font size:

251 40 3 review only 12

message area ’b’ for active segment data display gadget number: characters: lines deep: edit mode: font size:

254 40 3 review only 12

material description display gadget number: characters: lines deep: edit mode: font size:

116

150 80 3 review only 12

________________

Piping Specialty Components

’review only’ fields first size second size

gadget = 171 gadget = 176

key = 3171 key = 3176

gadget = 172 gadget = 177

key = 3172 key = 3177

’select/review’ fields end preparation (first size) end preparation (second size) input fields gadget = 101 gadget = 102 gadget = 103 gadget = 104 gadget = 105 gadget = 106 gadget = 107 gadget = 108 gadget = 109 gadget = 110 gadget = 111 gadget = 112 gadget = 113 gadget = 114 gadget = 115 gadget = 116 gadget = 117 gadget = 118 gadget = 119 gadget = 120

tag number dry weight wet weight surface area

gadget = 130 gadget = 201 gadget = 202 gadget = 203

pressure rating (first size) pressure rating (second size) schedule/thickness (first size) schedule/thickness (second size)

gadget = 173 gadget = 178 gadget = 174 gadget = 179

4.New

Dimension_1 Dimension_2 Dimension_3 Dimension_4 Dimension_5 Dimension_6 Dimension_7 Dimension_8 Dimension_9 Dimension_10 Dimension_11 Dimension_12 Dimension_13 Dimension_14 Dimension_15 Dimension_16 Dimension_17 Dimension_18 Dimension_19 Dimension_20

key = 3173 key = 3178 key = 3174 key = 3179

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’

117

________________ PDS Eden for Piping - April 2002

The characteristics form in the Form Builder should have the following settings ’notify upon completion —> off (NOT the default) ’notify upon initial’ —> off

I/Form key I/Form gadget ’off’ gadgets ’on’ gadgets

Toggle_1

Toggle_2

Toggle_3

Toggle_4

Toggle_5

4051 981 701-710 711-720

4052 982 721-730 731-740

4053 983 741-750 751-760

4054 984 761-770 771-780

4055 985 781-790 791-800

Valve Operators 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, where are three unique alphanumeric characters. Use the convention VOU to avoid confusion with any Intergraph I/Forms. I/Forms delivered by Intergraph may be used as examples for customization. buttons (automatic): ’operator menu’ selection ’placement options’ selection

key = 4090 key = 3001

’help’ selection key: gadget number: button:

456 995 automatic

’form size’ selection key: gadget number: button:

403 997 automatic

’exit’ selection key: gadget number: button:

4001 998 manual

’accept’ selection key:

118

4002

________________

Piping Specialty Components

gadget number: button:

999 manual

message area ’a’ for messages gadget number: characters: lines deep: edit mode: font size:

251 40 3 review only 12

message area ’b’ for active segment data display gadget number: characters: lines deep: edit mode: font size:

254 40 3 review only 12

input fields gadget = 101 gadget = 102 gadget = 103 gadget = 104 gadget = 105 gadget = 106 gadget = 107 gadget = 108 gadget = 109 gadget = 110 gadget = 111 gadget = 112 gadget = 113 gadget = 114 gadget = 115 gadget = 116 gadget = 117 gadget = 118 gadget = 119 gadget = 120

operator weight

gadget = 201

4.New

Dimension_1 Dimension_2 Dimension_3 Dimension_4 Dimension_5 Dimension_6 Dimension_7 Dimension_8 Dimension_9 Dimension_10 Dimension_11 Dimension_12 Dimension_13 Dimension_14 Dimension_15 Dimension_16 Dimension_17 Dimension_18 Dimension_19 Dimension_20

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’

119

________________ PDS Eden for Piping - April 2002

The characteristics form in the Form Builder should have the following settings ’notify upon completion —> off (NOT the default) ’notify upon initial’ —> off toggles

I/Form key I/Form gadget ’off’ groups ’on’ groups

Toggle_1

Toggle_2

Toggle_3

Toggle_4

Toggle_5

4051 981 701–>710 711–>720

4052 982 721–>730 731–>740

4053 983 741–>750 751–>760

4054 984 761–>770 771–>780

4055 985 781–>790 791–>800

Pipe Supports 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. individual physical pipe support selection key:

"$,"

where

name of the I/Form to be displayed by Place Pipe Support model code of the physical pipe support to be placed by Eden

Intergraph has chosen to name the I/Forms for physical pipe supports using the convention PSP, where are three unique alphanumeric characters. gadget number: defined by user any gadget number not reserved by Intergraph individual functional pipe support selection key:

"#,"

where

name of the I/Form to be displayed by Place Pipe Support

model code of the physical pipe support to be placed by Eden

Intergraph has chosen to name the I/Forms for physical pipe supports using the convention PSP, where are three unique alphanumeric characters.

120

________________

Piping Specialty Components

gadget number: defined by user any gadget number not reserved by Intergraph ’help’ selection key: gadget number: button:

456 995 automatic

’form size’ selection key: gadget number: button:

403 997 automatic

’exit’ selection key: gadget number: button:

4001 998 manual

’accept’ selection key: gadget number: button:

4002 999 automatic

message area ’a’ for messages 251 40 3 review only 12

4.New

gadget number: characters: lines deep: edit mode: text font: message area ’b’ for active segment data display gadget number: characters: lines deep: edit mode: text font:

254 40 3 review only 12

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, where are three unique alphanumeric characters. Use the convention SPU to avoid confusion with any Intergraph I/Forms.

121

________________ PDS Eden for Piping - April 2002

I/Forms delivered by Intergraph may be used as examples for customization. buttons (automatic): ’pipe support data’ selection

key = 4092

’help’ selection key: gadget number: button:

456 995 automatic

’form size’ selection key: gadget number: button:

403 997 automatic

’exit’ selection key: gadget number: button:

4001 998 manual

’accept’ selection key: gadget number: button:

4002 999 manual

message area ’a’ for messages gadget number: characters: lines deep: edit mode: font size:

251 40 3 review only 12

message area ’b’ for active segment data display gadget number: characters: lines deep: edit mode: font size:

254 40 3 review only 12

material description display gadget number: characters: lines deep: edit mode:

122

150 80 3 review only

________________

Piping Specialty Components

font size:

12

input fields gadget = 121 gadget = 122 gadget = 123 gadget = 124 gadget = 125 gadget = 126 gadget = 127 gadget = 128 gadget = 129 gadget = 130 gadget = 131 gadget = 132 gadget = 133 gadget = 134 gadget = 135 gadget = 136 gadget = 137 gadget = 138 gadget = 139 gadget = 140 gadget = 141 gadget = 142 gadget = 143 gadget = 144 gadget = 145

isometric drawing dimension A isometric drawing dimension B isometric drawing dimension C isometric drawing dimension D isometric drawing dimension E

gadget = 161 gadget = 162 gadget = 163 gadget = 164 gadget = 165

pipe support number commodity code weight fabrication orientation details for shop details for field

gadget = 51 gadget = 55 gadget = 68 gadget = 84 gadget = 82 gadget = 83

4.New

Dimension_1 Dimension_2 Dimension_3 Dimension_4 Dimension_5 Dimension_6 Dimension_7 Dimension_8 Dimension_9 Dimension_10 Dimension_11 Dimension_12 Dimension_13 Dimension_14 Dimension_15 Dimension_16 Dimension_17 Dimension_18 Dimension_19 Dimension_20 Dimension_1 & iso dwg dimension A Dimension_2 & iso dwg dimension B Dimension_3 & iso dwg dimension C Dimension_4 & iso dwg dimension D Dimension_5 & iso dwg dimension E

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.

123

________________ PDS Eden for Piping - April 2002

change mode ’not required’ ’echo input’ ’replace text mode’ ’notify by line’ The characteristics form in the Form Builder should have the following settings: ’notify upon completion —> off (NOT the default) ’notify upon initial’ —> off

124

________________ Appendix A:

EDEN Error Messages

Appendix A EDEN Error Messages This section lists the EDEN error messages and explanations of the messages. *** Connect Points Not Defined In Sequence - CPn is missing 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. *** A total of x errors detected - object code NOT generated 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. *** Assignment to read only variable not permitted 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: nom_pipe_d, gen_type, term_type, table_suffix, std_type, min_cyl_dia, dim_tolerance, and min_dimension. *** Incorrect subroutine name in call statement x This error occurs when a subroutine name has been mistyped and does not match any of the valid subroutine names. The x refers to the sequential number of the call statement within the EDEN module. *** Fewer than required number of arguments specified in call statement x This error occurs when an argument has been left out of a call statement. The x refers to the sequential number of the call statement in error within the EDEN module. *** More than required number of arguments specified in call statement x This error occurs when an extra argument has been found for a particular call statement. The x refers to the sequential number of the call statement in error within the EDEN module. *** Argument x is incorrect in call statement y

*** Incorrect data type for argument x in call statement y This error occurs when a call statement is expecting a particular data-type in the argument variable. An example would be the CONVERT_NPD_TO_SUBUNITS call statement. It requires the second argument to be a Real*8 data-type. If an ascii type variable was used in this statement, an error would occur. The x refers to the incorrect argument in call statement y.

125

EDEN Errors

This error occurs when a call statement is expecting a particular argument and receives and incorrect argument. An example would be the DEFINE_ACTIVE_ORIENTATION call statement. It expects one of the following variables to be used for the arguments: CP_primary_n, CP_secondary_n, CP_normal_n. If any other variable is used (i.e. a user-defined keyword), then this error will occur. The x refers to the incorrect argument in call statement y.

________________ PDS Eden for Piping - April 2002

*** Incorrect argument specified in call statement x This error occurs when there is an incorrect argument in a call statement. It is similar to the two previous errors. *** Symbol ID (name) exceeds 28 characters - truncated to (name2) 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. *** INTERNAL ERROR in symbol name provided by parser This error occurs when a blank symbol name is specified in the EDEN module. *** INTERNAL ERROR during object code backpatching 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. *** INTERNAL ERROR - Object code being generated is too big to catalogue This error occurs when the total number of bytes of object code has exceeded 9560. *** INTERNAL ERROR - Number of branch instructions generated exceeds limit The number of nested if-then-else clauses is limited to 5. This error indicates that this nesting limit has been exceeded. *** INTERNAL ERROR - Can not find information specified by parser Due to an internal software error, the data-type for the variable cannot be determined. Error opening specified symbol file 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. Error obtaining graphic commodity library 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. Internal Error building Semantic Symbol Table This error indicates an internal problem in PDS, and is not related to the EDEN module being processed. If this error occurs, contact Intergraph.

126

________________ Appendix A:

EDEN Error Messages

Return Message: Error Writing Text to Text Library 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. Return Message: Error Generating Object Code 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. Illegal Number This error occurs when a number in the EDEN module has character data in it. String Must be 50 Characters or Less This error occurs when a string variable in the EDEN module exceeds the 50 character maximum length. Invalid Operation - x This error occurs when the EDEN module has an illegal use of a relational operator (.gt., .le., etc.). UN-CLASSIFIED symbol

(symbol)

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. SYNTAX ERROR : ( line ) This error occurs when incorrect syntax is used in the EDEN module. For example, this error occurs when the end statement is left off an if-then-else clause. Build Semantic B-TREE Error This error indicates an internal problem in PDS. If this error occurs, contact Intergraph. *** Target is not a Vector and/or Array This error occurs when the EDEN module tries to subscript a variable that is not an array type variable. *** Variable is not declared as ARRAY

EDEN Errors

This error occurs when the EDEN module tries to subscript a variable that is not an array type variable. *** PRODUCTION Has Not Implemented Yet This error occurrs when the EDEN module contains code that is not valid.

127

________________ PDS Eden for Piping - April 2002

128

________________

Glossary

Glossary An alphanumeric code used to identify a group of elements.

AABB code

An alphanumeric code which defines the class of an item.

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.

arithmetic operator

Operator used to form arithmetic expressions.

assembly

see piping assembly

attribute

A property or characteristic of an entity. A column in an entity table.

beginning statements

Eden statements that define the types of modules being entered.

BOM

bill of materials

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.

column

An attribute of a table. A group of columns defines a table.

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.

commodity item

a standard component found in a manufacturers catalog (off-the-shelf component).

component

a graphic symbol representing a commodity item, specialty item, instrument, or pipe support. Gate valves, elbows and expansion joints are examples of piping components.

129

Glossary

AA code

________________ PDS Eden for Piping - April 2002

database

A collection of comprehensive informational files having predetermined structure and organization that can then be communicated, interpreted, or processed by a specific program.

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.

dimension table

see physical data table

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

a high-level parametric language (similar to FORTRAN) which uses information from the Piping Job Specification and Design Database to access parametric and dimensional data, and place parametric symbols.

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.

entity

An object (project, drawing, element, etc.) of interest about which information is stored; a relational database table.

expression

Variables, constants, and operators combined to form statements.

field

An area of a table used to display information or receive input.

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.

GCL

Graphic Commodity Library

generic physical data module

Physical data module containing information common to more than one symbol. Generic physical data modules are called by specific physical data modules.

130

________________

Glossary

a code-listed attribute which identifies the source of the data (industry 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 Library

a data library which contains the parametric symbol definitions (Eden 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.

instrument

an item used to perform a process measurement, process indication, or control function. Instruments can be defined in the Piping Job Specification or defined interactively while working in the model.

interference parametric shape definition

Eden code used to define the interference envelope for a component, to be 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 Library

a library which contains the long bill-of-material descriptions for all piping commodities.

MC

model code

model

a 3-D design volume.

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 definition

Eden code used to define the symbol graphics to be placed in the model.

module

a specialized application within PDS such as the Piping Designer or Equipment Modeling task.

Glossary

Geometric industry standard

131

________________ PDS Eden for Piping - April 2002

monument

the origin point for a coordinate system or design volume.

MTO

material take-off

network

An interconnection of host computers and workstations that enables them to share data and control. The term network can mean the devices that connect the system, or it can mean the connected system.

neutral file

an ASCII file which can be used to load data into a library, database, or design file.

NPD

nominal piping diameter

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

operator

Symbol or string used in conjunction with variables to form expressions.

OT

operator type

PAL

Piping Assembly Language

parametric shape definition

Eden code used to describe the graphics symbol placed for a component in 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.

P&ID

Piping and Instrumentation Diagram

path name

The sequence of directories leading to a file. See also full path name and relative path name.

PDS

Plant Design System

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.

132

________________

Glossary

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.

Piping Materials Class

a classification of components by service or specification. For example, a 150 pound carbon steel specification.

PJS

Piping Job Specification

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.

PMC

Piping Materials Class

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 number

An alphanumeric code used to refer to a specific project.

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.

RDB

Reference Database

Reference Database

A collection of reference data containing information relative to industry design codes, vendor’s catalog data, job specifications, commodity libraries, graphics symbology, label descriptions, report formats and other information of a similar manner.

Relational DataBase Management System RDBMS

A database management system that uses SQL, the Structured Query Language, to implement and query data in relational tables.

Relational Interface System

A generic relational database interface that isolates the differences in 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.

133

Glossary

Piping Assembly Library

________________ PDS Eden for Piping - April 2002

replacement statement

Eden statements used to set variables or perform calculations.

report format file

see format file

RIS

Relational Interface System.

row

A unit of related information in a table. One collection of column values for a table.

schema

An RIS schema identifies a unique database/user combination existing in a commercial database system.

search criteria

a set of values used to scan a database or object library.

seed data

default data used in the creation of new projects/models/drawings.

Short Material Description Library

a library which contains the short bill-of-material descriptions for all piping commodity items and the description addenda for taps.

site

A grouping of three-dimensional world data corresponding to schematic data from one or more units. The relation-ship of site with plant and project is identical to that between unit with plant and project.

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 item

an piping specialty or instrument.

Specialty Material Description Library

a library which contains the bill-of-material descriptions for engineered items, instruments, and pipe supports.

specific physical data module

Physical data module that determines the dimensions and other physical 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.

134

________________

Glossary

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.

TDB

Task Database

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.

toggle

To switch; to change between two alternatives.

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.

variable

An expression whose value can change. Used as a placeholder for information in Eden code. Variables can be either global or local in Eden code.

Glossary

135

________________ PDS Eden for Piping - April 2002

136

________________

Index

Index A arithmetic operators 51 assign connect point 68 generic tap 69 tap 70 B beginning statements 40 bends and branches 35 bolts 36 C call statement 53 comments 50 compiling new modules 109 compute perpendicular vector 71 connect point data 34 convert NPD to subunits 57 D data retrieval from the physical data library 19 default project control data 103 define active orientation 58 connect point geometry 72 dimension data example of data look-up 19 display tutorial 73 do while statement 53 draw cone 60 with capped ends 74 cylinder 61 with capped ends 75 eccentric cone 62 with capped ends 76 hexagon 77

draw (continued) mitered torus 78 octagon 79 parametric shape 80 projected rectangle 63 triangle 64 semi ellipsoid 65 sphere 66 torus 67 with capped ends 81 E Eden basics 13 language structure 39 beginning statements 40 comments 50 ending statements 40 expressions 53 functions 56 keywords 47 operators 51 replacement statements 53 variables 41 editing modules 108 ending statements 40 example physical data look-up 19 expressions 53 call 53 do while 53 if - then - else 55 indexed do 54 replacement statements 53 extracting sample modules 105 F flanges 36 functions 56 G gaskets 36 get physical data 82

Index

137

________________ PDS Eden for Piping - April 2002

global variables 42 piping 43 graphic commodity library 16 parametric shape definitions 30 physical data definitions 26 sub-symbol processor 25 symbol processors 23 data library 15 graphic commodity library 16 notes for graphic commodity data 34 physical data tables 18 H hose 37 I if - then - else statement 55 indexed do statement 54 K keywords common 47 piping 47 L local variables 41 logical operators 52 M modules compiling 109 editing 108 extracting 105 revising 110 move along axis 83 by distance 84 to connect point 85 N notes graphic commodity data 34 bends and branches 35 bolts, gaskets, and flanges 36 connect point data 34 pipe, tubing, and hose 37

138

O operators 51 arithmetic 51 logical 52 relational 52 P parametric shape definitions 30 physical data definitions 26 tables 18 data look-up 19 data retrieval 19 pipe 37 piping specialty components 113 place COG location 86 connect point 87 primitives 57 convert NPD to subunits 57 define active orientation 58 draw cone 60 cylinder 61 eccentric cone 62 projected rectangle 63 projected triangle 64 semi ellipsoid 65 sphere 66 torus 67 piping assign connect point 68 generic tap 69 tap 70 compute perpendicular vector 71 define connect point geometry 72 display tutorial 73 draw cone with capped ends 74 cylinder with capped ends 75 eccentric cone with capped ends 76 hexagon 77 mitered torus 78 octagon 79 parametric shape 80 torus with capped ends 81 get physical data 82

________________

Index

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

Index

139

________________ PDS Eden for Piping - April 2002

140

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF