sofistik_1

Embed Size (px)

Citation preview

  • SOFiSTiKBasics

    Version 2010

    SOFiSTiK AG, Oberschleissheim, 2010

  • SOFiSTiK Basics

    This manual is protected by copyright laws. No part of it may be translated,copied or reproduced, in any form or by any means, without written permissionfrom SOFiSTiK AG. SOFiSTiK reserves the right to modify or to release neweditions of this manual. The manual and the program have been thoroughly checked for errors.However, SOFiSTiK does not claim that either one is completely error free.Errors and omissions are corrected as soon as they are detected.The user of the program is solely responsible for the applications. We stronglyencourage the user to test the correctness of all calculations at least by randomsampling.

  • Basics SOFiSTiK

    i

    1 Introduction. 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.1. SOFiSTiK 11. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2. Examples for the Use of the Software 11. . . . . . . . . . . . . . . . . . . . .

    2 How to use SOFiSTiK. 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.1. Principles 21. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2. Program Modules 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.1. Preprocessing 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.2. Analysis Programs 23. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.3. Design Programs 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.2.4. Postprocessing 24. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.3. User Interface. 25. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.4. Input Files. 27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.5. Database 27. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.6. Interactive Modules. 210. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.7. News 211. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.8. Name Conventions of the SOFiSTiK Files. 211. . . . . . . . . . . . . . . . . 2.9. Backup of Data. 214. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10. SOFiSTiK Options.. 215. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2.10.1. Language Settings 215. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    3 Graphical Input SOFiPLUS(X). 31. . . . . . . . . . . . . . . . . . . . . . . . . 3.1. General Hints 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2. Work Flow 31. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.2.1. Start without the program Structural Desktop (SSD) 32. . . . . . . 3.2.2. Start out of the program Structural Desktop (SSD) 32. . . . . . . . . 3.3. Structure 35. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    4 SSD SOFiSTiK Structural Desktop. 41. . . . . . . . . . . . . . . . . . . . 4.1. User Interface SSD 41. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2. Basic Work Flow 43. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1. Groups 43. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2. Tasks 43. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3. Template Files name.sofistix 47. . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3. Structure and Function Mode 411. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1. Calculation Status 411. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4. Special Features for Start 412. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    5 Input with TEDDY. 51. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.1. Overview 51. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  • SOFiSTiK Basics

    ii

    5.2. Support of international character codes (UTF8) 52. . . . . . . . . . . 5.3. Starting the Editor 53. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4. Commands 54. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.4.1. Combinations with the Altkey (selection) 55. . . . . . . . . . . . . . . . 5.4.2. Combinations with the Ctrlkey (selection) 55. . . . . . . . . . . . . . . 5.4.3. Overview of all Ctrl / AltCommands 55. . . . . . . . . . . . . . . . . . . . 5.4.4. Example with Column Block 56. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.5. Input of Data. 57. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6. Help and Interactive Manuals. 58. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.1. Activating the Help 58. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.2. Acrobat Reader 59. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.3. Creating Your own Comments 510. . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.4. Export/Import of Annotations in Manuals 511. . . . . . . . . . . . . . . . . 5.7. TEDDY the SOFiSTiK Commander. 511. . . . . . . . . . . . . . . . . . . . . 5.8. Special Features of SOFiSTiK 514. . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.8.1. TEDDY Information Centre 515. . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    6 CADINP Input Language. 61. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1. Definitions and Descriptions 62. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.1. Lines (physical sentences) 62. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.2. Records (logical structure) 62. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.3. Separation Characters 62. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.1.4. Data 62. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2. Input Syntax 63. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.1. Basic Input Format 63. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.2. Default Value 64. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.3. Repetition 64. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.4. Increments/Decrements 64. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.5. Comments 65. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.6. Record Continuation 65. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.7. Record Partition 65. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.8. Positioning 65. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.9. Defining Tables 66. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.10. HelpRecord 67. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.11. Generation 67. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.12. List of Values 68. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.13. LET and STO Variables 69. . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.14. Arithmetic Expressions. 612. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.15. FUN Definition of functions 615. . . . . . . . . . . . . . . . . . . . . . . . . . .

  • Basics SOFiSTiK

    iii

    6.2.16. Conversion of Units. 615. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.17. LOOP,ENDLOOP Loops and Jumps 616. . . . . . . . . . . . . . . . . . . 6.2.18. IF Logical Conditions 618. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.19. @CDB Selection of a CDBASE 619. . . . . . . . . . . . . . . . . . . . . . . 6.2.20. @KEY Access to the CDBASE 620. . . . . . . . . . . . . . . . . . . . . . . . 6.2.21. @() Access to the CDBASE 620. . . . . . . . . . . . . . . . . . . . . . . . . . 6.3. General Records. 624. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.1. HEAD Title Lines 625. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.2. END End of an Input Block 625. . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.3. TXB Introducing Text 626. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.4. TXE Concluding Text 626. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.5. Text block 627. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.6. End of a text block 627. . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.7. ECHO Output Control 628. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3.8. PAGE Control of Input/Output 629. . . . . . . . . . . . . . . . . . . . . . . . . 6.3.9. SIZE Graphic Format 632. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4. Generation of Pictures 635. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1. Start of a picture 635. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.2. GNT Scale of a picture 635. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.3. GPL Polyline 636. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.4. GPM Polymarker 636. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.5. GFA Fill Area 636. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.6. GGDP Generalized Drawing Primitive 637. . . . . . . . . . . . . . . . . . 6.4.7. GTXT Text Label 638. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.8. GSCA Dimensioning 638. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5. Attributes of Graphic Representations 639. . . . . . . . . . . . . . . . . . . . . 6.5.1. GCOL Colour Selection 640. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.2. GPLI Polyline Attributes 641. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.3. GPMI Polymarker Attributes 643. . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.4. GTXI Text Attributes 644. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.5. GFAI Fill Area Attributes 645. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6. Insertion of a Picture 646. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6.1. Insertion of a Picture 646. . . . . . . . . . . . . . . . . . . . . . . . . 6.7. Parametric Input. 647. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.8. Compatibility of Data files 649. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    7 DEF Environment Variables. 71. . . . . . . . . . . . . . . . . . . . . . . . . .

    8 Starting an Analysis. 81. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.1. Generalities 81. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  • SOFiSTiK Basics

    iv

    8.2. #DEFINE Parameter Substitution 81. . . . . . . . . . . . . . . . . . . . . . . 8.3. #INCLUDE Block Definitions 83. . . . . . . . . . . . . . . . . . . . . . . . . . . 8.4. #IF Conditional Input 85. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.5. Templates 86. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.6. Iteractive Analysis with Multiple Modules. 87. . . . . . . . . . . . . . . . . . 8.7. Operating System Commands. 88. . . . . . . . . . . . . . . . . . . . . . . . . . . 8.8. Job History 89. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.9. Start of a Single Program 810. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.10. Special Features for Start 812. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    9 Output. 91. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.1. Protocol File (.PRT) 91. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2. Result File (.LST and .ERG) 91. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3. Printout with URSULA. 92. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.1. General 92. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.2. Activation of URSULA 92. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.3. Features 92. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.4. Support of international character codes (UTF8) 94. . . . . . . . . 9.3.5. Printing Dialogue 94. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.6. Advanced Features 96. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.7. Functions in control tree 98. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.8. Special Features for Start 910. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4. Graphical Output GRAFiX. 911. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.1. General Hints 911. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.2. Work Flow 911. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.3. Structure 911. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

    10 Troubleshooting. 101. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.1. General Strategy 101. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2. Standard Warnings and Error Messages 102. . . . . . . . . . . . . . . . . . . 10.3. Troubleshooting Strategies 102. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.1. Problems with Database (*.cdb) 103. . . . . . . . . . . . . . . . . . . . . . . . . 10.3.2. Input Error in TEDDY Datafile 103. . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.3. Error in System Generation with SOFiPLUS 104. . . . . . . . . . . . . . 10.3.4. Error during Calculation 104. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.5. Problems with Results 105. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4. Support 105. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4.1. Support Accessibility 105. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4.2. Customers Obligation to Cooperate 106. . . . . . . . . . . . . . . . . . . . . 10.4.3. Support Request via SOFiSTiK Online Portal 107. . . . . . . . . . . . .

  • Basics SOFiSTiK

    v

    10.4.4. Support Request out of SSD / TEDDY 107. . . . . . . . . . . . . . . . . . . 10.4.5. Create a Diagnostic.xml File 108. . . . . . . . . . . . . . . . . . . . . . . . . . . .

    11 Additional Information and Help 111. . . . . . . . . . . . . . . . . . . . . . . . 11.1. Infoportal 111. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2. CADINP Samples 112. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3. Forum 113. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

  • SOFiSTiK Basics

    vi

    This page intentionally left blank

  • Basics SOFiSTiK

    11Version 2010

    1 Introduction.

    1.1. SOFiSTiK

    The SOFiSTiK AG develops and distributes engineering software with particularemphasis on civil and structural engineering.

    The software has been developed following a sofisticated concept, allowing thestandard user to reach a quick and efficient solution to a given task. Despite thisthe possibilities for a specialist with large experience in numerical methods arenot restricted.

    The software is made up of a modular structure and provides general availableopen interfaces. The modules numerical kernels are classic batch programs,these in turn are getting their input from small text files and a database.

    For each program module there is an own manual. The manuals contain informa-tion about the theoretical backgrounds and descriptions for the input and outputof the programs. We recommend to inform about the respective program modulein the corresponding manual before using the program.

    1.2. Examples for the Use of the Software

    For each program there are introducing examples. A part of these examples aremore detailed described in the respective manual. The input files for theseexamples are to be found in the installation directory SOFiSTiK in the respectivesubdirectories program_name\english.

    Furthermore the users have the possibility to get information about many featuresof SOFiSTiKSoftware on the home page of the SOFiSTiK AG (www.sofis-tik.com) with the link Infoportal. Detailed examples do not only show the powerof these programs but may be used as templates for your own solutions.

  • SOFiSTiK Basics

    Version 201012

    Link Infoportal

    You can find further information about examples and help for the programs in thismanual chapter 11: Additional Information and Help.

  • Basics SOFiSTiK

    21Version 2010

    2 How to use SOFiSTiK.

    2.1. Principles

    The centre of SOFiSTiK analysis programs is a very efficient database(CDBASE). A set of programs, which are addressed by standard text files or bygraphical user interfaces, interchange all their information through this database.

    SOFiSTiKSoftware consists of numerous different modules. For all beginnersthe SOFiSTiKStructuralDesktop SSD is the best choice because it will handlemany of the complex interactions between the modules. There is a separate tu-torial available, a short introduction may be found in the manual SOFiSTiK Bases (sofistik_1.pdf).

    To exploit the full power of the software it is useful to know the modular structureand the CADINPcommand language as this is the most powerful and the mostbasic access method. An experienced user will never disaccustom himself fromthe flexibility of applying CADINP macros, especially for large complex systems.Especially the possibility to keep all secondary information in comments and for-mulas is a very valuable feature.

    There is the following organisation and operating structure:

    Input file or database creation manually or using a generation program

    Performing the Analysis

    Output of results

    The process is not ruled by any rigid system, which means that the software isvery flexible. The user can always choose the most effective form of input for hispurposes and is only constrained by minimal obligations in sequences of analy-sis. Moreover it is possible to transfer data between different computers and oper-ating systems without difficulty.

  • SOFiSTiK Basics

    Version 201022

  • Basics SOFiSTiK

    23Version 2010

    2.2. Program Modules

    2.2.1. Preprocessinginteractive programs:

    CrossMAX Graphical input of cross sections with AutoCAD (part of SOFiPLUS)

    SOFiPLUS Graphical Input of FEmeshes in AutoCADMONET Graphical input of FEmeshesCOLUMN Generation of input data for columnsFOOTING Graphical input of foundations

    (all not described within this manual)

    Batchprograms:

    AQUA Materials and Cross Sections

    SOFiMSHA Import and Export of Finite Elements and Beam Structures

    SOFiMSHB Generation of Finite Element Meshes from GeometryDefinitions

    SOFiMSHC Geometry modeling and Generation of Finite ElementMeshes

    SOFiLOAD Loadgenerator for Finite Elements and Frameworks

    TENDON Geometry of Prestressing Tendons

    CSM Construction Stage Manager

    2.2.2. Analysis ProgramsSTAR2 Statics of Beam Structure Theory of 2nd OrderPFAHL Statics of ThreeDimensional Pile StructuresASE General Static Analysis of Finite Element StructuresHASE Halfspace and other Stiffness ElementsSEPP Statics of Plane Plates and DisksTALPA Statics of Plane or Axisymmetric Geomechanical

    StructuresPHYSICA Multiphysics powered by MPS

    DYNA Dynamic Analysis

  • SOFiSTiK Basics

    Version 201024

    ELLA Extended Live Load Analysis

    HYDRA Seepage and Thermal Analysis with Finite ElementsAnalysis of thermal problems

    2.2.3. Design ProgramsMAXIMA Superposition BDK Lateral Torsional Buckling for Steel Cross Sections

    AQB Design of Cross Sections and of Prestressed Concreteand Composite Cross Sections

    BEMESS Design of Plates and ShellsWIST Angular Retaining Walls (system and design)

    2.2.4. Postprocessinginteractive programs:

    WiNGRAF Graphical Representations of Finite Elements andBeam Structures

    DBVIEW Selective Printing of Data from the Database(will be integrated in GRAFIX)

    Batchprograms:

    AQUP Graphical Representation of General Cross SectionsWING Graphical Representations of Finite Elements and

    Beam StructuresDBPRIN Print Results from the DatabaseSIR Sectional ResultsDYNR Transient Results and Response SpectraPROT Preparation of Tendon ProtocolsTEXTILE Cutting Pattern Membrane Structures

  • Basics SOFiSTiK

    25Version 2010

    2.3. User Interface.After the installation of the software the explorer has linked several file extensiontypes to SOFiSTiK programs and allows a direct start:

    These file types recognized by the explorer have the following contents:

    The extensions .SOFISTIK are the project files of the SDD (SOFiSTiKStructural Desktop).

    The extensions .NDB are the project files for the program MONET.They contain only the data used by MONET.

    The extensions .DAT are input filesA double click will open the program TEDDY, with the right mouse but-ton you have access to WPS (run)

  • SOFiSTiK Basics

    Version 201026

    The extensions .CDB are database filesa double click will open the program Animator, with the right buttonmouse you have access to:

    Dbinfo Programmers diagnose toolExport SOFiSTiK ExportGraphic Graphical presentation of dataTendon Graphical input of tendonsUnlock Remove data base locks

    The extensions .PLB are output files containing text and graphics.The double click will invoke URSULA.

    The extensions .PRT contain the log of the total analysis. They con-tain information about error messages and warnings, statistics, para-meters of the equation system, memory usage and analysis time.

    The extensions .ERG are classical output files in text format. Theyhave the similar content as the .PLB, but do not contain pictures.

    The extensions .LST are the components making the ERG file. TheLST file always contains the result of the last module and may behelpful for fast error tracking.

    The extensions .DBV are documents for the program DBVIEW, theycontain the parameters of certain tabular views on contents of theCDBASE.

    GRA The extensions .GRA are CADINP input files of the program WiN-GRAF and can be opened and modified with TEDDY.

  • Basics SOFiSTiK

    27Version 2010

    2.4. Input Files.The input files are in a free input form in the socalled CADINPformat (seeChapter 5). This is a programmable macrolanguage which makes very efficientinput handling possible. For a static position there are multiple, even nested filespossible.

    The files with the extensions .AQU, .KNO, .ELM, .LAS are files generated byMONET, which are linked to the DAT (input) files. The file .AQU contains materialand crosssections, .KNO the nodes, .ELM the elements and .LAS the loads.

    The extensions .SIR are input files which are generated by the program SIR. Theycan be opened and modified with TEDDY.

    The extensions .SOFISTIX are special presentation files of the SDD (SOFiSTiKStructural Desktop). Using these files you can get default inputs in the SSD forselected systems for a further processing.

    2.5. Database

    For each position of an analysis system one database with a project name andone or more data files are created. The database can be valuable in large projectsand therefore it should be saved via Backup.

    In this context the term system is defined as the sum of all parts of a structureor substructure, which interact statically during their lifetime. The programsSOFIMESH or SOFiPLUS generate the analysis system for the structure beinganalyzed. The total number and the type of the elements are thus definitelydefined. However for the analysis a partial system can be used. This is definedby the group number, which is the truncated quotient of the element number di-vided by a group divisor (e.g.1000). The user should keep this structuring in mindfrom the earliest stages of the design.

    Boundary conditions and material constants can be modified as desired. Loadcases can be analysed or superimposed by the use of certain modules. Designcan be carried out and results can be presented graphically. All results are savedas the most recent values. The analysis of a load case with modified loads over-writes the previous results. When crosssections are modified, all the results thatdepend on them (reinforcement, stresses, etc.) are deleted if not specified other-wise.

  • SOFiSTiK Basics

    Version 201028

    The database is managed by the system CDBASE. Its index sequential structureallows an effective access via a double key. The description of the data is givenvia the file CDBASE.CHM, the subroutines can be obtained by users for program-ming purposes.

    A database can be transferred in both ways to and from the AutoCAD based sys-tem SOFiPLUS.

    A fully interactive program named DBINFO is available for handling the database.It not only prepares statistical information but also allows for various output andediting possibilities and has a powerful copy function.

    The program DBINFO can be called with one of the following possibilities:

    from the command shell call of the command shell in the TEDDY with icon call DBINFO input of the database name

    from the TEDDY right mouse button > Database... > Information

    from the Explorer Marking the database (name.cdb) right mouse button > Open Dbinfo

  • Basics SOFiSTiK

    29Version 2010

    After calling the program DBINFO the following menu appears:

    a Access history o Output mediums Structure (Eements)l Loadcasesm Merge 2nd database b create a backup

    d Dump of records g output with 8 Digits ON

    e Edit records ** on your own risk only !z Clear the error flag

    (Clear all locks if called via DBINFO project,Z)q quit

    Please press the desired key

    Option a prints a log file of all the programs that accessed the database. Optionss and l give information about the load cases and the elements stored in it.

    Option m allows the import of load cases from another database. Although, thisonly makes sense when both databases contain the same analysis system. Sucha need exists mainly for very large systems when several colleagues analyze dif-ferent scenarios for the same system.

    When running DBINFO project,Z all error flags and all the record locks will beremoved. These result from a program crash for example. The removing of thelocks is also possible in the TEDDY with the right mouse button > Database...> clear locks or in the Explorer with the right mouse button > Open Unlock.

    HINT: In the SOFiSTiK environment (Cmp. DEF Enviroment Variables) you canchange the parameter CDACCESS=SINGLE. This will deactivate themultitasking possibilities and no record logs are created.

    Option d displays content of the database. Option e allows the user to change thecontent of the database. You only should do so on explicit order by a SOFiSTiKsupporter. A description of the content of the data base would be advantageousfor this purpose.

  • SOFiSTiK Basics

    Version 2010210

    2.6. Interactive Modules.The modular structure reflects itself in the conception of the interactive modules.Instead of a single window which changes between input and output views, theuser can open several programs with different windows which exchange mess-ages and have access to the same database. To change between the windowsthere are function keys and icons in the tool bar within TEDDY, WPS, URSULAand other programs:

    The program WPS (wps.exe) to perform the analysis

    The program ANIMATOR for animated views of structures and results

    The program URSULA to view and manipulate the printout includinggraphics

    With TASKS it is possible to insert different analysis or design tasks(in analog mode to the tasks SSD SOFiSTiK Structural Desktop).

    The program GRAFiX to generate sofisticated true scale drawings ofsystem, loading and results

    The program WINGRAF to generate sofisticated true scale drawingsof system, loading and results

    The program DBVIEW to create tables with numerical contents of thedatabase and graphic functions. (The program will be integrated intoWINGRAF)

    The program MONET for the graphic construction and mesh gener-ation of system and loading

  • Basics SOFiSTiK

    211Version 2010

    2.7. News

    SOFiSTiK programs are under continuous development. The manuals are notprinted therefore on a regular basis, but are packed together with the programsas PDF files. The changes in the programs are gathered in HTMLLOG files, andare available for the user in several ways:

    SOFiSTiK publishes these files via the Internet.

    TEDDY includes in its help an option for the LOG files.

    2.8. Name Conventions of the SOFiSTiK Files.The most important files of SOFiSTiK software are the input files and the data-base (.CDB). The other types of files are:

    The files of the SOFiSTiK programs have various extensions which have the fol-lowing meanings:

    .EXE Execution program (MSDOS/Windows)

    .DLL Shared dynamic link library (Windows)

    .CMD Batch file

    .ERR Error file of a program containing all error messages,input records and output text in various languages

    .TAB Contains other external data for programs (Tables)

    .TAX Contains user specific attitudes .TBB Contains compiled data of the .TAB files.

    .HTM Latest changes fileThese files contain the changes to each program since thelast manual, as well as the corrected errors.

    .PDF Adobe portable document format (Manuals)

    .CHM Compressed HTML help files

    .WTM Windows macro file for TEDDY

    .DEF Definition file for parameters

    .INI Parameter file for design codes

  • SOFiSTiK Basics

    Version 2010212

    The following files result from an analysis:

    .DAT Input file, (not mandatory)

    .DWG Input file for plan from SOFiPLUS, in which the analysissystem and the load are entered

    .SOFISTIK project files of the SDD (SOFiSTiK Structural Desktop)

    .SOFISTIX template file of the SDD (SOFiSTiK Structural Desktop)

    .AQU Input file for crosssections from MONET generated

    .KNO Input file for nodes from MONET generated

    .ELM Input file for elements from MONET generated

    .LAS Input file for loads from MONET generated

    .GRA Input file from WINGRAF generated

    .DBV Document from DBVIEW

    .NDB Database for MONET

    .NBK Backup of database for MONET

    .NDA Backup of database for MONET for reorganization

    .LST Output files of the individual programs

    .ERG Output files of the entire analysis

    .PRT Protocol file of the entire analysis

    .PLB Result file with text and graphics

    .CDB Database, should not normally be deleted.

    .CDE Eigenforms of dynamic analysis

    .$Dn As well as other files with $ (Windows) or z (Linux) and

    .zdn a letter and number. Restart files (e.g. stiffness matrix)may be deleted; however, these files may have to beregenerated later, which can demand significant computing time.

    .$0n As well as other files with $ (Windows) or z (Linux) and two

    .z0n numbers: Temporary work files that can always bedeleted. Usually these files are deleted by the programitself if it finishes properly. Files with wild numbercombinations in their names are auxiliary files of theoperating system, which can no longer be deleted dueto a warm start of the computer.

  • Basics SOFiSTiK

    213Version 2010

    .$$$ Auxiliary files under Windows which can be deleted.

    .zzz Auxiliary files under Linux which can be deleted.

    .#nn Auxiliary files under Windows which can be deleted.

    .ynn Auxiliary files under Linux which can be deleted.

    .### These are errorlog files under Windows which can bedeleted.

    .yyy These are errorlog files under Linux which can bedeleted.

    .SDB Shadow database: This file is usually deleted by closingof all involved programs.

  • SOFiSTiK Basics

    Version 2010214

    2.9. Backup of Data.Last but not least it must be mentioned that all valuable data can be destroyedunder certain circumstances. Beside clumsiness of the user, information on thehard disk can be destroyed due to faulty hardware, operating system faults oreven a program error.

    Thus you must regularly make Backup copies using the COPY or BACKUP com-mand, this information you can save to floppies or other media. The basic rule isthat valuable information should always be stored in three independent medias,because an error during a Backup may destroy both the copy and the original.Input data should be backuped daily. In the case of larger projects the entire data-base, which is often the result of several weeks of analysis, should be backupedin regular intervals.

    Important data is considered to be your created DATfiles as well as the files .SO-FISTIK and the project files .NDB or .DWG. If your CDB contains important in-formation you may create a condensed Backupversion via DBINFO. WithinTEDDY there is a function to delete unimportant files in your project directories(clean up).

  • Basics SOFiSTiK

    215Version 2010

    2.10. SOFiSTiK Options..

    For the SOFiSTiK programs there are three setting menus available for the spe-cific SOFiSTiK settings.

    Menu Storage location

    SOFiSTiK > User Options Options for the individual PCThese settings are stored in the Regis-try database.

    SOFiSTiK > Global Options Superordinate options for all projectsThese settings are stored in a file SO-FiSTiK.DEF in a parent directory,usually this is the SOFiSTiK programsdirectory. **

    SOFiSTiK > Project Options Options belonging to the projectThese settings are stored in a file SO-FiSTiK.DEF in the current project di-rectory. ***

    ** In a network installation it is possible, to store the file SOFiSTiK.DEFinto a parent directory on the network. In this case, an environmentvariable SOFiSTiK = network path has to be set.

    *** The settings of the file SOFiSTiK.DEF in the project directory over-write the default settings of the parent directory (Global options).

    2.10.1. Language SettingsThere is a difference between the language of the dialogues and the input andoutput language of the files.

    The language of the dialogues is stored within the Registry database on the localcomputer and is adjustable under SOFiSTiK > User Options. The program mustbe restarted to activate this change.

  • SOFiSTiK Basics

    Version 2010216

    The input or output language of the files is saved in a file SOFiSTiK.DEF. Depend-ing on whether this linguistic setting should be valid for all projects or only for onesingle project, the setting is done with SOFiSTiK > Global Options or SOFiSTiK> Project Options.

  • Basics SOFiSTiK

    31Version 2010

    3 Graphical Input SOFiPLUS(X).

    3.1. General Hints

    SOFiPLUS(X) is a CADbased preprocessor to define structures and loads foranalysis with SOFiSTiK programs. SOFiPLUS can be purchased as a pureaddon to AutoCAD or included with an integrated AutoCAD ORM engine asSOFiPLUSX.

    The program writes directly into a SOFiSTiK database while generating a resultfile and a file to control the calculations.

    For the structural analysis SOFiSTiK structural programs are needed.

    3.2. Work Flow

    The general work flow is described in the manual SOFiPLUS_1.PDF. Additionallyyou can find examples and tutorial movies for the individual features at the linkInfoportal at the homepage of the SOFiSTiK AG (www.sofistik.com).

  • SOFiSTiK Basics

    Version 201032

    3.2.1. Start without the program Structural Desktop (SSD)SOFiPLUS(X) is started via the Program Manager or from the link on the desk-top. For working with SOFiPLUS(X) an existing drawing of a structure is usedor the structure is drawn directly. Then a structural system with the appropriatedatabase and AutoCAD units is defined.

    Now the structural system and the loads can be defined.

    The SOFiSTiK database for subsequent analysis use will be generated via theprogram SOFiMSHC.

    3.2.2. Start out of the program Structural Desktop (SSD)The program SSD is started via the Program Manager or from the link on the desk-top. Starting a new project the dialog box SOFiSTiK: System Information startappears on the screen, because working without a database is not possible. Thekind of preprocessing is set to SOFiPLUS(X) graphical Preprocessing.Therefore the part below is filled and additional settings for working with SOFi-PLUS(X) can be configured.

  • Basics SOFiSTiK

    33Version 2010

    After closing the dialog box with OK several tasks are inserted in the project treeto the left. By doubleclicking the task GUI for Model Generation (SOFi-PLUS(X)) the program SOFiPLUS(X) is started.

    Now the structural system and the loads could be defined. The SOFiSTiK data-base will be generated via the program SOFiMSHC.

    To set the default kind of preprocessing to SOFiPLUS(X) graphical Prepro-cessing use the global options (pulldown menu SOFiSTiK Global Options ...).

  • SOFiSTiK Basics

    Version 201034

  • Basics SOFiSTiK

    35Version 2010

    3.3. Structure

    After starting SOFiPLUS(X) the following screen will appear:

    The commands can be accessed via different tools (menus, toolbars, ribbons).Warnings and/or errors during writing into the database will be displayed in thesidebar.

    To become acquainted with the program SOFiPLUS(X) you can retrieve anexample project from the Infoportal. Additionally you can find explanations for agraphical input with SOFiPLUS(X) by means of examples in the SSD tutorial(SSD_TUTORIAL_1.PDF). Training courses for SOFiPLUS(X) as well as forthe program SSD are offered regularly

  • SOFiSTiK Basics

    Version 201036

    This page intentionally left blank

  • Basics SOFiSTiK

    41Version 2010

    4 SSD SOFiSTiK Structural Desktop.

    4.1. User Interface SSD

    The SOFiSTiK Structural Desktop (SSD) represents a uniform user interface forthe total range of SOFiSTiK software. The module controls preprocessing, pro-cessing and postprocessing.

    A double click on the program icon or a sofistikfile will start the pro-gram TEDDY

    The system can be entered graphically with SOFiPLUS(X) or as parameterizedtext input using TEDDY. The control of the calculation and design process takesplace using dialogue boxes, which are accessed via the task tree.

  • SOFiSTiK Basics

    Version 201042

    The screen is divided into three main areas.

    task tree table area work area

  • Basics SOFiSTiK

    43Version 2010

    4.2. Basic Work Flow

    The SSD is task oriented. The tasks are arranged in groups (e.g. the group Sys-tem contains the tasks for materials, cross sections, geometry, loads and com-bination rules). When creating a new project, the necessary groups and tasks areset by default depending on the chosen problem.

    4.2.1. Groups

    The computational groups are organized in a treestructure. This structure canbe changed by the user at any time, as the individual tasks can be dragged to thedesired place with the mouse. The user can remove or insert additional groupsat any time with associated tasks.

    Example of a possible groupstructureof the SSD:

    System: System, loads and combination rules

    Linear Analysis: Calculation and superposition

    Design Area Elements: Design ULS and SLS

    4.2.2. Tasks

    The tasks available are accessed via the rightclickmenu in the task tree. Theycan be normally inserted at any place within the tree. When you select the com-mand Insert Task with the right mousebutton, the following dialogue with allavailable tasks appears.

  • SOFiSTiK Basics

    Version 201044

  • Basics SOFiSTiK

    45Version 2010

    Task Tree

    In the task tree the options are accessed via the rightclickmenu which auto-matically adjusts itself to show only those available.

    Right click menu in the task treeThe right click menu will provide relevant functions for the selectedtask.

    Examples:Process > Dialogue Edit > Text Input

    (name.dat) Reports > Result viewer (name.plb)

    Table Area

    Database information is written in thetable area:

    Possible categories: Geometry Loads Results

    These results can be copied with right click menu into the clipboard.

    Possible format: Text format EXCEL format

  • SOFiSTiK Basics

    Version 201046

    Work Area

    The work area displays the ANIMATOR visualisation of the system by default.The work area changes to WinPS during processing to show calculation statusand the TEDDY for further text input prior to analysis. The graphical input with SO-FiPLUS(X) operates within its own separate window making the best possibleuse of dual monitors.

  • Basics SOFiSTiK

    47Version 2010

    4.2.3. Template Files name.sofistixFor processing of frequently recurrent standard tasks, the Template files of thetype name.sofistix are provided. General templates are saved in a subdirectoryof the SOFiSTiK directory, for example C:\Programs\SOFiSTiK\2010\ANALY-SIS.25\ SSDTemplates.

    Adding User defined Template Directories

    For own Templates, the user can define further template directories.

    SOFiSTiK > User Options > SSDTemplate Path > (FindButton )and Add

    In this directory, further subdirectories can be created. These subdirectories ap-pear as tabs and template icons. There is only one level of subdirectories avail-able.

  • SOFiSTiK Basics

    Version 201048

    User Defined Template Files

    Any file name.sofistik can be stored into the desired template directory as tem-plate name.sofistix.

    All current project settings can be saved as templates including the arrangementand sequence of the tasks. The materials and cross sections are dependent onthe chosen design code. A fixed design code cannot be changed within the pro-ject.

    File > Save Project As Template ...

    A later changing of the code is possible if the template is stored with Savetasks without Design Code dependant information.

  • Basics SOFiSTiK

    49Version 2010

    The existing template directories are shown under directories. The saved file na-me.sofistix is now available as a further template.

  • SOFiSTiK Basics

    Version 2010410

    Usage of Template Files name.sofistix

    File > New Project from Template...

    The existing templates from the template path are offered.

    Root directory: General

    Subdirectories: cadb and pretee

    The desired file name.sofistix is selected and stored under a new data file namewith the button Save As ... into a project directory.

    The new file contains all tasks of the template. In addition, the data (for examplecross sections, geometry... etc.) from the template are transferred into the newfile. The data is then immediately ready for calculation.

    With Templates without Design Code, the design code can be altered. The ma-terials and cross sections must be checked and amended.

  • Basics SOFiSTiK

    411Version 2010

    4.3. Structure and Function Mode

    4.3.1. Calculation StatusEvery task has its own symbol to show the actual calculation status.

    Without calculation Input is written directly into the database

    green check mark no calculation required

    blue arrow new input data > calculation required

    blue cross old data > calculation required

    red cross error message > calculation required

    green cross warning message > calculation possiblenecessary

  • SOFiSTiK Basics

    Version 2010412

    4.4. Special Features for Start

    For special cases the user may start the program from a command shell by usingthe following command lines:

    Parameter Description

    + or ++ Opens the last file or the last but one. Isused without a switch or / .

    nosingle Starts the application as a separate instance(no single application).

    test A general test flag is set. This is only of in-terest for the developers. Depending on thelevel of development, an individual messagewindow is activated.

    noani When starting the SSD the automatical openingof the AnimatorView is suppressed.

    dat:name When starting the SSD a complete DATfile iscreated and the SSD window is closed again im-mediately.

  • Basics SOFiSTiK

    51Version 2010

    5 Input with TEDDY.

    5.1. OverviewTEDDY is a powerful control centre as well as an editor, which fully supports andutilises the CADINP language.

    navigation window for input

    help window

    input window

    TEDDY provides you with an integrated help system listing all the possible com-mands at the status line. By pressing F1 you will get the corresponding manual

  • SOFiSTiK Basics

    Version 201052

    to a specific command (PDF file) on your screen, without interfering with your edi-tor. The ESCkey will close the help window.

    5.2. Support of international character codes (UTF8)Starting with Version 2010, the so called UTF8 characters are processed byTEDDY. In HEAD and TEXTlines now country specific titles, texts and notes canbe entered, which are correctly returned in the result file. The readability of theprintout is thus significantly improved. In particular, for instance, Greek and Cyril-lic characters can be integrated.

    The actual character encoding is indicated in the status bar. With a mouse clickon the coding field a setting dialog opens.

  • Basics SOFiSTiK

    53Version 2010

    5.3. Starting the Editor

    TEDDY is a windows application and can be started by the standard methods.

    a double click on the program icon or a DATfile will start the programTEDDY

    For special cases the user may start the program from a command shell by usingthe following command lines:

    ted [/options] [filename] [line column]

    filename:

    As a filename you may also enter a + or ++ this will load the last orsecond last file respectively. By using abc*.dat the open file dialoguewill be started with the given pattern match. The following command*.* will select the whole directory.

    options:

    /sSofistikPfad Path for the SOFiSTiKexecutables(Change or set the environment variable SOFiSTiK=...)

    /1 to /4 will create additional instances of TEDDYThe number will select the colour of theTEDDYicon.

  • SOFiSTiK Basics

    Version 201054

    Overview of the possible input commands:

    Parameter Description

    + or ++ Opens the last file or the last but one. Isused without a switch or / .

    0 1 2 3 4 Allows the start of up to 5 instances

    (Default: 0).

    nosingle Starts the application as a separate instance(no single application).

    test A general test flag is set. This is only of in-terest for the developers. Depending on thelevel of development, an individual messagewindow is activated.

    Line No. The cursor is placed directly into the givenline. The line number must be the last trans-ferred parameter.

    5.4. Commands

    The most important functions are accessible via the function keys:

    F1 help to the current input record (quit with ESCkey)

    F2 search

    F3 search again

    F4 search and replace

    F5 mark Block start or end

    F6 copy marked block

    F7 move marked block

    F8 duplicate current line

    F9 change window

    F12 start analysis

    Moreover there are a lot of special keys. These are combinations of the Altkeyor Ctrlkey and another key pressed simultaneously. These combinations are avery useful feature for an experienced typist used to the touch typing method.Some of the combinations are given below:

  • Basics SOFiSTiK

    55Version 2010

    5.4.1. Combinations with the Altkey (selection)

    Alt + L marks several lines (block of lines)

    Alt + B marks several columns (column block)

    Alt + H remove block markers

    Alt + R read file as block

    Alt + W write (marked) block to a file

    Alt + Z copy marked block

    5.4.2. Combinations with the Ctrlkey (selection)

    Ctrl + A marks all

    Ctrl + C copy marked block

    Ctrl + V paste marked block

    Ctrl + X cut marked block

    Ctrl + S save file

    Ctrl + Y delete Line

    Ctrl + Z undo

    5.4.3. Overview of all Ctrl / AltCommandsA complete arrangement of all Ctrl commands, you will find in the TEDDYhelpmenu Help > Ctrl commands ....

    If you press the Ctrlkey and the Kkey (Ctrl+K) for more than two seconds youwill get also an overview of all the special key combinations:

  • SOFiSTiK Basics

    Version 201056

    Here one will also find combinations of three keys (Ctrl+K + R) and their counter-parts with the Altkey (Alt+R).

    5.4.4. Example with Column BlockAn empty column block will be created:

    (Alt + B) key for block start

    drag the block

    (Alt + B) key for block start

    The block is now marked with a certain colour.

    (Alt + Z) key

    The column number dialogue is now active. Now you can do a lot of things withthe values in the column, like generating sequences or calculating the sum of thevalues, just to mention a few.

  • Basics SOFiSTiK

    57Version 2010

    5.5. Input of Data.

    Every SOFiSTiKprogram expects input data. The data is supplied in text files.The data is stored in a certain sequence, so that each program knows where toget its data. An input segment thus starts with the reserved identifier PROG andthe name of the program for which the data is to be used. A file may contain inputto as many modules as desired or needed, e.g.

    PROG AQUAData for the AQUA program

    PROG SOFIMSHAData for the SOFIMSHA program

    PROG SEPPData for the SEPP program

  • SOFiSTiK Basics

    Version 201058

    TEDDY is able to recognize a file as an input file by the structure of the very firstline. It can for example look as follows:

    PROG progname

    +PROG progname

    PROG progname

    $PROG progname

    Further TEDDY assumes every file having the extension .DAT to be a SOFiSTiKinput file. You may specify other extensions via the option Extras > File type.

    Provided that the file progname.ERR exists, TEDDY can recognize all recordnames and their corresponding commands. The statusline of the window dis-plays the current record name and its commands as well as the name of the mo-dule used and the current input language.

    record name list of items module

    language

    5.6. Help and Interactive Manuals.

    5.6.1. Activating the HelpHelp is activated with the F1key. The page of the manual, matching the currentinput command of the current program will be shown. The names of the manuals,which are in PDF format, are composed with the progname and a special char-acter sequence (_0 German or _1 English) indicating the language. They haveto be available of course.

    In a navigation window you will see the table of contents, which allows you to jumpto the theoretical or the example sections in the manuals. But as soon as TEDDY

  • Basics SOFiSTiK

    59Version 2010

    becomes the active window again, the help will automatically switch to the currentmanual page.

    You may quit help with the Esckey, but only if TEDDY is the active window. Asan alternate method you can use the close (X) button of the Acrobat Reader.

    It is possible to print out the complete manual or just a couple of pages. The layoutof the manual is optimised for a double sided print out.

    5.6.2. Acrobat ReaderFor viewing the manuals you will need the Acrobat Reader (Version 5.0 or higher)This software is share ware. If the Acrobat software is already installed on yourcomputer no alterations are made by the SOFiSTiK setup.

    You can also change the size and position of the help window. The best optionis not only a matter of taste but also of the screen resolution. The following optionsare available:

    Help F1

    Freeze Keywords

    Arrange Help Vertical

    Arrange Help Horizontal

    Full View for Help

    Close Help Esc

    Hint: If you close the Acrobat with an from within the TEDDY window itwill stay in memory and pop up very fast the next time.

  • SOFiSTiK Basics

    Version 2010510

    5.6.3. Creating Your own CommentsIf you want to make annotations within the help files you will need a full versionof the Adobe Acrobat, which is also recommendable for many more reasons.

    The tool bars should be activated. You will now have several tools available.Choose on of them via mouse click and create your comments. (See the AdobeOnlineHelp for more details)

    When leaving the PDFfile you should save your changes. The annotations aresaved into the PDF file and may be also seen from the Acrobat Reader. Howeverif you want to change the annotations you need the full version of Acrobat again.There you have a navigation window with all annotations selectable, editable anderasable.

  • Basics SOFiSTiK

    511Version 2010

    5.6.4. Export/Import of Annotations in ManualsBefore loading a new version of the manual especially when obtaining auto-matic updates you should save your annotations and reimport them within thenew PDFfile. Thats why the automatic lifeupdatetool SONAR has several op-tions to deal with the manuals. The intended option is to keep all new manualsin a separate download directory. Then you should copy the plugin from the SO-FiSTiKCD \statik\win32\extra\ImExAnot.api into the Plugin directory of yourAcrobatInstallation.

    You open then all PDF files with annotations and have the choice between:

    File > Export > All SOFiSTiK Annotations

    File > Export > Own SOFiSTiK Annotations

    The original possibility of the AdobeExport is not so well suited, as it is boundto the page numbers, while our plugin uses the names of the pages (e.g. Re-cordnames). Thus on a new version with additional inserted pages you will findyour annotations at the originally intended place in most cases.

    The annotations will be saved into a file of type FDF (name.FDF). When you havethe new PDF version opened, you may import them via:

    When leaving the PDFfile you should save the changes of course.

    If you use SONAR to download the newest versions from the Internet, you mayhave the problem to exportimport comments for many manuals. Thats whythere is the option file > batch processing > SOFiSTiK Comments to do this forall PDF between two directories.

    One possibility to manage this properly, is to download the manuals always intoa special download directory, assuring that (only) newer versions will be treatedalways. In a second step (if the filedate of a manual is larger than the last export/import) one has to copy these manuals to a third temporary directory, where theyare updated from the old PDFs, before replacing them.

    5.7. TEDDY the SOFiSTiK Commander.Besides the editing features of TEDDY, it is used as a control centre of the totalanalysis. From TEDDY you can start the calculations and call up the pre andpostprocessing modules. To execute these features a tool bar is supplied inTEDDY, which consists of the following icons:

  • SOFiSTiK Basics

    Version 2010512

    Overview of modules in data file

    Program start WPS (F12)

    Quick start PS (without prompt)

    Quick start PS only current module of the input

    +/PROG (Change of module selection)

    (+) PROG with filter

    +PROG (activate all modules)

    PROG (deactivate all modules)

    +/PROG from to Cursor

    SOFiSTiK data files

    Input file *.DAT

    Result file *.ERG

    List file *.LST

    Protocol file *.PRT

    MONET

    Animator (Structure and results animated)

    GRAFIX (graphical results)

    WinGRAF (graphical results)

    DBVIEW (selected printed results)

    Result viewer URSULA

    Tasks (see also SSD)

  • Basics SOFiSTiK

    513Version 2010

    Data export from CDB

    Archive

    Clean up

    Explorer

    CommandShell

  • SOFiSTiK Basics

    Version 2010514

    5.8. Special Features of SOFiSTiK

    In the rightclick menu of TEDDY some important commands are put together tosupport the work with SOFiSTiK. The settings in this rightclick menu can be cus-tomised by the user with the menu Extras > edit macros > SOFiSTiK.wtm.

    Within the menu SOFiSTiK you will find some specific features aimed at SOFi-STiK programs.

  • Basics SOFiSTiK

    515Version 2010

    5.8.1. TEDDY Information CentreInformation about installed programs Help > Licenseinfo

  • SOFiSTiK Basics

    Version 2010516

    Manuals Help > SOFiSTiK Documentation

    For every SOFiSTiK program there is a LOG file in HTML format. Here all thechanges and enhancements are listed for the respective versions of the pro-grams.. Help > SOFiSTiK LOG Files

    With the program Diagnose all SOFiSTiKspecific settings and resource files arecollected. It is very helpful for installation problems or problems caused by the op-

  • Basics SOFiSTiK

    517Version 2010

    erating system. (But available only in German)Help > Diagnostic

  • SOFiSTiK Basics

    Version 2010518

    This page intentionally left blank

  • Basics SOFiSTiK

    61Version 2010

    6 CADINP Input Language.

    The input language CADINP for free input format of data is the result of a furtherdevelopment of a project CADINT, which originated from the Federal Ministry ofResearch and Technology for the study in the CAD area (M.Ahn, K.H.Bckeler,W.Haas / Eingabe Konventionen fr CADProgramme, CADBericht KfkCAD39, Kernforschungszentrum Karlsruhe, 1976).

    The variation of this format, which was developed by SOFiSTiK, includes severaladditional capabilities. In certain points it therefore has some deviations from theabove mentioned CADINT standard.

    The full capability of the language can be achieved in combination with SPSand/or WPS, when functions for block building and parameter substitution areused. CADINP and SPS represent a full programming language for the calcula-tion of problems in structural engineering, which will outdo any guided GUI. Theprocessing occurs in two stages.

    SPS or WPS use a single file or a set of subfiles to create an input file forevery program being used. This is called parsing. During this process glo-bally defined text elements are inserted and larger blocks are inserted orskipped. Strings are addressed with $(name). The strings can be definedor undefined in the input file or the SOFiSTiKenvironment. At this stageno calculations have take place, that is why there is a difference, whetherthe string A = 2+2 is inserted at $(A)*3 or ($(A))*3.

    Each computational program starts its own CADINP processor, whichthen starts the arithmetic calculations. The variables used within CADINPare marked with a # at the beginning. They do not need any brackets andrepresent numbers. They can be converted to text input data whereneeded, especially within comments. However they can only be usedwithin the local scope of the single program.

    The combination of these two stages allows the description of a complete analy-sis systems by means of manual calculations and documentation of the analysisassumptions and the resulting computer calculations. This in turn produces acomplete analysis document in the computer.

  • SOFiSTiK Basics

    Version 201062

    6.1. Definitions and Descriptions

    6.1.1. Lines (physical sentences)The input consists of lines. Each line contains up to 255 characters and corre-sponds to one line on the screen.

    6.1.2. Records (logical structure)Similar or logical connected data are put together in records. Each record has aname. The records do not have to conform with the line separation.

    6.1.3. Separation CharactersThe individual values within a record are separated by the separation character.One or more blank characters (space bar) serve as separation characters.

    6.1.4. DataData can be numbers or text (=Literals). Numbers may have a sign and an expo-nent. If an integer number is expected, the given number will be rounded to thenearest integer, e.g.

    2 0.04 .5 3.7E8 0.5E3

    Texts are arbitrary strings of characters. Only the first four characters are signifi-cant. Text should be delimited by apostrophes if there is danger of confusion withnumbers, record names or items, or if it includes blank spaces or the characters, or ; or $, e.g.

    ALFA NODE 1S45 A B 1.45 A;B Ab"

    With Version 2010 all international characters (UTF8) may be used, previous ver-sions allowed only the local codepage characters. However the short ident keyswith exactly 4 characters allow only for pure ANSIcharacters (i.e. no Umlauts oraccents).

    Lower case characters are automatically converted to uppercase characters, aslong as they are not between apostrophes. However a few exceptions are en-forced to upper case (e.g. names of actions) to avoid ambiguites, these will bemarked as LITnn instead of Litnn in the column unit.

    If a literal contains a variable (see 6.2.13.) there are three cases to be distin-guished:

  • Basics SOFiSTiK

    63Version 2010

    The literal has been defined with apostrophes and starts with an equal sign(=). In that case the literal is passed unchanged but without the leading =to the program allowing to define formulas. This if course only useful if theprogram can handle the literal in that form as intended.

    If the variable has been defined with a literal, this content will be insertedinstead of the variable.

    If the variable has been defined with a value, this value will be formattedand inserted instead of the variable in the literal.

    For an optional literal i.e. instead of a number and for variables containing literalsonly the form #name without any arithmetics or indices is allowed (e.g. A#1 with#1=25 yields A25). Within a real pure Literal however you may use the #() func-tion with the format as a second parameter i.e. #(#ALPHA,8.3). The integer partof the format selects the number of total characters (8), while the decimal part se-lects the numbers of decimal digits (3). The first argument may be any complexarithmetic expression.

    6.2. Input Syntax

    6.2.1. Basic Input Format The input consists of records.

    The input record consists of the record name followed by data in the orderspecified in the input description.

    Each record occupies one input line.

    The record name can be omitted when the record is of the same type asthe preceding one.

    A record can start at any position in a line.

    The data is separated from each other by one or several separation char-acters.

  • SOFiSTiK Basics

    Version 201064

    6.2.2. Default ValueIf the minus sign () is given instead of a data value, the program uses the corre-sponding default value as specified in the programs description.

    If less data is entered for some record than its description demands, the corre-sponding default values will be used in the place of the missing data.

    The minus sign must be embedded between separation characters.

    Default values can be redefined inside a header record that defines a table.

    6.2.3. RepetitionIf the equal sign (=) is entered in the place of a data value, the program will usethe corresponding value of the preceding record. However this is only possibleif the record name has not been changed.

    If two equal signs (==) (with no blank spaces in between!) are entered, all of thevalues in the following records will be the same. Positioning of the preceding re-cord is not considered.

    If the value of the previous record is a generation instruction or a list of values,the generation or the complete list will be repeated.

    The repetition characters must be enclosed in separation characters.

    6.2.4. Increments/DecrementsIf a double plus or minus (++ or ) is entered in the place of a data value, theprogram will use the corresponding value of the preceding record incrementedor decremented by 1. This will also work with Literals, Lists and Generation se-quences. However this is only possible if the record name has not been changed.

    The increment/decrement characters must be enclosed in separation characters.

  • Basics SOFiSTiK

    65Version 2010

    6.2.5. CommentsThe comment characters $ , ! or // turns the rest of a line into a comment, whichwill be ignored by the program. All this comment operators should be separatedfrom the comment itself and the input data in the same line with a separation char-acter.

    Within a +PROGline (see SPS) only the $character is allowed as a commentand it must be separated by blancs. Within a +SYScommand line no commentsare allowed at all.

    6.2.6. Record ContinuationA double dollar sign $$ means that the input record is continued in the next line.

    The characters following $$ are considered as a comment.

    A separation character must be entered right before $$. Thus it is not possible towrite expressions or a list of values extending more than one line.

    6.2.7. Record PartitionMore than one record can be in the same line.

    The records must be separated by a semicolon (;).

    The semicolon needs not to be between separation characters.

    This feature is not valid for the input of text lines (e.g. HEAD).

    6.2.8. PositioningBy entering a name of an item inside a record, you can provide the value for thatitem regardless of its position.

    Example:A record is defined by the items K1 K2 K3 K4 K5. The following input isthen equivalent:

    RECORD 1.00 2.00 3.00RECORD 1.00 K4 2.00 3.00RECORD K1 1.00 K4 2.00 K5 3.00RECORD K4 2.00 K1 1.00 K5 3.00

  • SOFiSTiK Basics

    Version 201066

    6.2.9. Defining TablesThe predefined order of the input data can be altered by entering a record consist-ing only of the names of the items. In this case the following records must not con-tain a record name, as this would reinitialize the sequence of items.

    The last example could have also been given as:

    RECORD K1 K4 K5 1.00 2.00 3.00

    A table definition remains valid until a new record name is entered or the samerecord name is repeated. Inside a table the positioning is still possible even forthose items not defined in the table definition.

    The default values can be modified inside the header of a table by following theitem with an equal sign (=) and the new default value without any separation char-acters.

    RECORD K1 K2 K5=4 1 2 6 2 5 3 6

    is equivalent to

    RECORD K1 K2 K5 1 2 6 2 5 4 3 6 4

    Such a construct is also a nice suitable solution to the problem of ambiguous lit-erals. If a literal value exists (e.g. GRP) for the first item position which is also avalid record name, a change of the sequence and perhaps a default assignmentmay solve this problem without the need to use quotes:

    BEAM TO TYPE PA FROM=GRP 1 TEMP 30 2 TEMP 25

  • Basics SOFiSTiK

    67Version 2010

    6.2.10. HelpRecordA list of the possible record names can be obtained by entering HELP. HELP fol-lowed by a record name prints a list of the items of the record. HELP followed bya record name and an item name will print the allowable input values and para-meters for the corresponding position.

    This option is meaningful especially during interactive error finding.

    6.2.11. GenerationAn instruction for automatic record generation can be given instead of a datavalue. In this way a series of records can be created automatically.

    When generating a record the command must be enclosed within parentheses.Its elements must be separated by separation or underline characters.

    There are two types of generation instructions:

    primary automatic generation instruction

    (Start_value End_value Increment)

    secondary generation instruction

    (Start_value Increment)

    The primary generation instruction specifies the number of the individual recordsto be generated. It can be used only once per record, yet in any position insidethe record. The corresponding secondary generation instruction can be definedfor every parameter.

    The generation of literals is also possible. The increment is then also consideredas a literal but may contain only numbers.

    The increment can also be negative.

    If the specified end value of a primary generation instruction is not reached withan accuracy of 0.0001 of the increment, an error message will be displayed.

    The other generation instructions of the CADINTlanguage are not implementedbecause they contradict with the arithmetic expressions.

  • SOFiSTiK Basics

    Version 201068

    Example:

    NODE (1 5 1) 0 (0.5 0.1)

    generates the input records:

    NODE 1 0 0.5NODE 2 0 0.4NODE 3 0 0.3NODE 4 0 0.2NODE 5 0 0.1

    Example:

    REIN (A0.1 D0.4 10.1)

    generates the input records:

    REIN A0.1REIN B0.2REIN C0.3REIN D0.4

    6.2.12. List of ValuesA list of values can be given instead of a generation loop . This is a series of valuesseparated by commas or underline characters.

    Value,Value,Value,Value e.g. 1,2,7,9

    A list of values may not contain any separation characters and can not be spreadacross multiple lines.

    When several lists of values are defined within a single record, their number ofvalues must agree not only with each other, but also with any other defined pri-mary generation.

    The maximum number of values per list is limited by an internal amount of mem-ory. A list of 25 values is usually possible.

    A list of values can also be built up by fixed literals (LIT). Combinations of numbersand literals or a list of freely defined literals are however not allowed.

  • Basics SOFiSTiK

    69Version 2010

    6.2.13. LET and STO VariablesOne can define variables to be used in the following records. A # must be setbetween the input of LET or STO and the variable name. These variables are des-ignated as up to 16 characters of an alphanumerical text (1st character has tobe a letter) and an optional index or only by a #sign followed by a simple numericalpositive value. The variables can be used then instead of numbers. The assign-ment of a variable is performed by the record LET# or STO#. This item is followedeither directly by the name of the variable without any separation characters, orafter a separation character by an expression for the variable number. After onemore separation character follows the value to be assigned to the variable. LET#or STO# do not alter the currently defined record name and must be given in eachassignment. Names of variables must not contain special characters or collidewith a reserved sequence of characters like (SIN, COS or SQR). Instead of onenumerical value a list of values or a primary generation instruction or a literal maybe entered. In this case the rest of the values is assigned to the variables followingthe input variable. This defines an array if a named variable is used.

    A variable is used if the item or an expression comntaining the variable is providedwith a leading = character. For special cases like the insertion within a literal, as-signment of a default value, conflicts with identical function names, it is possibleto identify a string as a variable name with a leading # sign.

  • SOFiSTiK Basics

    Version 2010610

    Examples of variable assignments:

    LET#PI 3.1415 $ Pi is assigned to variable #PILET#TXT My Text $ Assigning a literalLET#11 4,5,6 $ assigned to variables 11,12,13LET#A 4,5,6 $ 4,5,6 are assigned to A[0:2]LET#A(2) 5.1 $ Assignment to an array elementLET#A(3) 7,8 $ Enlargement by 2 elementsLET#1 =A(1) $ Using second element of arrayLET#1 #(A+1) $ Using second element of array

    LET# #10 12.50 $ 12.50 is assigned to variable,$ whose number is stored in #10$ (Indexing)

    LET#4 ##10 $ Value of the variable, whose$ number is stored in variable #10,$ is assigned to variable 4

    LET#F(100) 0 $ Declaration of an array,LET#F 1,2,3,4,5,6,7 $$ filling via lists11,12,13,14,15,16,17 $$ and consecutive lines21,22,23,24,25,26,27

    If a variable is assigned to an expression, the expression is calculated firstand then its value is assigned to the variable.

    To print variables for debugging purpose you may use the construct PRT# witha similar syntax for addressing the variable name. The name of the variable is ex-pected without separation characters immediately behind the #. For more com-fort one should use TXB / TXE or within literal text.

    Variables with a name may be saved permanently in the database. The commandSTO#name will save the current or specified value of this variable in the data-base, which then can be used by all other programs accessing the database fromthat.

    e.g.STO#c 30 $ assignment and storage of the variable

    $ in the database

  • Basics SOFiSTiK

    611Version 2010

    If a save variable should be removed from the database there is the commandDEL#name. For this case it is also allowed to specify wild card characters. Thecommands DEL#OPT* or DEL#A?00 will delete all variables with that pattern.

    For special cases it is possible to reinitialize a variable with the last saved valuewith the following commands:

    RCL#ALL Read all named variablesRCL#name Read one named variable/arrayRCL#name(3) Read one entry of an arrayRCL#name cdbfile Read variable from another CDB data base

    Reserved VariableNamesThere are some reserved Names, which are automatically created by a pro-gramm run. The user may use and redefine those names however within his CA-DINPdata block with new values.

    Variables VERSION(0) and VERSION(1) will be preset with the versionnumber of the Release (dll) and the program itself, allowing to define com-mon input data for multiple versions.

    Variable PI will be preset to 3.141593.

    The arrays of variables GRP_MASS, SCT_MASS and MAT_MASS aswell as GRP_REIN and SCT_REIN are redefined after a print or evaluationof system statistics. They contain the masses (MASS) and reinforcements(REIN) of all groups (GRP_) and section numbers (SCT_) or Materials(MAT_), where the index 0 contains the total sum.

    All other variables start with the first three characters of the program creating themfollowed by an underline:

    ASE uses the array ASE_ITER as followsASE_ITER(0) = first load case numberASE_ITER(1) = last load case numberASE_ITER(2) = last achieved load factor

    Variables of Array AQB_USAGE will be set by AQB with the usage factorsof the design tasks of the last input block.

    All Variables starting with OPT_ are reserved for OPTIMA.

    To trace the assignment of values, there is a command DBG#. This will toggle testprints and an interactive debug mode. DBG# uses the variable #0, which can not

  • SOFiSTiK Basics

    Version 2010612

    be used for other purpose therefore

    DBG#0 No output of intermediate valuesDBG#1 Output of the generated input recordsDBG#2 Additional output of all value

    assignmentsDBG#3 Additional output of selected structures

    (CDB access)DBG#4 Printout to console stream/windowDBG#8 Input from console stream/window

    (interactive mode)DBG# Switch between option 15 and option 0

    (=break and continue)and

    DBG# 2 Immediate STOP of total program run, although all outstandingTXELines will be printed after the errormessage

    6.2.14. Arithmetic Expressions.In place of a numerical value any desired arithmetic expression may be used. Theexpression may contain parentheses, but no separation characters.

    The allowable operators are:

    + Addition, Subtraction* / Multiplication, Division** or ^ Exponentiation

    == Condition of equality/inequality>= < Relational condition

    result: true (1.) or false (0.)& | Bitwise logical operation on the

    integer part with AND or OR

    If no operator is given, a multiplication will be performed. The bindings of the oper-ators are according to the mathematical rules.

  • Basics SOFiSTiK

    613Version 2010

    The following functions are allowed inside an expression:

    SIN(x),COS(x),TAN(x) Trigonometric functionsATN(x),ATN(y,x) Arc of tangent x or y/xARC(x) Convert angles to arcusSQR(x) Square rootABS(x) Absolute valueEXP(x) Exponents of eLOG(x) Natural logarithmLGT(x) Base 10 logarithmDIV(x,y),xDIVy,DIV(x/y)Integer part of x/yMOD(x,y),xMODy,MOD(x/y)Division remainder of x/yMIN(x,y,..),MAX(x,y,..)Minimum or Maximum numbersRANDOM(x) random value between 0 and 1

    (x=0 reinitialises the seed)IIF(expr,val1,val2) returns val1 if expr is not

    equal zero and val2 if exprequals to zero.

    Arithmetic expressions may also appear within a list of values or generation in-structions. The functions DEG, GON and RAD may be placed before any argu-ment, but separated from it by a comma. Their definition is kept if an assignementcontains only one of those names (e.g. LET#0 RAD).

    Examples:

    SIN(30.)+3*COS(45.) oder SIN30+3COS45SIN(RAD,2.435)

    100.+MOD(354,32) oder 100+354MOD32

    120.+12.3(5.0+4.0)

    COS(#1) SIN#1 345*#11+##12

    Interpolation and Tables:

    A special feature is available when accessing arrays of variables. If the index isnot integer, but rational, an interpolation between the values of the array will takeplace:

  • SOFiSTiK Basics

    Version 2010614

    LET#A(0) 10.0LET#A(1) 14.0LET#A(2) 16.0LET#A(3) 17.0

    LET#B =A(1.3) => #B = 14.6

    The same procedure is also available for higher interpolation schemes. Then weneed two arrays of the X and Y values with the same length. These variables arethen connected by a special assignement of a literal as a table definition:

    LET#X 0.0,2.0,3.5LET#Y 0.0,100.0,100.0LET#SIG TAB(X,Y)

    The expression SIG(1.73) interpolates for this Xvalue betwen the given Yva-lues linearly. If higher functions are requested, a third array is needed, giving thederivatives of the function:

    LET#DY ,0,LET#SIG TAB(X,Y,DY)

    For the example above only the derivative at the middle point has been specified.Thus we have quadratic parabulas for the interpolation function. If derivatives arespecified at both ends of an interval we have cubic splines as interpolation func-tions.

    Variables and Literals:

    In case it is required to store text in a variable this may be done with the LET/STOcommand in the same way:

    LET#TEXT ABCDEFGHIJK

    The text will be saved in blocks with 4 characters each in the name of the variable,#TEXT(1) would thus be equivalent to EFGH in the above example and it ispossible to change that item only, but there is no storage of single characters.However when using a text variable it is possible to use sub strings with the format#TEXT(3:7) selecting the third to seventh character. (Instead of the numbers anyarithmetic expresssionas are also valid of course). A text variable may be readfrom the CDB and it is possible to convert with a LET/STO command a text tonumbers. The following example will save the two numbers in variables #VALT(0)and #VALT(1):

  • Basics SOFiSTiK

    615Version 2010

    LET#TEXT 1.23,1.48LET#VALT VAL(#TEXT)

    6.2.15. FUN Definition of functionsIf an arithmetic expression is needed more often or the meaning of a variableshould be changed during the run, it is possible to define a function. Such defini-tion is done as a literal according to:

    LET#F =FUN(var,formulaexpression)e.g.

    LET#F =FUN(x,3*#x**32*#x**2+5*#x)LET#1 #F(1.234)

    The Literal has to start with the character sequence =FUN( , followed by a formalparameter name, followed by an expression containing any variables defined sofar. If the formal parameters name has been defined already, it will not be changedby the call. Recursive calls are allowed.

    6.2.16. Conversion of Units.For every numerical value, list of values or generation it is possible in general toappend the input unit explicitly in square brackets. So instead of definig a lengthin the default unit m as 0.3048 it is also possible to specify 304.8[mm] or 12[in].CADINP will check however if that unit is allowed, thus this option is only availablefor those items selected for this option. These are identified in the manual with a[*] in the column named dimension.

  • SOFiSTiK Basics

    Version 2010616

    6.2.17. LOOP,ENDLOOP Loops and JumpsThe most powerful form of generation is achieved through loops. This formcorresponds to the FORTRAN DOLoops or to the FOR NEXT loops of BASIC.The loop is initiated by the record LOOP and terminated by the record EN-DLOOP. A loop is executed as many times as determined by the number followingLOOP. It may also be terminated if the expression following ENDLOOP becomeszero or negative. If the name of a variable is given instead of the number after theLOOP, then the number of elements contained in that variable will be used.

    Loops can be nested up to 32 levels, containing any number of input elements.If LOOP is not followed by a number, it will be performed at most 9999 times.

    Each loop construction must not exceed 255 lines. Multiple records, however,can be entered at the same line (separated by ;). If you still need more than 256lines you have to specify before the first LOOP

    LET#LOOPSIZE number_of_lines

    It is possible to store the index of the loop in a variable, if the name is appendedto the LOOP keyword. The index starts counting at zero. The variable may bechanged within the loop, but it will be restored after evaluation of the terminatingcondition in each cycle.

    Example: Generation of nodes and springs on a semicircle at a distanceof 30 degrees.

    LET#1 1 , LET#2 0.LOOP 7NODE #1 COS(#2) SIN(#2)SPRI #1 #1 DX COS(#2) DY SIN(#2) CP 1.E5LET#1 #1+1LET#2 #2+30.ENDLOOP

    Instead of LOOP 7 / ENDLOOP you could use LOOP / ENDLOOP #2

  • Basics SOFiSTiK

    617Version 2010

    LOOP 2 ; BDIV 0.5 #1+1 ; 0.2 1 ; ENDLOOPENDLOOP

    creates:

    ADEF 1 ; BDIV 0.5 1 ; 0.2 1 ; 0.5 1 ; 0.2 1ADEF 2 ; BDIV 0.5 2 ; 0.2 1 ; 0.5 2 ; 0.2 1ADEF 3 ; BDIV 0.5 3 ; 0.2 1 ; 0.5 3 ; 0.2 1

    If you want to run a loop over all elements of an array, this may be done by givingonly the name of the array (without the # ):

    LET#A 10,22,34,55,76,83LOOP#1 A $ Only the name, #A would be the value 10! KNOT #1+1 X #A(#1)ENDLOOP

    With a small extension it is also possible to store the number of elements in a vari-able, where the value of 0 is obtained if the variable does not exist:

    LOOP#NUM DEF(A) ; ENDLOOP

  • SOFiSTiK Basics

    Version 2010618

    6.2.18. IF Logical ConditionsConditional blocks are an important element of every programming language.The execution of jumps (go to) is not possible within CADINP as it is proven tobe able to solve any problem without this feature. The conditional block is ex-ecuted if the expression following the IF is greater than zero. You might want touse the logical expressions for this. Texts may be only compared with == and !=operators, the comparisson is case sensitive.

    Example:

    $ #1 is the control variable with possible values +1/1IF #1

    These lines are input when #1 > 0...ELSE

    These lines are input when #1 < 0 or = 0...ENDIF

    IF #1==12These lines are input when #1 equals 12

    ...ELSE

    These lines are input when #1 does not equal 12...ENDIF

    The generation of a CASE construction is available by using a series of additionalELSEIF statements:

    if (Condition_1)....

    elseif (Condition_2)....

    elseif (Condition_3)....

    else....

    endif

  • Basics SOFiSTiK

    619Version 2010

    Example:

    IF (#A1.0) $ or condition 2 LET#VALUE 0.70ELSE LET#VALUE 0.50+0.20*(#A0.3) $ else this valueENDIF

    A

    0.3 1.0

    0.5

    0.7

    VALUE

    That means that only one possibility is chosen for VALUE depending on A.

    6.2.19. @CDB Selection of a CDBASECADINP allows the access to data of any SOFiSTiKDatabase. Of course youneed a description of the contents of the database (cdbase.chm). The syntax hasthree parts. The @CDB selects the file name of the data base:

    @CDB filename

    selects an arbitrary database filename.CDB. Default is the actual projectdatabase. An explicit definition of this database is however not allowed.

    All data within the CDB consists of multiple records with identical struc-tures organised within different 64Bit indices KWH/KWL. In general eachdata record has a part containing integer numbers and a second one con-taining the floating point data. The description of all structures is given forthe user within the file CBBASE.CHM and for the programs within the fileCDBASE.CDB.

  • SOFiSTiK Basics

    Version 2010620

    6.2.20. @KEY Access to the CDBASE

    @KEY KWH KWL [SEL1 SEL2 SEL3 SEL4 SEL5 SEL6 IERR]

    selects an access index KWH/KWL according to the CDBASE description.KWH is a 8 character identifier while KWL is an optional number (e.g. loadcase or section number). Values KWL and SEL1 to SEL6 are preset auto-matically.

    For special purpose an optional filtering rule given by up to 6 integer or 4character key values SEL1 to SEL6 may be specified. Key values whichare not important or will be defined with the accessfunction have to bespecified as 1. The keys correspond to the integer positions of the data-base.

    The record index has to exist in the database. You will get an error other-wise. The read position is set to the beginning of the index. If you specifyfor IERR a number of a variable (for example 999), its value will be set toa positive value if the given key exists. If the variable #CDB_IER has beendefined, it will contain the same value.

    6.2.21. @() Access to the CDBASEA record is accessed by the use of an arithmetic function @() as special case ofan arithmetic expression:

    @(position+offset) or @(no,position+offset)

    reads from the database the next record, which passes the @KEYfilterwhich is modified for the second case by no at the position of the last de-fined KEYi. The value of the expression is the stored data with the nameposition or if position is a number the value at the position relative to thelast selection value of the filter. The value 0 and negative values will there-fore yield the integer values within the selection keys. An access to theindex of an array can be done via offset.

    The access function will start at the current position. If you access a valuewith the same or a lower position, CDBASE will read the next record. If theendoffile condition is encountered an error will occur if you have usedthe form @(position), while for @(nr,position) a loop is used once and thefunction jumps to the beginning.

  • Basics SOFiSTiK

    621Version 20