Installation Guide for FEKO v2017

Learn more at altairhyperworks.com ŽŵƉƌĞŚĞŶƐŝǀĞůĞĐƚƌŽŵĂŐŶĞƚŝĐ^ŽůƵƚŝŽŶƐ

Installation Guide

2017 RELEASE

January 2017

Altair® HyperWorks® Version 2017 A Platform for Innovation® Altair Engineering Support Contact Information

http://www.altairhyperworks.com Web site http://www.altairhyperworks.com/ClientCenterHWSupportProduct.aspx http://www.altairhyperworks.com/feko

Altair® HyperWorks® v. 2017 A Platform for Innovation™ Copyright c 1986–2016 Altair Engineering, Inc. All Rights Reserved. ,

HyperWorks® 2017 products: HyperMesh® 1990–2016; HyperCrash® 2001–2016; OptiStruct® 1996–2016; RADIOSS® 1986– 2016; HyperView® 1999–2016; HyperView Player® 2001–2016; HyperMath® 2007-2016; HyperStudy® 1999–2016; HyperGraph® 1995–2016; MotionView® 1993–2016; MotionSolve® 2002–2016; HyperForm® 1998–2016; HyperXtrude® 1999–2016; Process Manager™ 2003– 2016; Templex™ 1990-2016; TextView™ 1996-2016; MediaView™ 1999-2016; TableView™ 2013- 2016; BatchMesher™ 2003–2016; HyperWeld® 2009–2016; HyperMold® 2009–2016; Manufac- turing Solutions™ 2005–2016; solidThinking Inspire® 2017 2009–2016; solidThinking Evolve® 2017 1993–2016; Durability Director™ 2009–2016; Suspension Director™ 2009–2016; AcuSolve® 1997–2016; AcuConsole® 2006–2016; SimLab® 2004–2016; Virtual Wind Tunnel™ 2012–2016; FEKO® ( c 1999-2014 Altair Development S.A. (Pty) Ltd.; c 2014-2016 Altair Engineering, Inc.); ConnectMe™, 2014–2016. , Additional Altair Products: Multiscale Designer™ 2011–2016; Flux™ v.12.2 1983–2016; InCa3D v.3.1 1996–2016; CDE v.2 2012–2016; Got-It v.3 2002–2016; WinProp v.14 2000–2016 Altair Packaged Solution Offerings (PSOs) Copyright c 2008–2016 Automated Reporting Director™ 2008–2016; GeoMechanics, Director 2011–2016; Impact Simu- lation Director™ 2010–2016; Model Mesher Director™ 2010–2016; Model Verification Director™ 2013–2016; NVH Director™ 2010–2016; Squeak and Rattle Director™ 2012–2016; Virtual Gauge Director™ 2012–2016; Weight Analytics™ 2013–2016; Weld Certification Director™ 2014–2016 Altair Simulation Cloud Suite: Simulation Manager™ 2003–2016; Compute Manager™ 2003–2016; Display Manager™ 2003– 2016; and Process Manager™ 2003–2016. Altair PBS Works™: Compute Manager™ 2012–2016; Display Manager™ 2013–2016; PBS™ 1994–2016; PBS Pro™ 1994–2016; PBS Professional® 1994–2016; PBS Application Services™ 2008–2016; PBS Analyt- ics™ 2008–2016; and PBS Desktop™ 2008–2012; e-Compute™ 2000–2010; OpenPBS® 1994– 2003 and Personal PBS® 2008–2012. Software products of solidThinking, Inc., a wholly owned subsidiary of Altair Engineer- ing: solidThinking Inspire® 2017 2009–2016; solidThinking Evolve®2017 1993–2016; solid- Thinking Compose™ 2017 2007–2016, solidThinking Activate™ 2017 1989–2016, solidThinking Embed™ 2017 1989–2016, solidThinking Embed™ SE 2017 1989–2016; Click2Extrude™ Metal 2017 1996–2016; Click2Extrude™ Polymer 2017 1996–2016; Click2Cast® 14.0 2011-2016; Click2Form™ 2017 1998–2016; Envision™ 2013–2016. d

Altair intellectual property rights are protected under U.S. and international laws and treaties. Additionally, Altair software is protected under patent #6,859,792 and other patents pending. All other marks are the property of their respective owners. ALTAIR ENGINEERING INC. Proprietary and Confidential. Contains Trade Secret Informa- tion. Not for use or disclosure outside of Altair and its licensed clients. Information contained in Altair software shall not be decompiled, disassembled, “unlocked”, reverse translated, reverse engi- neered, or publicly displayed or publicly performed in any manner. Usage of the software is only as explicitly permitted in the end user software license agreement. Copyright notice does not imply publication.

Third party software licenses

AcuConsole contains material licensed from Intelligent Light (www.ilight.com) and used by per- mission.

Software Security Measures: Altair Engineering Inc. and its subsidiaries and affiliates reserve the right to embed software security mechanisms in the Software for the purpose of detecting the installation and/or use of illegal copies of the Software. The Software may collect and transmit non-proprietary data about those illegal copies. Data collected will not include any customer data created by or used in connection with the Software and will not be provided to any third party, except as may be required by law or legal process or to enforce our rights with respect to the use of any illegal copies of the Software. By using the Software, each user consents to such detection and collection of data, as well as its transmission and use if an illegal copy of the Software is detected. No steps may be taken to avoid or detect the purpose of any such security mechanisms.

January 2017 FEKO Installation Guide CONTENTS i Contents

1 Introduction 1-1

2 Minimum System Requirements 2-1

3 Using the HyperWorks Units (HWU) Licensing 3-1 3.1 Preparing to Install FEKO...... 3-1 3.2 Installing FEKO: Local Install...... 3-2 3.2.1 Installing via Graphical User Interface (GUI) Mode...... 3-2 Windows Installer...... 3-2 Linux Installer ...... 3-14 3.2.2 Installing via Console Mode...... 3-29 Linux Installer ...... 3-29 3.2.3 Installing via Silent Mode...... 3-30 Response files...... 3-30 3.3 Installing FEKO: Server...... 3-34 3.3.1 Windows Server Installation...... 3-34 3.4 Connecting to the Altair License Management System (ALM)...... 3-35 3.4.1 About the Altair License Management System...... 3-35 3.4.2 Connecting to Altair License Manager (ALS)...... 3-35

4 Using the Legacy Licensing 4-1 4.1 Preparing to Install FEKO...... 4-1 4.2 Installing FEKO: Local Install...... 4-2 4.2.1 Installing via Graphical User Interface (GUI) Mode...... 4-2 Windows Installer...... 4-2 Linux Installer ...... 4-15 4.2.2 Installing via Console Mode...... 4-33 Linux Installer ...... 4-33 4.2.3 Installing via Silent Mode...... 4-34 Response files...... 4-34 4.3 Installing FEKO: Server...... 4-38 4.3.1 Windows Server Installation...... 4-38 4.4 Obtaining the FEKO License File...... 4-39 4.5 Floating Licenses...... 4-40 4.5.1 Setting Up Floating License Servers...... 4-40 Floating License Server Maintenance (Windows) ...... 4-41 Floating License Server Installation (Linux) ...... 4-42

5 Modifying the FEKO Installation 5-1

January 2017 FEKO Installation Guide CONTENTS ii

6 Uninstalling FEKO 6-1 6.1 Windows Uninstallation via Graphical User Interface (GUI) Mode...... 6-1 6.2 Windows Silent Uninstallation Using a Response File...... 7-3 6.3 Linux Uninstallation...... 7-3

7 FEKO Environment Setup 7-4 7.1 FEKO Terminal Script Files...... 7-4

8 Running Parallel FEKO Solver (Windows) 8-5 8.1 Requirements...... 8-5 8.2 MPI Settings...... 8-5 8.3 Domain-based Authentication (SSPI) with Parallel FEKO...... 8-6

9 Setting Up Remote Launching/Farming 9-7 9.1 Requirements...... 9-7 9.2 MPI Method...... 9-7 9.3 SSH Method...... 9-10

10 FEKO Software Updater 10-1 10.1 Introduction...... 10-1 10.1.1 Terminology...... 10-1 10.2 GUI Update Utility...... 10-1 10.2.1 Schedule a check for automatic updates...... 10-2 10.2.2 Update/Upgrade to New Version...... 10-2 10.2.3 Installed Component Versions...... 10-3 10.2.4 Update Settings and Proxy Settings...... 10-3 10.3 Command Line FEKO UPDATE Utility...... 10-4 10.4 Proxy Settings...... 10-5 10.5 Creating a Local Update Repository...... 10-6

I Appendix

11 Applying Environment Settings 11-8 11.1 General Functionality...... 11-8

12 Remote Machine Setup: SSH Server 12-11 12.1 SSHd from ...... 12-11 12.2 OpenSSH for Windows...... 12-12 12.3 Copssh - OpenSSH for Windows...... 12-12

13 Client Machine Setup: SSH Client 13-14

January 2017 FEKO Installation Guide CONTENTS iii

13.1 SSH from Cygwin...... 13-14 13.2 PuTTY...... 13-14 13.3 OpenSSH for Windows...... 13-15

Index I-1

January 2017 FEKO Installation Guide INTRODUCTION 1-1 1 Introduction

This guide provides instructions for the standalone FEKO 2017 installer on supported platforms using either the HyperWorks Units (HWU) licensing system or the legacy licensing system. A HyperWorks Master Installer1 is also available that allows all HyperWorks components to be installed at once or to install FEKO separately. It is run in a batch like mode resulting in a silent in- stallation using the default settings. Reference the HyperWorks_14 0_Installation_Guide.pdf document for further details as the HyperWorks Master Installer is not covered in this guide. FEKO makes use of either the HyperWorks Units (HWU) licensing system or the legacy licensing system depending on the standalone FEKO installer used.

1. The HyperWorks Units (HWU) licensing system is available on the Altair Client Cen- tre and Altair Connect. FEKO Suite 7.0.1 and later allows the Altair License Management (ALM) system to be used if ALM is installed and properly configured. For more details regarding installation instructions of ALM, visit Altair Client Centre2 or view the document, 2017_License_Managment_System.pdf (available from Altair Connect3). The Hyper- Works (HWU) Licensing allows the flexibility to use other HyperWorks products.

2. The legacy licensing system is the licensing scheme used before FEKO 2017.

You should be able to install the software successfully by following the on-screen installation instructions. However, it is recommended that you work through the applicable installation procedures described here. Note the FEKO documentation in PDF format is available in the doc subdirectory of the FEKO installation. The integrated FEKO help is available from within the FEKO components. Questions regarding the software and license installation may be directed to Altair Engineering Support4. See the Contact page for further contact information. The contents of this installation guide includes:

Chapter2: Minimum System Requirements A minimum set of system requirements is required in order to install and effectively use FEKO. The requirements in terms of hardware and software are listed in Chapter2.

Chapter3: Using the HyperWorks Units (HWU) Licensing provides detailed instructions for installing FEKO 2017 using HyperWorks Units (HWU) licensing on Windows and Linux supported platforms.

Chapter4: Using the Legacy Licensing provides detailed instructions for installing FEKO 2017 using the legacy licencing on Windows and Linux supported platforms.

Chapter5: Modifying the FEKO Installation provides the general procedure for modifying an existing FEKO 2017 installation.

1This installer only works in conjunction with the HyperWorks Units (HWU) licensing system. 2 http://www.altairhyperworks.com/ClientCenterHWSupportProduct.aspx 3 https://connect.altair.com/ 4 http://www.altairhyperworks.com/ClientCenterHWSupportProduct.aspx

January 2017 FEKO Installation Guide INTRODUCTION 1-2

Chapter6: Uninstalling FEKO provides the general procedure for uninstalling a FEKO 2017 installation.

Chapter7: FEKO Environment Setup provides information regarding the FEKO environment setup and FEKO terminal script files.

Chapter8: Running Parallel FEKO Solver (Windows) provides information regarding the par- allel FEKO solver in Windows.

Chapter9: Setting Up Remote Launching /Farming provides information on how to prepare a system to support remote launching and/or optimisation farming capabilities. Chapter 10: FEKO Software Updater provides information on how to install FEKO updates.

Appendices provide additional information about applying environment settings, remote ma- chine setup (SSH server) and client machine setup (SSH client).

January 2017 FEKO Installation Guide MINIMUM SYSTEM REQUIREMENTS 2-1 2 Minimum System Requirements

Windows

The PC installation is for 64-bit Vista/7/8/8.1/10 or Server 2003/2008/2008 R2/2012/2012 R2 running on Intel Pentium/Xeon or AMD Athlon/Opteron or compatible pro- cessors. Windows XP,98, ME and 2000 are no longer supported. Depending on the specific installation options and the platform, the Windows installation requires about 2.1 GBytes free hard disk space.

Linux Workstations

The workstation installation is for any of the major 64-bit Linux workstation platforms. The FEKO components have the following minimum requirements:

• GLIBC 2.8

• libstdc++.so.6.0.17

Display Settings and Graphics Cards

CADFEKO and POSTFEKO can be used with 256 colours, but a colour setting of at least 16 bits is recommended. The practical use of CADFEKO and POSTFEKO requires a minimum screen resolution of 1200 1024. × Both CADFEKO and POSTFEKO make use of OpenGL (Open Graphics Library). To take advantage of the OpenGL, you require an OpenGL supported graphics card with an installed driver which enables usage of the OpenGL functionality. A properly installed graphics card that supports 3D hardware rendering will result in a significant performance increase for visualisation. Note that not all graphics cards support OpenGL at all colour depths. A list of supported graphics cards that work with HOOPS for FEKO 2017 RELEASE is available at www.feko.info/GFXsupport. CADFEKO and POSTFEKO can be configured to allow accurate rendering on most graphics cards. The rendering options are available on the Application menu. Click Settings > Rendering op- tions. Graphics cards that use software rendering may result in improved, but markedly slower rendering. Face displacement allows a trade-off between edges appearing broken and supposedly hidden lines being visible. More detail is provided in the FEKO User Manual.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-1 3 Using the HyperWorks Units (HWU) Licensing

This chapter describes how to install FEKO 2017 using the installer specific to the HyperWorks Units (HWU) licensing. The following files are used for installing FEKO 2017 via the graphical user interface (GUI) mode, console mode (Linux only) and silent mode:

hwFEKO2017_win64.exe Installer of FEKO hwFEKO2017_linux64.bin hwFEKO2017_edu_win64.exe Installer of FEKO Student Edition hwFEKO2017_edu_linux64.bin

3.1 Preparing to Install FEKO

This section describes the general procedure to install and successfully run FEKO or FEKO Student Edition5 on supported platforms using the HyperWorks Units (HWU) licensing. The general procedure is:

• Install FEKO 2017 on the designated machine(s).

What you need:

• FEKO 2017 installer for your platform.

• Access to an activated and running HyperWorks 2017 license server that allows HyperWorks applications (including FEKO) to draw license units (only applicable if you are not using a node locked license).

• A compatible machine that contains the minimum hardware/software requirements to run FEKO (see Chapter2).

• Sufficient disk space for install (see Chapter2).

5Replaced FEKO LITE.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-2

3.2 Installing FEKO: Local Install

3.2.1 Installing via Graphical User Interface (GUI) Mode

Complete the following steps to extract and install the software.

Log in to the machine on which the software is to be installed. Insert the USB/DVD, or place the downloaded installation file in a temporary directory.

Windows Installer

1. Start the installation process by double-clicking the installation file to start the installer.

2. If user account control (UAC) is enabled and you are an administrator, a prompt displays showing the Altair Engineering, Inc. digital signature for elevated permissions. Click Yes to continue with the install.

3. The Altair HyperWorks 2017 FEKO splash screen is displayed while the installer is loaded.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-3

4. In the Introduction panel, click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-4

5. The Choose Install Folder panel is displayed. Choose the install folder. The default install folder is the HyperWorks install folder and FEKO will be installed in a feko subfolder. Click Next to continue. Note the following:

(a) The installer does not allow the use of characters “#” and “;”. (b) Installing to a root drive is not permitted, for example C: . \

If an existing installation of FEKO is detected in the install folder, an Altair FEKO 2017 Warning prompt will be displayed. Click Continue to overwrite all the files in the specified installation directory. Click Cancel Installation to abort the installation process.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-5

6. The Change Shortcut Folder (Local) panel is displayed. Specify the folder name that will contain the start menu shortcuts. The shortcut suffix is an optional string that will be added to all shortcuts. Select one of the following options:

(a) Yes: Select this option if you want FEKO icons on the desktop. (b) No: Select this option if you do not want FEKO icons on the desktop.

Click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-6

7. The Other Installation Options panel is displayed. Select one or more of the following options:

(a) Create file associations: Select this option if the installer should associate the file types used by FEKO with this version of FEKO. Note that if multiple FEKO versions are installed then checking this box will remove file associations with previous FEKO versions. FEKO file types will now be associated with this instance of FEKO. (b) Add Windows Firewall exceptions: Select this option if the installer should automat- ically add Windows Firewall rules for the parallel FEKO executables and parallel ser- vices. The rules will be created as follows for each of the executables: for TCP and UDP connections, allow incoming and outgoing connections on any local or remote port for any local or remote address from any computer on your private networks. You can make the rules more strict using Windows Firewall settings. Note that this option is only available when the user is installing FEKO as an adminis- trator. (c) Allow automatic updates: Select this option to enable the automated check for updates per machine.

Select a temporary directory where the FEKO solver can write temporary files and click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-7

8. The Remote execution panel allows you to specify if the FEKO temporary directory (spec- ified on the Other Installation Options panel) should be a shared directory or not. Select one of the following options:

(a) Allow this computer to be used as a remote host by using shared folders: This option will allow the current computer to be used as a remote host. It allows you to build your model on one computer and then run the FEKO solver on another computer. The temporary folder will be shared as %COMPUTERNAME% feko_remote$ and have full permissions for “Authenticated Users”.\\ Guests or unauthenticated\ users will not have access by default. (b) Not use this computer as a remote host by using shared folders: This option is used when the current computer is not to be used as a remote host. Note that if you select this option, you can still use remote launching using SSH (if available on the computer).

Click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-8

9. The Altair Licence Management System panel is displayed6. Select the location for the environment variable ALTAIR_LICENSE_PATH. If uncertain about the location, leave the field empty, but you will need to manually set the value of ALTAIR_LICENSE_PATH after the installation is complete. Click Next to continue.

10. The Pre-Installation Summary is displayed. The summary contains details about the pend- ing installation. Please review the details and click Next to continue.

6This dialog is not displayed if ALTAIR_LICENSE_PATH has already been set.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-9

11. The Installing Altair FEKO 2017 panel is displayed showing the installation progress.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-10

12. When the file transfer process is complete, the Select Parallel Run Settings panel is dis- played. Select the desired option:

(a) Run on local machine only: This option allows you to perform parallel runs on one or more local, multi-core CPU. The installer automatically inserts the detected number of cores/CPUs as a default number, but it may be changed if you wish to run a different number of parallel processes. Proceed to step 15. (b) Run on a Windows cluster with Active Directory integration: This option is applicable if you have installed FEKO on a Windows cluster that is part of a Windows domain and you intend to perform parallel runs on the cluster. Proceed to step 13. (c) Run on a Windows cluster and encrypt credentials into registry: This option is appli- cable if you have installed FEKO on a Windows cluster that is not part of a Windows domain and you intend to perform parallel runs on the cluster. Proceed to step 13. (d) Run on a non-Windows cluster (e.g. Linux): This option is applicable if you have installed FEKO on a non-Windows cluster and you wish to perform parallel runs on the cluster. Proceed to step 13.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-11

13. If FEKO will not be run on a local machine (options 12b,12c or 12d), the Specify Machines Info panel is displayed. Select one of the following options:

(a) Create new machines file: This option allows you to create a new machines file which specifies the list of machines used to perform parallel runs. Proceed to step 14. (b) Copy existing machines file: This option allows you to use an existing machines file. The selected machines file will be copied to the new FEKO installation directory.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-12

14. If the Create new machines file option was selected in step 13a, for each machine specify its name and number of parallel processes. Use the format, hostname:number_of_processes,

for example: clustermachine.mydomain:4.

Click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-13

15. Once the installation is complete, the Install Complete panel is displayed. Click Done to exit the installer.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-14

Linux Installer

1. Open a command terminal.

(a) “cd” - change directory - to the location where the installer executable resides. (b) Execute “sh [INSTALLER_NAME]”, (see Section3). 2. The FEKO installer extracts the JVM (Java Virtual Machine) and installs the modules to the TMP location of the machine and launches the installer.

3. The Altair HyperWorks 2017 FEKO splash screen is displayed while the installer is loaded.

4. In the Introduction panel, click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-15

5. The Choose Install Folder panel is displayed. Choose the install folder. The default install folder is the HyperWorks install folder and FEKO will be installed in an altair/feko subfolder. Click Next to continue. Note the following:

(a) The installer does not allow the use of characters “#” and “;”. (b) Installing to a root drive is not permitted, for example /.

If an existing installation of FEKO is detected in the install folder, a FEKO 2017 Warning prompt will be displayed. Click Continue to overwrite all the files in the specified installa- tion directory. Click Cancel Installation to abort the installation process.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-16

6. The Other Installation Options panel is displayed. Select the following option:

(a) Allow automatic updates: Select this option to enable the automated check for updates per machine.

Select a temporary directory where the FEKO solver can write temporary files and click Next to continue.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-17

7. The Select MPI Implementation To Use7 panel is displayed. Select one of the following options:

• MPICH [1]: MPICH is a high-performance and widely portable message passing interface (MPI) library which supports shared communication and Ethernet. This library is included with the FEKO installation. To use MPICH, enter ‘1’ in the field below. • SGI MPT [4]: SGI MPT is a message passing toolkit containing user and system tools and libraries. The toolkit provides optimised MPI functionality for SGI systems such as the SGI UV and SGI ICE. Note that the SGI MPT library is not included with the FEKO installation and must be available on the system. To use SGI MPT, enter ‘4’ in the field below. • Intel MPI [11]: Intel MPI is a multi-fabric message passing library that in addition to shared memory (for multi-core environments) or Ethernet also supports interconnects like Myrinet or Infiniband through suitable DAPL providers. To use Intel MPI, enter ‘11’ in the field below.

Enter either 1, 4 or 11 and click Next to continue.

7For more information regarding MPI, view the documentation in the mpi///doc directory of the FEKO installation ($FEKO_HOME).

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-18

8. The Altair Licence Management System panel is displayed8. Select the location for the environment variable ALTAIR_LICENSE_PATH. If uncertain about the location, leave the field empty, but you will need to manually set the value of ALTAIR_LICENSE_PATH after the installation is complete. Click Next to continue.

9. The Pre-Installation Summary panel is displayed. The summary contains details about the pending installation. Please review the details and click Next to continue.

8This dialog is not displayed if ALTAIR_LICENSE_PATH has already been set.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-19

10. The Installing Altair FEKO 2017 panel is displayed showing the installation progress.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-20

11. When the file transfer process is complete, the Select Parallel Run Settings panel is dis- played. Select the desired option:

(a) Run on local machine only: This option allows you to perform parallel runs on one or more local multi-core CPUs. The installer automatically inserts the detected number of cores/CPUs as a default number, but it may be changed if you wish to run a different number of parallel processes. Proceed to step 25. (b) Run on a Unix/Linux cluster: This option is applicable if you wish to install FEKO on a non-Windows cluster to perform parallel runs on the cluster. Proceed to step 12.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-21

12. If the Run on a Unix/Linux cluster option was selected in step 11b, the Specify Machines Info panel is displayed.

(a) Select one of the following options: i. Create new machines file: This option allows you to create a new machines file which specifies the list of machines used to perform parallel runs. ii. Copy existing machines file: This option allows you to use an existing machines file. The selected machines file will be copied to the new FEKO installation direc- tory.

(a) Select one of the following options: i. Use SSH: This option allows you to make use of the ssh (secure shell) method to remotely log in to a computer. This method makes use of encryption. ii. Use RSH: This option allows you to make use of the rsh (remote shell) method to remotely log in to a computer.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-22

13. If the Create new machines file option was selected in step 12(a)i, for each machine specify its name and number of parallel processes. Use the format, hostname:number_of_processes,

for example: clustermachine.mydomain:4.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-23

14. The Remote Node Connectivity Tests panel is displayed. The installer will attempt to per- form connectivity tests on the nodes specified in the machines file. Be advised that the remote connectivity tests could take some time. Click Next to continue with the connectiv- ity tests.

15. The Please Wait panel is displayed while the remote connectivity tests are in progress. If the tests are successful, proceed to step 18. If the tests are unsuccessful, proceed to step 16.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-24

16. The Testing ssh Failed On Some Nodes panel is displayed if any of the connectivity tests failed on the nodes. It also lists potential problems and their solutions. You are advised to fix the errors before continuing. Click Next to continue.

17. The Retry the connectivity tests? dialog is displayed. If you want to retry the connectiv- ity tests, click Yes. If you want to continue with the installation regardless of the failed connectivity tests, click No.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-25

18. The Remote Node FEKO Versions panel is displayed. The installer will attempt to determine the FEKO versions installed on the nodes. Be advised that determining the FEKO versions could take some time. Click Next to continue.

19. The Please wait panel is displayed while the installer is determining the FEKO versions installed on the nodes. If the process is successful, proceed to step 25. If the process is unsuccessful, proceed to step 20.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-26

20. The Remote Installation panel is displayed if the installer did not find FEKO on all the nodes. You now have the option to let the FEKO installer copy FEKO to all the specified nodes, or you can copy the files to each node manually. You can also export the installation directory via a distributed file system like NFS, and then no copying will be necessary. Click Next to continue.

21. The Retry the detection of FEKO on the nodes dialog is displayed. Click one of the following buttons:

(a) Retry detection: This option is applicable if you want to retry the detection of FEKO on the remote nodes. Return to step 19. (b) Perform remote install: This option is applicable if you want the installer to perform the remote node installation. Proceed to step 22. (c) Continue without installing: This option is applicable if you want to perform the installation on the node independently of the current server installation. Proceed to step 25.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-27

22. If the Perform remote install option was selected on the Retry the detection of FEKO on the node dialog (see step 21b), the Remote Node FEKO Installation panel is displayed. Be advised that installing FEKO on the remote node(s) could take some time. Click Next to continue.

23. The Copying FEKO files to node panel is displayed.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-28

24. The Copying failed to some nodes panel is displayed if FEKO was not successfully installed on the remote node(s). When you click Next, the installer will return to step 18 to verify that FEKO is correctly installed on the remote nodes. Clicking Previous will return you to step 22.

25. Once the installation is complete, the Install Complete panel is displayed. Click Done to exit the installer.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-29

3.2.2 Installing via Console Mode

Console mode installations (Linux only) mimic the default GUI steps provided by the FEKO 2017 installer but use only the standard input and output. Console mode allows for text to be output to the console. To trigger a console mode installer from the command line, append the following command parameter to the installer:

-i console

A console mode will be automatically triggered if no graphical environment is found (for example when only connected through terminal without X-forwarding).

Linux Installer

1. Open a command terminal9.

(a)“ cd” — Change directory to the location where the installer executable resides. (b) Execute the “sh” command on the installer binary where [INSTALLER_NAME] is the installer binary (see Section3) with the additional command parameter: sh [INSTALLER_NAME] -i console

2. The FEKO installer extracts the Java Virtual Machine (JVM) and the install modules to the TMP location of the machine and launches the installer.

3. Follow the console prompt to complete the installation. For more information regarding panel options, refer to Section 3.2.1.

9 If the terminal does not have any GUI/X capabilities (such as a pure SSH terminal session), then also launching the installer without the additional options will start the console mode automatically.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-30

3.2.3 Installing via Silent Mode

Silent mode enables the installer to run without any user interaction on Linux. A near-silent mode is possible on Windows. InstallAnywhere and FEKO end-user-defined variables may be set through command line param- eters or a properties response file. Response files are created and used in silent mode since there is no user interaction. The installer runs either on the defaults provided by the installer package or by providing a response file from which the installer retrieves the values for various InstallAnywhere and FEKO variables used to control the install. The installer automatically checks the residing directory for a file called installer.properties. You can generate a response file from the installer by running through the installer with the fol- lowing command line syntax, where [INSTALLER_NAME] is the installer binary (see Section3) and [RESPONSE_PATH] is the path where the response file resides:

[INSTALLER_NAME] -r "[RESPONSE_PATH]\installer.properties"

The file will get created once the installer is complete. To trigger a silent installer from the com- mand line, type the following where [INSTALLER_NAME] is the installer binary (see Section3):

[INSTALLER_NAME] -i silent

To trigger a silent installer from the command line and specify a property (see Section 3.2.3), type the following:

[INSTALLER_NAME] -i silent -D[Property]=[VALUE] for example:

"-DUSER_INSTALL_DIR=C:\\Program Files\\Altair\\14.0"

You may also call a properties response file from the command line by typing:

[INSTALLER_NAME] -i silent -f "[RESPONSE_PATH]\installer.properties"

Note: Use quotes around any directory and pathnames that may contain spaces.

Response files

Response files are used with the silent mode installers to give the default values of an install. The files contain text in a simple VARIABLE=VALUE format. The values in the response files are all referenced from user input taken from a FEKO install and used as default values toward future installs.

Spaces should not be used between the VARIABLE=VALUE statements in the response files. January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-31

An example of a properties response file is shown below:

#Choose Install Folder #------USER_INSTALL_DIR=C:\\Program Files\\Altair\\14.0

#Change Shortcut Folder (Local) #------SET_START_MENU_FOLDER=Altair HyperWorks 14.0 INSTALL_DESKTOP_SHORTCUTS=0

#Other Installation Options #------CREATE_FILE_ASSOCIATION=1 FEKO_CREATE_FIREWALL_ENTRIES=1 FEKO_UPDATE_ALLOW_UPDATES=1 FEKO_TMPDIR=C:\\Temp

#Remote Execution #------FEKO_REMOTE_CREATE_SHARE=0

#Enter Licence Path Location #[email protected]

#Select Parallel Runs Settings #------FEKO_RUN_LOCALONLY=1 FEKO_NUMBER_OF_CORES_TO_USE=2 FEKO_RUN_WIN_CLUSTER_AD=0 FEKO_RUN_WIN_CLUSTER_MPIREGISTER=0 FEKO_RUN_ON_LINUX_CLUSTER=0

#Choose Log File Location #------INSTALL_LOG_NAME=InstallLogFile INSTALL_LOG_DESTINATION=C:\\InstallerLogFile where the parameters are defined as follows:

USER_INSTALL_DIR: The default install folder is the HyperWorks install folder and an Altair and inside of that a feko subfolder will be created automatically.

SET_START_MENU_FOLDER: Specify the name of the start menu folder.

INSTALL_DESKTOP_SHORTCUTS:

0: No shortcuts are created. 1: Shortcuts are created.

CREATE_FILE_ASSOCIATION:

0: Do not create file associations. 1: Create file associations.

FEKO_CREATE_FIREWALL_ENTRIES:

0: Do not add Windows Firewall exceptions. 1: Add Windows Firewall exceptions.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-32

FEKO_UPDATE_ALLOW_UPDATES:

0: Disable the automated check for updates per machine. 1: Enable the automated check for updates per machine.

FEKO_TMPDIR: Specify the location of a folder where FEKO can write temporary files. This folder must be accessible by all users that will be running the FEKO solver.

FEKO_REMOTE_CREATE_SHARE:

0: Do not allow this computer to be used as a remote host by using shared folders. 1: Allow this computer to be used as a remote host by using shared folders.

INSTALL_LOG_NAME: Specify the name of the installer log file. The default installer log file name consists of the product name, version and date.

INSTALL_LOG_DESTINATION: Specify the folder for the installer log file. The default log file folder is the ALTAIR_HOME/logs folder.

• When FEKO is to be run on a local machine only, specify FEKO_RUN_LOCALONLY = 1 and the number of parallel processes with FEKO_NUMBER_OF_CORES_TO_USE.

• When FEKO is to be run on a cluster, specify one of the following with value 1 and set the others (FEKO_RUN_WIN_CLUSTER_AD, FEKO_RUN_WIN_CLUSTER_MPIREGISTER, FEKO_RUN_ON_LINUX_CLUSTER) to 0. In this case FEKO_RUN_LOCALONLY must also be 0. FEKO_RUN_WIN_CLUSTER_AD: 0: Parallel runs are not performed on a Windows cluster with Active directory integration. 1: Parallel runs are performed on a Windows cluster with Active direc- tory integration. FEKO_RUN_WIN_CLUSTER_MPIREGISTER: 0: Parallel runs are not performed on a Windows cluster and encrypted into registry. 1: Parallel runs are performed on a Windows cluster and encrypted into registry. FEKO_RUN_ON_LINUX_CLUSTER: 0: Parallel runs are not performed on a Linux cluster. 1: Parallel runs are performed on a Linux cluster. CREATE_NEW_MACHINESFILE: 0: Do not create a new machines file which specifies the list of ma- chines used to perform parallel runs. 1: Create a new machines file which specifies the list of machines used to perform parallel runs. USE_EXISTING_MACHINESFILE: 0: Do no use existing machine file. 1: Copy existing machines file.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-33

EXISTING_MACHINESFILE: Path to the existing machines file (use with USE_EXISTING_MACHINESFILE=1)

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-34

3.3 Installing FEKO: Server

3.3.1 Windows Server Installation

This section describes how to install and configure FEKO on Windows HPC server 2008/2008 R2/2012/2012 R2. Note that Windows HPC server 2012 is a successor of 2008. Note that Windows HPC Server 2008/2008 R2 replaced Windows CCS Server 2003 (Compute Cluster Server).

1. Log in to a node. The node should be either a test machine or the head node which will not be used as a compute node. Insert the USB/DVD, or place the downloaded installation file in a temporary directory.

2. Install FEKO on the head node and record the installation properties in a response file (see Section 3.2.3). Note that a response file can also be recorded by launching the installer via GUI mode (see Section 3.2.1) from a command terminal window.

(a) Open a command terminal window/prompt. (b)“ cd” — Change directory to the location where the installer executable resides. (c) Execute the installer binary using the syntax in the example below where [INSTALLER_NAME] is the installer binary (see Section3), [RESPONSE_PATH] is the path where the response file resides and installer.properties is the file name of the response file:

[INSTALLER_NAME] -r "[RESPONSE_PATH]\installer.properties"

3. The FEKO installer extracts the Java Virtual Machine (JVM) and the install modules to the TMP location of the machine and launches the installer.

4. Copy the installation file (see Section3) and response file ( installer.properties) to the same shared network location reachable by all cluster nodes.

5. Start the silent mode installation on all the cluster nodes from the head node using the syntax below where [NETWORK_PATH] is the path to the shared network location where the installation file and response file reside:10

clusrun start /wait "[NETWORK_PATH]\[INSTALLER_NAME]" /s /sms /f1 "[NETWORK_PATH]\installer.properties"

6. Be advised that the installation of each node could take some time and no output is given. When the installation is complete, output is displayed for each of the nodes. A return value of 0 for each node will indicate a successful installation.

10The clusrun tool is part of the Windows HPC pack toolset and is available on the head node. The clusrun command will install FEKO on all cluster nodes that are configured and approved by the Windows Compute Cluster Administrator Management Console SnapIn. See the documentation for the clusrun tool for additional command line options when installing on a sunset of the nodes.

January 2017 FEKO Installation Guide USING THE HYPERWORKS UNITS (HWU) LICENSING 3-35

3.4 Connecting to the Altair License Management System (ALM)

3.4.1 About the Altair License Management System

The Altair License Management System (ALM) provides a common units-based licensing model for all Altair software related to CAE, on-demand computing, and business intelligence.

3.4.2 Connecting to Altair License Manager (ALS)

In order for applications to use the ALS, the environment variable, ALTAIR_LICENSE_PATH, must point to the appropriate location. Multiple license paths are allowed and should be sepa- rated by a semicolon (;) on Windows and a colon (:) on Linux. The proper format for a network license location is port@hostname. If you are using a local license file, simply set the value to the full pathname of the file. A few examples of license paths: On Windows:

[email protected] ALTAIR_LICENSE_PATH=6200@srv1;6200@srv2;6200@srv3 ALTAIR_LICENSE_PATH=c:\Program Files\Altair\Licensing12.0\altair_lic.dat

On Linux:

[email protected] ALTAIR_LICENSE_PATH=6200@srv1:6200@srv2:6200@srv3 ALTAIR_LICENSE_PATH=/usr/local/altair/licensing121.0/altair_lic.dat

For High Availability License (HAL) System and/or Multiple Servers setups, list the three servers in the order: primary; secondary; tertiary.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-1 4 Using the Legacy Licensing

This section describes how to install FEKO 2017 using the installer specific to the legacy licensing. The following files are used for installing FEKO 2017 via the graphical user interface (GUI) mode, console mode (Linux only) and silent mode:

feko_distrib_2017_win64.exe Legacy installer of FEKO feko_distrib_2017_linux64.bin

4.1 Preparing to Install FEKO

This section describes the general procedure to install and successfully run FEKO on supported platforms using the legacy licensing. The general procedure is:

• Install FEKO 2017 on the designated machine(s).

• The installation process creates a request file (see Section 4.4). Contact FEKO11 and present the request file.

• In return you will receive a secfeko.dat license file generated from your request file.

What you need:

• FEKO 2017 installer for your platform.

• A compatible machine that contains the minimum hardware/software requirements (see Section2) to run FEKO.

• Sufficient disk space for install (see Section2).

11 http://www.feko.info/contact.htm

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-2

4.2 Installing FEKO: Local Install

4.2.1 Installing via Graphical User Interface (GUI) Mode

Complete the following steps to extract and install the software.

Log in to the machine on which the software is to be installed. Insert the USB/DVD, or place the downloaded installation file in a temporary directory.

Windows Installer

1. Start the installation process by double-clicking the installation file to start the installer.

2. If user account control (UAC) is enabled and you are an administrator, a prompt displays showing the Altair Engineering, Inc. digital signature for elevated permissions. Click Yes to continue with the install.

3. The Altair HyperWorks 2017 FEKO splash screen is displayed while the installer is loaded.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-3

4. If the installer is run without elevated privileges, the Running As Standard User panel is displayed. If you want to install FEKO using all features, re-launch the installer with elevated privileges.

5. In the Introduction panel, click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-4

6. In the License Agreement panel, read through the license agreement. Click I accept the terms of the License Agreement and click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-5

7. The Choose Install Folder panel is displayed. Choose the install folder. The default install folder is the HyperWorks install folder and FEKO will be installed in a feko subfolder. Click Next to continue. Note the following:

(a) The installer does not allow the use of characters “#” and “;”. (b) Installing to a root drive is not permitted, for example C: . \

If an existing installation of FEKO is detected in the install folder, a FEKO 2017 Warning prompt will be displayed. Click Continue to overwrite all the files in the specified installa- tion directory. Click Cancel Installation to abort the installation process.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-6

8. The Select Features panel is displayed. This panel is only available when installing with administrative privileges. Select one or more of the following options:

(a) Install solver and GUI: Select this option if you want to install the FEKO solver and GUI. (b) Install floating license server: Select this option if floating licenses were purchased. For this option the installer will install a floating license server. Note that the floating license server is only to be installed on PCs that are to host the floating license servers (c) Install dongle drivers: Select this option if a dongle was purchased. For this option the installer will install the dongle drivers and dongle server components. The dongle server components allow access to the machine where FEKO is installed with a dongle license via a Remote Desktop connection.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-7

9. The Change Shortcut Folder (Local) panel is displayed. Specify the folder name that will contain the start menu shortcuts. The shortcut suffix is an optional string that will be added to all shortcuts. Select one of the following options:

(a) Yes: Select this option if you want FEKO icons on the desktop. (b) No: Select this option if you do not want FEKO icons on the desktop.

Click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-8

10. The Other Installation Options panel is displayed. Select one or more of the following options:

(a) Create file associations: Select this option if the installer should associate the file types used by FEKO with this version of FEKO. Note that if multiple FEKO versions are installed then checking this box will remove file associations with previous FEKO versions. FEKO file types will now be associated with this instance of FEKO. (b) Add Windows Firewall exceptions: Select this option if the installer should automat- ically add Windows Firewall rules for the parallel FEKO executables, the parallel ser- vices and the FEKO floating license server. The rules will be created as follows for each of the executables: for TCP and UDP connections, allow incoming and outgoing connections on any local or remote port for any local or remote address from any com- puter on your private networks. You can make the rules more strict using Windows Firewall settings. Note that this option is only available when the user is installing FEKO as an adminis- trator. (c) Allow automatic updates: Select this option to enable the automated check for updates per machine.

Select a temporary directory where the FEKO solver can write temporary files and click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-9

11. The Remote execution panel allows you to specify if the FEKO temporary directory (spec- ified on the Other Installation Options panel) should be a shared directory or not. Select one of the following options:

(a) Allow this computer to be used as a remote host by using shared folders: This option will allow the current computer to be used as a remote host. It allows you to build your model on one computer and then run the FEKO solver on another computer. The temporary folder will be shared as %COMPUTERNAME% feko_remote$ and have full permissions for “Authenticated Users”.\\ Guests or unauthenticated\ users will not have access by default. (b) Not use this computer as a remote host by using shared folders: This option is used when the current computer is not to be used as a remote host. Note that if you select this option, you can still use remote launching using SSH (if available on the computer).

Click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-10

12. The Pre-Installation Summary is displayed. The summary contains details about the pend- ing installation. Please review the details and click Next to continue.

13. The Installing FEKO 2017 panel is displayed showing the installation progress.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-11

14. When the file transfer process is complete, the Select Parallel Run Settings panel is dis- played. Select the desired option:

(a) Run on local machine only: This option allows you to perform parallel runs on one or more local, multi-core CPU. The installer automatically inserts the detected number of cores/CPUs as a default number, but it may be changed if you wish to run a different number of parallel processes. Proceed to step 17. (b) Run on a Windows cluster with Active Directory integration: This option is applicable if you have installed FEKO on a Windows cluster that is part of a Windows domain and you intend to perform parallel runs on the cluster. Proceed to step 15. (c) Run on a Windows cluster and encrypt credentials into registry: This option is appli- cable if you have installed FEKO on a Windows cluster that is not part of a Windows domain and you intend to perform parallel runs on the cluster. Proceed to step 15. (d) Run on a non-Windows cluster (e.g. Linux): This option is applicable if you have installed FEKO on a non-Windows cluster and you wish to perform parallel runs on the cluster. Proceed to step 15.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-12

15. If FEKO will not be run on a local machine (options 14b,14c or 14d ), the Specify Machines Info panel is displayed. Select one of the following options:

(a) Create new machines file: This option allows you to create a new machines file which specifies the list of machines used to perform parallel runs. Proceed to step 16. (b) Copy existing machines file: This option allows you to use an existing machines file. The selected machines file will be copied to the new FEKO installation directory.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-13

16. If the Create new machines file option was selected in step 15a, for each machine specify its name and number of parallel processes. Use the format, hostname:number_of_processes,

for example: clustermachine.mydomain:4.

Click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-14

17. If the Install dongle drivers option was selected on the Select Features panel (see step 8c), the Sentinel Protection Installer will now install the dongle drivers.

18. Once the installation is complete, the Install Complete panel is displayed. Click Done to exit the installer.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-15

Linux Installer

1. Open a command terminal.

(a) “cd” - change directory - to the location where the installer executable resides. (b) Execute “sh [INSTALLER_NAME]”, (see Section4). 2. The FEKO installer extracts the JVM (Java Virtual Machine) and installs the modules to the TMP location of the machine and launches the installer.

3. The Altair HyperWorks 2017 FEKO splash screen is displayed while the installer is loaded.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-16

4. If the installer is run without root, the Running As Normal User panel is displayed. If you want to install FEKO using all features, re-launch the installer with administrative privileges.

5. In the Introduction panel, click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-17

6. In the License Agreement panel, read through the license agreement. Click I accept the terms of the License Agreement and click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-18

7. The Choose Install Folder panel is displayed. Choose the FEKO install folder. Click Next to continue. Note the following:

(a) The installer does not allow the use of characters “#” and “;”. (b) Installing to a root drive is not permitted, for example /.

If an existing installation of FEKO is detected in the install folder, a FEKO 2017 Warning prompt will be displayed. Click Continue to overwrite all the files in the specified installa- tion directory. Click Cancel Installation to abort the installation process.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-19

8. The Select Features panel is displayed. This panel is only available when installing with administrative privileges. Select one or more of the following options:

(a) Install solver and GUI: Select this option if you want to install the FEKO solver and GUI. (b) Install floating license server: Select this option if floating licenses were purchased. For this option the installer will install a floating license server. Note that the floating license server is only to be installed on PCs that are to host the floating license servers (c) Install dongle drivers: Select this option if a dongle was purchased. For this option the installer will install the dongle drivers and dongle server components. The dongle server components allow access to the machine where FEKO is installed with a dongle license via a Remote Desktop connection.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-20

9. The Other Installation Options panel is displayed. Select the following option:

(a) Allow automatic updates: Select this option to enable the automated check for updates per machine.

Select a temporary directory where the FEKO solver can write temporary files and click Next to continue.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-21

10. The Select MPI Implementation To Use12 panel is displayed. Select one of the following options:

• MPICH [1]: MPICH is a high-performance and widely portable message passing interface (MPI) library which supports shared communication and Ethernet. This library is included with the FEKO installation. To use MPICH, enter ‘1’ in the field below. • SGI MPT [4]: SGI MPT is a message passing toolkit containing user and system tools and libraries. The toolkit provides optimised MPI functionality for SGI systems such as the SGI UV and SGI ICE. Note that the SGI MPT library is not included with the FEKO installation and must be available on the system. To use SGI MPT, enter ‘4’ in the field below. • Intel MPI [11]: Intel MPI is a multi-fabric message passing library that in addition to shared memory (for multi-core environments) or Ethernet also supports interconnects like Myrinet or Infiniband through suitable DAPL providers. To use Intel MPI, enter ‘11’ in the field below.

Enter either 1, 4 or 11 and click Next to continue.

12For more information regarding MPI, view the documentation in the mpi///doc directory of the FEKO installation ($FEKO_HOME).

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-22

11. The Pre-Installation Summary is displayed. The summary contains details about the pend- ing installation. Please review the details and click Next to continue.

12. The Installing FEKO 2017 panel is displayed showing the file transfer progress.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-23

13. When the file transfer process is complete, the Select Parallel Run Settings panel is dis- played. Select the desired option:

(a) Run on local machine only: This option allows you to perform parallel runs on one or more local multi-core CPUs. The installer automatically inserts the detected number of cores/CPUs as a default number, but it may be changed if you wish to run a different number of parallel processes. Proceed to step 27. (b) Run on a Unix/Linux cluster: This option is applicable if you wish to install FEKO on a non-Windows cluster to perform parallel runs on the cluster. Proceed to step 14.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-24

14. If the Run on a Unix/Linux cluster option was selected in step 13b, the Specify Machines Info panel is displayed.

(a) Select one of the following options: i. Create new machines file: This option allows you to create a new machines file which specifies the list of machines used to perform parallel runs. ii. Copy existing machines file: This option allows you to use an existing machines file. The selected machines file will be copied to the new FEKO installation direc- tory.

(a) Select one of the following options: i. Use SSH: This option allows you to make use of the ssh (secure shell) method to remotely log in to a computer. This method makes use of encryption. ii. Use RSH: This option allows you to make use of the rsh (remote shell) method to remotely log in to a computer.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-25

15. If the Create new machines file option was selected in step 14(a)i, for each machine specify its name and number of parallel processes. Use the format, hostname:number_of_processes,

for example: clustermachine.mydomain:4.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-26

16. The Remote Node Connectivity Tests panel is displayed. The installer will attempt to per- form connectivity tests on the nodes specified in the machines file. Be advised that the remote connectivity tests could take some time. Click Next to continue with the connectiv- ity tests.

17. The Please Wait panel is displayed while the remote connectivity tests are in progress. If the tests are successful, proceed to step 20. If the tests are unsuccessful, proceed to step 18.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-27

18. The Testing ssh Failed On Some Nodes panel is displayed if any of the connectivity tests failed on the nodes. It also lists potential problems and their solutions. You are advised to fix the errors before continuing. Click Next to continue.

19. The Retry the connectivity tests? dialog is displayed. If you want to retry the connectiv- ity tests, click Yes. If you want to continue with the installation regardless of the failed connectivity tests, click No.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-28

20. The Remote Node FEKO Versions panel is displayed. The installer will attempt to determine the FEKO versions installed on the nodes. Be advised that determining the FEKO versions could take some time. Click Next to continue.

21. The Please wait panel is displayed while the installer is determining the FEKO versions installed on the nodes. If the process is successful, proceed to step 27. If the process is unsuccessful, proceed to step 22.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-29

22. The Remote Installation panel is displayed if the installer did not find FEKO on all the nodes. You now have the option to let the FEKO installer copy FEKO to all the specified nodes, or you can copy the files to each node manually. You can also export the installation directory via a distributed file system like NFS, and then no copying will be necessary. Click Next to continue.

23. The Retry the detection of FEKO on the nodes dialog is displayed. Click one of the following buttons:

(a) Retry detection: This option is applicable if you want to retry the detection of FEKO on the remote nodes. Return to step 21. (b) Perform remote install: This option is applicable if you want the installer to perform the remote node installation. Proceed to step 24. (c) Continue without installing: This option is applicable if you want to perform the installation on the node independently of the current server installation. Proceed to step 27.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-30

24. If the Perform remote install option was selected on the Retry the detection of FEKO on the node dialog (see step 23b), the Remote Node FEKO Installation panel is displayed. Be advised that installing FEKO on the remote node(s) could take some time. Click Next to continue.

25. The Copying FEKO files to node panel is displayed.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-31

26. The Copying failed to some nodes panel is displayed if FEKO was not successfully installed on the remote node(s). When you click Next, the installer will return to step 20 to verify that FEKO is correctly installed on the remote nodes. Clicking Previous will return you to step 24.

27. If the Install dongle drivers option was selected on the Other Installation Options panel (see step 8c), the Sentinel Installation Script will now install the dongle drivers.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-32

(a) The protection_install.sh dialog is displayed. Press Enter to continue. Select one of the following options: i. 1: Install Sentinel System Driver and Sentinel Protection Server: This option installs the dongle drivers. ii. 0: Exit: This option cancels the installation of the dongle drivers.

(b) Once the installation is complete, the Install Complete panel is displayed. Click Done to exit the installer.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-33

4.2.2 Installing via Console Mode

Console mode installations (Linux only) mimic the default GUI steps provided by the FEKO 2017 installer but use only the standard input and output. Console mode allows for text to be output to the console. To trigger a console mode installer from the command line, append the following command parameter to the installer:

-i console

A console mode will be automatically triggered if no graphical environment is found (for example when only connected through terminal without X-forwarding).

Linux Installer

1. Open a command terminal13.

(a)“ cd” — Change directory to the location where the installer executable resides. (b) Execute the “sh” command on the installer binary where [INSTALLER_NAME] is the installer binary (see Section4) with the additional command parameter: sh [INSTALLER_NAME] -i console

2. The FEKO installer extracts the Java Virtual Machine (JVM) and the install modules to the TMP location of the machine and launches the installer.

3. Follow the console prompt to complete the installation. For more information regarding panel options, refer to Section 4.2.1.

13 If the terminal does not have any GUI/X capabilities (such as a pure SSH terminal session), then also launching the installer without the additional options will start the console mode automatically.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-34

4.2.3 Installing via Silent Mode

Silent mode enables the installer to run without any user interaction on Linux. A near-silent mode is possible on Windows. InstallAnywhere and FEKO end-user-defined variables may be set through command line param- eters or a properties response file. Response files are created and used in silent mode since there is no user interaction. The installer runs either on the defaults provided by the installer package or by providing a response file from which the installer retrieves the values for various InstallAnywhere and FEKO variables used to control the install. The installer automatically checks the residing directory for a file called installer.properties. You can generate a response file from the installer by running through the installer with the fol- lowing command line syntax, where [INSTALLER_NAME] is the installer binary (see Section4) and [RESPONSE_PATH] is the path where the response file resides:

[INSTALLER_NAME] -r "[RESPONSE_PATH]\installer.properties"

The file will get created once the installer is complete. To trigger a silent installer from the com- mand line, type the following where [INSTALLER_NAME] is the installer binary (see Section4):

[INSTALLER_NAME] -i silent

To trigger a silent installer from the command line and specify a property (see Section 4.2.3), type the following:

[INSTALLER_NAME] -i silent -D[Property]=[VALUE] for example:

"-DUSER_INSTALL_DIR=C:\\Program Files\\Altair\\14.0"

You may also call a properties response file from the command line by typing:

[INSTALLER_NAME] -i silent -f "[RESPONSE_PATH]\installer.properties"

Note: Use quotes around any directory and pathnames that may contain spaces.

Response files

Response files are used with the silent mode installers to give the default values of an install. The files contain text in a simple VARIABLE=VALUE format. The values in the response files are all referenced from user input taken from FEKO install and used as default values toward future installs.

Spaces should not be used between the VARIABLE=VALUE statements in the response files. January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-35

An example of a properties response file is shown below:

#Choose Install Folder #------USER_INSTALL_DIR=C:\\Program Files\\FEKO\\14.0

#Change Shortcut Folder (Local) #------SET_START_MENU_FOLDER=FEKO 14.0 INSTALL_DESKTOP_SHORTCUTS=0

#Other Installation Options #------CREATE_FILE_ASSOCIATION=1 FEKO_CREATE_FIREWALL_ENTRIES=1 FEKO_UPDATE_ALLOW_UPDATES=1 FEKO_INSTALL_SECFEKOD_SERVICE=0 FEKO_INSTALL_DONGLE_DRIVERS=1 FEKO_TMPDIR=C:\\Temp

#Remote Execution #------FEKO_REMOTE_CREATE_SHARE=0

#Select Parallel Runs Settings #------FEKO_RUN_LOCALONLY=0 FEKO_NUMBER_OF_CORES_TO_USE=2 FEKO_RUN_WIN_CLUSTER_AD=1 FEKO_RUN_WIN_CLUSTER_MPIREGISTER=0 FEKO_RUN_ON_LINUX_CLUSTER=0

#Specify Machines Info #------CREATE_NEW_MACHINESFILE=1 USE_EXISTING_MACHINESFILE=0 EXISTING_MACHINESFILE=1

#Choose Log File Location #------INSTALL_LOG_NAME=InstallLogFile INSTALL_LOG_DESTINATION=C:\\InstallerLogFile where the parameters are defined as follows:

USER_INSTALL_DIR: Specify the location of the FEKO install directory.

SET_START_MENU_FOLDER: Specify the location of the start menu folder.

INSTALL_DESKTOP_SHORTCUTS:

0: No shortcuts are created. 1: Shortcuts are created.

CREATE_FILE_ASSOCIATION:

0: Do not create file associations. 1: Create file associations.

FEKO_CREATE_FIREWALL_ENTRIES:

0: Do not add Windows Firewall exceptions. 1: Add Windows Firewall exceptions.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-36

FEKO_UPDATE_ALLOW_UPDATES:

0: Disable the automated check for updates per machine. 1: Enable the automated check for updates per machine.

FEKO_INSTALL_SECFEKOD_SERVICE:

0: Do not install floating license service. 1: Install floating license service.

FEKO_INSTALL_DONGLE_DRIVERS:

0: Do not install dongle drivers. 1: Install dongle drivers.

FEKO_TMPDIR: Specify the location of a folder where FEKO can write temporary files. This folder must be accessible by all users that will be running the FEKO solver.

FEKO_REMOTE_CREATE_SHARE:

0: Do not allow this computer to be used as a remote host by using shared folders. 1: Allow this computer to be used as a remote host by using shared folders.

INSTALL_LOG_NAME: Specify the name of the installer log file. The default installer log file name consists of the product name, version and date.

INSTALL_LOG_DESTINATION: Specify the folder for the installer log file. The default log file folder is the ALTAIR_HOME/logs folder.

• When FEKO is to be run on a local machine only, specify FEKO_RUN_LOCALONLY = 1 and the number of parallel processes with FEKO_NUMBER_OF_CORES_TO_USE.

• When FEKO is to be run on a cluster, specify one of the following with value 1 and set the others (FEKO_RUN_WIN_CLUSTER_AD, FEKO_RUN_WIN_CLUSTER_MPIREGISTER, FEKO_RUN_ON_LINUX_CLUSTER) to 0. In this case FEKO_RUN_LOCALONLY must also be 0. FEKO_RUN_WIN_CLUSTER_AD: 0: Parallel runs are not performed on a Windows cluster with Active directory integration. 1: Parallel runs are performed on a Windows cluster with Active direc- tory integration. FEKO_RUN_WIN_CLUSTER_MPIREGISTER: 0: Parallel runs are not performed on a Windows cluster and encrypted into registry. 1: Parallel runs are performed on a Windows cluster and encrypted into registry. FEKO_RUN_ON_LINUX_CLUSTER: 0: Parallel runs are not performed on a Linux cluster. 1: Parallel runs are performed on a Linux cluster.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-37

CREATE_NEW_MACHINESFILE: 0: Do not create a new machines file which specifies the list of ma- chines used to perform parallel runs. 1: Create a new machines file which specifies the list of machines used to perform parallel runs. USE_EXISTING_MACHINESFILE: 0: Do no use existing machine file. 1: Copy existing machines file. EXISTING_MACHINESFILE: Path to the existing machines file (use with USE_EXISTING_MACHINESFILE=1)

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-38

4.3 Installing FEKO: Server

4.3.1 Windows Server Installation

This section describes how to install and configure FEKO on Windows HPC server 2008/2008 R2/2012/2012 R2. Note that Windows HPC server 2012 is a successor of 2008. Note that Windows HPC Server 2008/2008 R2 replaced Windows CCS Server 2003 (Compute Cluster Server).

1. Log in to a node. The node should be either a test machine or the head node which will not be used as a compute node. Insert the USB/DVD, or place the downloaded installation file in a temporary directory.

2. Install FEKO on the head node and record the installation properties in a response file (see Section 4.2.3). Note that a response file can also be recorded by launching the installer via GUI mode (see Section 4.2.1) from a command terminal window.

(a) Open a command terminal window/prompt. (b)“ cd” — Change directory to the location where the installer executable resides. (c) Execute the installer binary using the syntax in the example below where [INSTALLER_NAME] is the installer binary (see Section4), [RESPONSE_PATH] is the path where the response file resides and installer.properties is the file name of the response file:

[INSTALLER_NAME] -r "[RESPONSE_PATH]\installer.properties"

3. The FEKO installer extracts the Java Virtual Machine (JVM) and the install modules to the TMP location of the machine and launches the installer.

4. Copy the installation file (see Section3) and response file ( installer.properties) to the same shared network location reachable by all cluster nodes.

5. Start the silent mode installation on all the cluster nodes from the head node using the syntax below where [NETWORK_PATH] is the path to the shared network location where the installation file and response file reside:14

clusrun start /wait "[NETWORK_PATH]\[INSTALLER_NAME]" /s /sms /f1 "[NETWORK_PATH]\installer.properties"

6. Be advised that the installation of each node could take some time and no output is given. When the installation is complete, output is displayed for each of the nodes. A return value of 0 for each node will indicate a successful installation.

14The clusrun tool is part of the Windows HPC pack toolset and is available on the head node. The clusrun command will install FEKO on all cluster nodes that are configured and approved by the Windows Compute Cluster Administrator Management Console SnapIn. See the documentation for the clusrun tool for additional command line options when installing on a sunset of the nodes.

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-39

4.4 Obtaining the FEKO License File

Complete the following steps to activate your FEKO installation (only valid for the legacy licens- ing system).

1. Obtain the request file in the licence directory of the FEKO installation. During installation a request file is created in the license directory of the FEKO instal- lation. If the file does not exist, create the file by starting the FEKO licence manager15 (see the FEKO User Manual for more information). Click Info > Create request file.

2. Open the request file and enter your FEKO customer number, Name, Company, E-mail and Fax.

3. Contact Altair Engineering Support16 along with your request file.

4. Altair Engineering Support will then present you with a license file (secfeko.dat) gener- ated from your request file.

5. Place the received license file, secfeko.dat, in the license subdirectory of the FEKO installation to activate the installation.

Note that the license file, secfeko.dat is linked to a specific machine. If a machine is replaced or the floating license server is moved to another machine, a new request file must be generated. Repeat the procedure as given above to obtain a new secfeko.dat file. If you are using floating licenses the procedure is similar, but you may need to edit this file, see Section 4.5.

15Also known as secfeko_gui. 16 http://www.altairhyperworks.com/ClientCenterHWSupportProduct.aspx

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-40

4.5 Floating Licenses

This section summarises the concept of a floating license in the FEKO legacy licensing system. By default FEKO uses a node-locked license, but a floating-license can be purchased separately.

4.5.1 Setting Up Floating License Servers

The following steps are applicable to both Windows and Linux:

1. Select one or more server machines to be used as the floating license servers. The server machines need to be reliable and running permanently without being rebooted too often. If a single server machine is used and it is unavailable, you will not be able to use FEKO and jobs running on remote machines will be terminated. If multiple redundant floating license servers are used, then an individual server can be rebooted without affecting the usage of FEKO. Typically a three-server redundant configuration is used. If you are using a three-server redundant configuration then at least two must be up and running to make a “quorum” and permit licenses to be checked out.

2. Install FEKO (see Section4) on the floating license servers.

3. Obtain the request files (see Section 4.4) of the floating license servers.

4. Choose the client machines. Note that the client machines need to have a permanent network connection to the floating license servers.

5. Edit the license file to contain the correct hostnames and IP addresses. ############### START USER EDITABLE SECTION ############### # Specify here your floating licence servers together with # the respective TCP port numbers that will be used for # communication between clients and servers. Leave the default # if you are unsure. If you get an error message that the port is # in use you will have to change it. # For the hostnames you can use either the hostname or the IP # address (from each client you must be able to reach # the server in this way, if you have problems try "ping" # with exactly the hostname or IP address you have specified # below after the SERVER keyword). SERVER1 licsrv1.altair.co.za PORT1 11602 SERVER2 licsrv2.altair.co.za PORT2 11602 SERVER3 licsrv3.altair.co.za PORT3 11602 ############### END USER EDITABLE SECTION ###############

Arbitrary TCP ports can be selected, by default FEKO uses 11601. Note the port information must be identical on the server side and client side.

6. Copy the license file secfeko.dat into the Licence directory of the FEKO installation for all the floating license servers and client machines.

7. When the port is changed at the server side, restart the floating license server for the change to come into effect. Two options are available to restart the floating license server:

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-41

(a) Start the FEKO licence manager17. For more information regarding the FEKO license manager, see the FEKO User Manual. Click Server > Reset. (b) Open a command terminal window/prompt and execute the following command to reset all license servers: secfeko -r For a secfeko_gui syntax overview, just type secfeko in the terminal window/prompt.

For instances where FEKO is used on notebooks during travelling where there is no permanent network connection to the floating license servers, a dongle license can be acquired.

Floating License Server Maintenance (Windows)

After copying the license file into the licence subdirectory of the FEKO installation, restart the floating license servers. Do this on each server either from a command window by typing:

secfekod --start or from Start > Control Panel > Administrative Tools > Services, right-click on the service FEKO floating licence manager and select Start. If this operation is unsuccessful, reboot the license server. If required, stop the floating license server in a similar way:

secfekod --stop

To stop the floating license server and remove the service (it will not be removed from the hard drive):

secfekod --remove

To install the service again:

secfekod --install

A special logging option is supported where each floating license server writes a log file (named secfekod.log) into the license subdirectory of the FEKO installation. This log file allows usage tracking of floating licenses and might be helpful for troubleshooting purposes. To activate this logging option, use the option -l18 for secfekod. This must then be installed as:

secfekod -l --install

For troubleshooting purposes, it is possible to run the floating license server not as a service, but in an interactive mode (with direct error output to the console). To do so, start the server in a console window as:

secfekod -i or with the described logging facility enabled use

secfekod -l -i

17Also known as secfeko_gui 18Use first -l followed by --install

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-42

Note that the secfekod.log file can become large. Even if the floating license server is restarted new information will just be appended to a possibly already existing file. One should activate this logging option only when required and deactivate once no longer required. After obtaining the license file and starting the floating license server, check its proper operation by starting secfeko_gui (see the FEKO User Manual). It should then connect to the floating license servers and obtain a list of the floating licenses and show their status (available versus in-use). Any error messages that the floating license server encounters while running as a service are written to the system event log facility, which can be viewed from the Control Panel > Admin- istrative Tools > Event Viewer > Applications. In this event log the name secfekod is used as source, and not only errors are logged, but also startup and stop notices. Any errors of the floating license server are also written to a file licence.error in the sub- directory license of the FEKO installation.

Floating License Server Installation (Linux)

To start the floating license servers, three startup scripts are created during the FEKO installation process in the directory $FEKO_HOME/bin:

secfekod_init.SuSE for SuSE Linux secfekod_init.RedHat for RedHat Linux secfekod_init.generic a generic script

Since it is not recommended that the license server run as root for security reasons, an alternative user account should be used for running the license server. The name of the user account where the license server should be started can be set in the appropriate secfekod_init.* file by changing the value of the USERNAME variable. Also verify that the setting of the variable FEKODIR in the appropriate file match the FEKO in- stallation directly. Copy this file to the general daemon startup directory such as /etc/init.d/ by using for instance for SuSE Linux the command:

cp $FEKO_HOME/bin/secfekod.init_SuSE /etc/init.d/secfekod

Register this service by using the suitable system command:

insserv secfekod for Linux, so that it will be started automatically the next time the machine is booted. If it is started for the first time, manually start the daemon using the command:

/etc/init.d/secfekod start

This will start the floating license server as a background process (daemon). Note that this is the recommended way of operation and root privileges are required to install the license daemon. If it is undesired to install the license server as a service, it is also possible to start the FEKO float- ing license server in an interactive mode (use $FEKO_HOME/bin/secfekod -i) or as daemon

January 2017 FEKO Installation Guide USING THE LEGACY LICENSING 4-43

(use $FEKO_HOME/bin/secfekod -d) from the FEKO installation directory. When the system is rebooted, the license sever will not be started automatically. A special logging option is supported where each floating license server writes a log file (named secfekod.log) into the license subdirectory of the FEKO installation. This log file allows usage tracking of floating licenses and might be helpful for troubleshooting purposes. To activate this logging option, use the option -l for secfekod, so this must then be installed as:

secfekod -l -d in the daemon mode or as:

secfekod -l -i in the interactive mode. To permanently activate this logging feature, edit the corresponding startup script secfekod_init (see above) and add the command line option -l there. Note that this log file secfekod.log can become very large (even if the floating license server is restarted new information will just be appended to a possibly already existing file), so one should activate this logging option only when required and deactivate again if no longer needed. If it is required to stop only one of the local floating license servers, use the command:

secfeko -slocal

To start the server again as the current user with no root privileges required, use the command:

secfekod -d

Once you have started the floating license server, it is a good idea to check its proper operation by starting secfeko_gui (see FEKO User’s Manual for more details on this). It should then connect to the floating license server and obtain a list of the floating licenses and show their status (available versus in-use). In case of any errors during interactive mode, any error messages that the floating license server encounters, are written to the console to stderr. When running secfekod as a daemon (default and recommended), then all error messages are written to the system event log facility, typically this is the file /var/log/messages. All startup and stop notices are also logged here. For the daemon mode, all errors of the floating license server are also written to a file (named licence.error) in the sub-directory license of the FEKO installation.

January 2017 FEKO Installation Guide MODIFYING THE FEKO INSTALLATION 5-1 5 Modifying the FEKO Installation

After the installation process is complete, any installation option19 can be modified. Simply execute the FEKO installation to modify the installation by performing a reinstallation. When the Altair FEKO 2017 Warning prompt is displayed, click Continue to overwrite all the files in the specified installation directory.

19For the legacy licensing system, this also include adding or removing a floating license server.

January 2017 FEKO Installation Guide UNINSTALLING FEKO 6-1 6 Uninstalling FEKO

The FEKO uninstaller will remove all files from the FEKO install. Backup all files you wish to save prior to running the uninstaller. There is no partial uninstaller available.

6.1 Windows Uninstallation via Graphical User Interface (GUI) Mode

1. Start the uninstallation process by either:

(a) Select the start menu for FEKO and run Uninstall Altair FEKO 2017 (b) The Uninstall or change a program panel under Control Panel to launch the FEKO uninstaller

2. If user account control (UAC) is enabled then a prompt displays showing the Altair En- gineering, Inc. digital signature for elevated permissions. Click Yes to continue with the uninstall.

3. The Uninstall Altair FEKO 2017 panel is displayed. Click Uninstall to continue.

January 2017 FEKO Installation Guide UNINSTALLING FEKO 6-2

4. Once the uninstallation is complete, the Uninstall Complete panel is displayed. Click Done to exit the uninstallation.

January 2017 FEKO Installation Guide UNINSTALLING FEKO 7-3

6.2 Windows Silent Uninstallation Using a Response File

Silent uninstalls for FEKO removes all folders, directories and files of the FEKO install.

1. A response file (see Section 3.2.3) is necessary for using the silent uninstall capabilities. Create a response file by adding the following three variables and save it as uninstaller.properties. INSTALLER_UI=silent FEATURE_UNINSTALL=COMPLETE INSTALL_CLEANUP_ALL=1

2. Open a command prompt (Administrative elevation is recommended to bypass any User Account Control prompts).

3. Run the FEKO uinstaller executable with the uninstaller.properties file using the syntax in the example below:

"\14.0\uninstalls\Uninstall_FEKO14.0\Uninstall Altair FEKO 14.0.exe" -i -f \hwfeko14.0_silent_uninstaller.properties

where the parameters are defined as follows: INSTALL_PATH: Specify the location of the FEKO install directory. -i: Sets the uninstalled interface mode to silent. -f: The location of the response file is specified. RESPONSE_PATH: Specify the location where the response file resides.

This will remove the HyperWorks install completely in silent mode.

6.3 Linux Uninstallation

1. Start the installation process by:

(a)“ cd” — Change directory to the location where FEKO is installed. (b) Execute the “sh” command on the uninstaller binary: sh uninstall_FEKO

2. Follow steps 3 to 4 in Section 6.1 as the panels are identical.

An alternative option is to run the command rm –Rf install_directory to uninstall the product, where install_directory is where the FEKO installation you would like to remove resides.

January 2017 FEKO Installation Guide FEKO ENVIRONMENT SETUP 7-4 7 FEKO Environment Setup

Prior to FEKO 14.0, the environment variables used to control the execution of FEKO on Windows were located in the registry. These settings were changed and referenced by using intifeko.bat. On Linux a simple shell script, initfeko, was used to set up the environment. With FEKO now being part of the HyperWorks simulation software platform, the environment setup for FEKO has changed. The environment setup is now uniform across the different plat- forms and makes use of the Lua scripting language and internal functions/applications for this process. For more information, see Section 11.

7.1 FEKO Terminal Script Files

The files initfeko.bat (batch file on Windows) and initfeko (bash shell script on Unix/Linux) are located in the FEKO_HOME/bin directory. These files are run from a terminal to configure the FEKO environment. From this FEKO environ- ment, the FEKO applications can be run. For Windows, just call the batch file and under Linux, source the shell script to apply the settings to the current environment context.

INITFEKO Environment Loader Script for FEKO Terminal Syntax: initfeko [-h | --help | /?] | [-v] [-d] [-terminal] Options: -h | --help | /? Shows help (this screen) -v Verbose mode (prints some informational output) -d Shows extended debug output while setting the environment -terminal Mode to setup a complete standalone FEKO Terminal Windows: (used by the Start Menu shortcut) Linux: (experimental)

January 2017 FEKO Installation Guide RUNNING PARALLEL FEKO SOLVER (WINDOWS) 8-5 8 Running Parallel FEKO Solver (Windows)

8.1 Requirements

The following are general requirements for compute nodes involved in parallel launching on all platforms:

• Compute nodes must have an identical operating environment for all users.

– The file structure of a compute node must be identical to the other compute nodes except for files that specify unique node or subcluster identification or configuration. – All compute nodes must run the same software image (kernel, libraries and com- mands). – The provided system-wide software must be properly configured and have a consistent runtime environment.

8.2 MPI Settings

FEKO uses the MPI (message passing interface) communication system for parallel solver runs. The MPI documentation is provided in the directory mpi doc of the FEKO installation. \ \ The following MPI implementations are supported by Windows:

• Intel MPI: The default and recommended MPI implementation for most platforms. It sup- ports SMP (symmetrical multi-processing) and communication protocols like Ethernet, Gi- gaBit Ethernet and Myrinet or Infiniband through DAPL.

• MS-MPI: This MPI implementation is provided by Microsoft, and it provides tighter integra- tion with the Windows HPC (high-performance computing) job scheduler. It is unavailable in general on Windows systems, as it is a part of the Microsoft HPC Server 2008/2008 R2/2012/2012 R2, Microsoft HPC pack and Microsoft Windows Compute Cluster Server 2003.

• MPICH: This MPI implementation is not recommended for general use. It is provided as a fall-back should a problem with Intel MPI be observed (for example bad parallel perfor- mance of one solution phase).

The FEKO installer sets Intel MPI as the default on all systems, except Windows HPC where MS- MPI is used by default. The MPI used is modified by either setting the environment variable FEKO_WHICH_MPI or by modifying the value of the variable FEKO_WHICH_MPI_SETUP in the file FEKOenvironmentFromSetup.lua located in the %FEKO_HOME% directory or any user-specific file (see Section 11). Possible values for the variables are:

• MPICH: FEKO_WHICH_MPI=1

January 2017 FEKO Installation Guide RUNNING PARALLEL FEKO SOLVER (WINDOWS) 8-6

• SGI MPT: FEKO_WHICH_MPI=4

• Intel MPI: FEKO_WHICH_MPI=11

• MS-MPI: FEKO_WHICH_MPI=13

For more information regarding the parallel FEKO version, see the FEKO User Manual.

8.3 Domain-based Authentication (SSPI) with Parallel FEKO

When running parallel FEKO involving multiple machines, the processes must be authenticated. FEKO on Windows make use of MPI implementations which offer different possibilities for the authentication. These are available in the GUI for each run. For more information, see the FEKO User Manual. For machines in a Windows (Active Directory) Domain there is also the SSPI authentication method provided. The method makes use of integrated domain mechanisms that do not require the encrypted username and password to be saved in the registry. However there may be configuration settings20 required in the Active Directory and the member machines to prepare the domain and computers for this kind of authentication (please contact your domain administrator).

20For more details refer to the Intel MPI and MPICH documentation in mpi doc directory of the FEKO installation. \ \ \ January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-7

9 Setting Up Remote Launching/Farming

21 This section describes how to prepare a system to support remote launching and/or optimisa- tion farming22 capabilities. The basic setup and configuration requirements for farming and for remote launching are similar. Note that farming between the processors of a single multi-core machine also requires that both the client and server setup for remote launching be available on the machine. When using the remote launching capabilities of FEKO, it is not required for the file systems to be shared. Required file copy operations are performed automatically. The progress of the remote run (including warning or error messages) can be monitored locally, similar to launching the job locally. FEKO provides cross platform remote launching. For instance it is possible to launch a remote job from a Windows PC on a Linux cluster and from Linux to Linux.

9.1 Requirements

The following are general requirements for compute nodes involved in remote launching on all platforms:

• Compute nodes must have an identical operating environment for all users.

– The file structure of a compute node must be identical to the other compute nodes except for files that specify unique node or subcluster identification or configuration. – All compute nodes must run the same software image (kernel, libraries and com- mands). – The provided system-wide software must be properly configured and have a consistent runtime environment.

9.2 MPI Method

This method is used when only Windows hosts are participating in the remote launching process or farming. This method uses the normal copy commands and the created network share on the remote host for transferring the files to and from the remote host. What you need:

• FEKO installed on both the local client and the remote host.

– When using HyperWorks Units (see Section3), ensure there are sufficient HyperWorks units to grant the license check out.

21Launching sequential or parallel FEKO runs on machines other than where the GUI is. 22The FEKO optimiser makes use of other computers to obtain solutions.

January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-8

– For legacy FEKO users (see Section4), ensure that there are valid FEKO licenses avail- able on both computers. When using floating licenses, two separate licenses will be required, one for the client and one for the remote host. It is possible to use a local GUI-only license to launch a full FEKO job elsewhere.

• The remote host must have been configured during installation to be used as a remote host. If the remote host was not configured during installation, either:

– Modify the installation (see Section5). – Create the network share manually by adding the FEKO bin directory to the Path environment variable.

This shares FEKO_TMPDIR as feko_remote$ to be used for copying files from and to the remote machine.

• The user starting the job must have access to the remote machine using a Windows account (same account must be created on both machines or domain-based security must be used).

January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-9

The general procedure is:

1. Remote Machine Setup

(a) Network share i. If during installation of FEKO the network share creation was selected, then no further steps are required. ii. In the event that remote launching was not selected during installation or want to use more advanced settings (for example due to company policy), then the remote machine requires preparation. The required network share must now be created manually. Normally the installer creates the following: Path: %FEKO_TMPDIR% Share: feko_remote$ Security: Full access for authenticated users The file %FEKO_HOME% bin feko_remote_mpi.bat must be edited if the loca- tion or share name is different\ \ from the above defaults. The relevant lines are: set FEKO_REMOTE_DIR_LOCAL=!FEKO_TMPDIR! and set FEKO_REMOTE_DIR_SHARE=feko_remote$ iii. Add the FEKO bin directory to the Path environment variable, for example: %FEKO_HOME%\bin (b) If the above default setting (sharing FEKO_TMPDIR as feko_remote$ with full access for “Authenticated Users”) which is used during the installation of FEKO is not suitable, one can change the location and/or security settings, as long as the network share name feko_remote$ is kept. It is then the user’s or administrator’s responsibility to ensure that all accounts used for computations get access to this share on the remote machine(s).

2. Client Machine Setup

(a) No special/additional steps are necessary. 3. User Environment Setup

(a) If the Path environment variable is not set globally, add the variable per user23. (b) The account(s) used to start/launch the FEKO remote computations must: i. exist on both the local and remote machine ii. have sufficient rights to copy from and to the remote share iii. have the same password/credentials such that no additional authentication dialog will open upon the copy and remote launching operations.

If the machines are part of a domain, this should be accomplished automatically by the domain membership and group policies. Otherwise please ask your domain administrator. If the machines are standalone machines, then make sure to create the same accounts (same account name and passwords) on both machines.

23To include the path to the bin directory, the FEKO installation must be done on the remote machine.

January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-10

9.3 SSH Method

This method works from/to all platforms, but requires additional steps to configure. What you need:

• FEKO installed on both the local client and the remote host.

– When using HyperWorks Units (see Section3), ensure there are sufficient HyperWorks units to grant the license check out. – For legacy FEKO users (see Section4), ensure that there are valid FEKO licenses avail- able on both computers. When using floating licenses, two separate licenses will be required, one for the client and one for the remote host. It is possible to use a local GUI-only license to launch a full FEKO job elsewhere.

• An SSH server on the remote machine and an SSH client on the local machine.

The general procedure is:

1. Remote Machine Setup: SSH server

(a) Linux Since SSH is readily available by default in most distributions, normally no additional steps are required. If this is not the case, then either query the package manager for a suitable SSH package or obtain OpenSSH24 Normally the SSH daemon (“sshd”) is configured and running, as this is part of the initial system installation. If this is not the case, please refer to your distribution’s doc- umentation on how to setup the SSH daemon to start automatically and allow users to connect. (Help might also be available from “man sshd” or “man sshd_config”.) (b) Windows Windows operating systems do not ship with any SSH component by default. As a result, additional software is required to add this functionality to Windows. The following additional software are able to add this functionality to Windows: i. SSHd from Cygwin (see Section 12.1) ii. OpenSSH for Windows (see Section 12.2) iii. CopSSH - OpenSSH for Windows (see Section 12.3) Nearly all implementations are based on the OpenSSH24 reference implementation and might vary only on the installation/configuration steps (effort) and the included versions, since all use precompiled binaries. The implementations are mainly some kind of “wrapper” around a slimlined installation of the Cygwin part (they install and maintain some minimalistic Cygwin environment only for the SSH functionality.) Note that the setup of the remote machine must be done using an account with administrative privileges. Next configure the active Windows Firewall to allow TCP port 22 to be opened for traffic. Note that this step is done regardless of which software solution you chose.

24 http://www.openssh.com

January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-11

2. Client Machine Setup: SSH Client

(a) Linux Since SSH is readily available by default in most distributions, normally no additional steps are required. If this is not the case, then either query the package manager for a suitable SSH package or obtain OpenSSH Make sure that “ssh” is in your PATH to be able to launch it without having to supply the full path to the directory where “ssh” is located. Help might also be available from “man ssh”. (b) Windows Windows operating systems do not ship with any SSH client application by default. As a result, additional software is required to add this functionality to Windows. However 25 there are several free programs available (http://www.openssh.com/windows.html) : The following additional software are able to add this functionality to Windows: i. SSH from Cygwin (see Section 13.1) ii. PuTTY (see Section 13.2) iii. OpenSSH for Windows (see Section 12.2) Note that the set up of the remote machine must be done using an account with administrative privileges.

3. Environment Setup If the settings are local to a specific machine, the settings must be replicated (manually or automatically) on any machine on which you want to launch FEKO remotely. For Linux this is done by having the users’ home directories on a NFS directory mounted on each machine. For Windows can be done by having roaming server profiles. Complete the following steps for each user:

(a) Public Key Authentication Create a private and public key pair for authentication. This task only needs to be done if no such keys are yet available. i. Under Linux and Cygwin Use the command “ssh-keygen -t dsa -N ""” to create the keys. You will find a “.ssh” directory inside your HOME directory which contains the private key (dquoteid_dsa) and your public key (“id_dsa.pub”). ii. When using PuTTY Convert this public key into PuTTY syntax by using “puttygen”. (Use “Convert” > “Import Key”, select your private key file created before, select “Save private key” and save it to a *.ppk file at a location where you can reach it later.) You can also use “puttygen” to completely create the key pair, but then you also have to copy the keys in OpenSSH syntax to the remote machine’s directory.

25 http://www.openssh.com/windows.html

January 2017 FEKO Installation Guide SETTING UP REMOTE LAUNCHING/FARMING 9-12

The public key must then be added to the file “authorized_keys” on the remote host. The private key must be used on the client while attempting to connect to the remote host. (b) Profile Scripts i. Linux Add the “initfeko” script to the .bashrc file in the HOME directory of each user to get the correct environment loaded. Simply add the following line to that file (note the dot followed by a space fol- lowed by the full path to the script): ". /altair/feko/bin/initfeko"

ii. Windows No special step is required since the relevant information is saved in the registry. Just ensure that the FEKO bin directory is added to the Path environment vari- able.

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-1 10 FEKO Software Updater

10.1 Introduction

The FEKO update GUI utility and the command line FEKO_UPDATE utility gives users the flex- ibility to install an update containing features, minor software enhancements and bug fixes on top of an existing base installation. Updates can be installed from a web repository26 or a local repository. Note that no information is collected during an update. During an update a list containing the latest software is retrieved and compared to installed components.

10.1.1 Terminology

The following terminology is used to define a version number:

FEKO .. for example:

FEKO 2017.1.2 where the parameters are defined as follows for the above example:

2017: Indicates a major upgrade. A major upgrade is available annually. Note that the update utility does not support major release upgrades. A major upgrade requires a new installer.

1: Indicates a minor upgrade. Large feature enhancements and bug fixes are included in the upgrade. Minor updates are released quarterly, for example “1” indicates the first minor upgrade after the initial release. Use the update utility to upgrade to a newer minor version (when available).

2: Indicates a patch update. Minor feature enchantments and bug fixes are in- cluded in the update. Patch updates are released between minor upgrades, for example “2” indicates the second patch update after a minor upgrade.

10.2 GUI Update Utility

The update utility allows for the forced check of updates from inside CADFEKO, EDITFEKO and POSTFEKO. Click Application menu > Check for updates to launch the FEKO update dialog (see Figure 10-1). The FEKO update GUI utility can also be called from the command line using the following command:

feko_update_gui

26Requires internet access.

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-2

10.2.1 Schedule a check for automatic updates

When either CADFEKO, EDITFEKO or POSTFEKO is launched and the scheduled interval time has elapsed, the update utility (GUI mode) automatically checks for updates. By default the schedule is set to check for updates once a week. If updates are available, the update utility displays a notification alert as well as giving you the option to select and install updates.

10.2.2 Update/Upgrade to New Version

To view the available versions, click the Update tab, see Figure 10-1. Select a version to view the available components and their individual file size. Click Refresh to update the list of available updates. Click Details to expand the message window to view the release notes. Click Update to update or upgrade to the selected FEKO version. Before an update is started, you will be asked to confirm the upgrade from the current version to the selected version, see Figure 10-2. Click Continue with upgrade to allow the update/upgrade process to proceed. During the update process, detailed information regarding the update process can be viewed by clicking on Details to expand the message window.

Figure 10-1: The FEKO update dialog with the Update tab selected.

Figure 10-2: The Confirm upgrade dialog.

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-3

10.2.3 Installed Component Versions

The Component, Version and Date information for the current installed FEKO version are viewed on the Installed versions tab, see Figure 10-3. Note that no internet connection is required to populate this table.

Figure 10-3: The FEKO update dialog with the Installed versions tab selected.

10.2.4 Update Settings and Proxy Settings

To schedule your automatic updates, specify the interval at which the update utility needs to check for available updates, see Figure 10-4. The following options are available: Check for updates automatically, Check for updates every week, Check for updates every month and speci- fying the number of days between checking for updates.

Update from: The web or a local repository may be set as the download location. Using the local repository is recommended when the computer network or cluster does not have internet access due to security reasons or only limited available band- width. In this case, the updates may be downloaded from the web repository by the system administrator and placed at a location accessible for the com- puter network or cluster. When the Web option is selected, the updates will be downloaded from the web repository.

Proxy: If the web is used as the repository, you can set the proxy server and authenti- cation (if required).

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-4

Figure 10-4: The FEKO update dialog with the Settings tab selected.

10.3 Command Line FEKO UPDATE Utility

FEKO_UPDATE is the command line update utility that enables scripted updates. Launching the utility with no arguments will list the available argument options. In most cases feko_update will be launched to check for updates, download and install the available update.

feko_update --update

The optional arguments for feko_update are:

-h,--help Displays the help message.

--version Output only the version information to the command line and terminate.

--check [UPGRADE_OPTION] [[USER:PASSWORD]PROXY[:PORT]] The update utility checks if new versions are available. UPGRADE_OPTION is an argument that allows a specific major patch version to be spec- ified. This option is used to view the FEKO component changes for a specific major patch version, their respective download size and the release notes. UPGRADE_OPTION can be any of the following:

1-9: Indicates the major patch version. latest: This option selects the largest valid major patch version that has a repository.

If UPGRADE_OPTION has not been specified and new versions are available, it will list the version and its associated UPGRADE_OPTION value. For example:

Update/upgrade options are available (UPGRADE_OPTION): 0: Minor update to version 14.0.401

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-5

If the computer is behind a proxy server, the proxy server address and the login details can be supplied as required.

--check-from LOCATION [UPGRADE_OPTION] The update utility checks if new versions are avail- able. Here the update source is the local repository specified by LOCATION. If UPGRADE_OPTION has not been specified and new versions are available, it will list the version and its associated UPGRADE_OPTION value. See the description for the --check argument above for more information regarding UPGRADE_OPTION.

--update [USER:PASSWORD]PROXY[:PORT]] The update utility checks if new versions are available within the current patch major version from the web repository. If an update is avail- able, download and install the new version. If the computer is behind a proxy server, the proxy server address and the login details can be supplied as required. If updates are available, the following information is printed to the screen:

• Print each file which is being downloaded. • Print each file which is being updated. • Print a message stating that the update was successful and exit.

--update-from LOCATION The update utility checks if new versions are available within the current patch major version and installs the new version. Here the update source is the local repository specified by LOCATION. The path must be an absolute file path which can point to an unmapped network share (Windows), mapped (mounted) network share or a directory on a local drive.

--upgrade UPGRADE_OPTION [[USER:PASSWORD]PROXY[:PORT]] The update utility checks if new patch major versions are available from the web repository. If an upgrade is available, download and install the new version. See the description for the --check argument above for more information regarding UPGRADE_OPTION.

--upgrade-from LOCATION UPGRADE_OPTION The update utility checks if new patch major ver- sions are available from the web repository. If an upgrade is available, it will download and install the new version. Here the update source is the local repository specified by LOCATION. The path must be an absolute file path which can point to an unmapped network share (Windows), mapped (mounted) network share or a directory on a local drive. See the description for the --check argument above for more information regarding UPGRADE_OPTION.

--no-progress Suppress the download progress when updating from a web repository.

--no-proxy Suppress the use of a proxy (including the system proxy).

10.4 Proxy Settings

The FEKO update utilities (GUI and command line) use the system proxy by default. On Win- dows, the proxy used is the same as is used by Internet Explorer. The proxy can be specified or by

January 2017 FEKO Installation Guide FEKO SOFTWARE UPDATER 10-6 using a PAC file. On Linux, the system proxy is defined by the environment variable http_proxy. If the environment variable http_proxy is not defined, then no proxy will be used. The parameter --no-proxy was added to bypass the system settings and use a direct connection.

10.5 Creating a Local Update Repository

This sections describes how a system administrator creates a local FEKO update repository. Note that the path for the local FEKO update repository must be an absolute file path which can point to an unmapped network share (Windows), mapped (mounted) network share or a directory on a local drive.

• If previous updates are still located at the required destination, first delete the old updates.

• Download the updates for the required platforms.

• Unzip the folders in the required destination.

If multiple platforms are downloaded, ensure that the various platform updates are located at the same destination. The zip file contains an entire directory structure which must be kept intact. When updates for multiple platforms are required, the directories must be merged. If for example the WIN64_X86_64 updates were downloaded to C: Updates , unzipped and merged, the following directory tree will result: \ \

C:\ |__Updates |__FEKO_X.Y.Z |__Win64_X86_64 where the parameters are defined as follows for the above example:

X: Indicates a major upgrade.

Y: Indicates a minor upgrade.

Z: Indicates a patch update.

In the above case set the local repository path to C: Updates (or a network reachable equivalent UNC path or mapped drive). Always point the local\ repository path to the directory that contains the root item of the *.zip file.

January 2017 FEKO Installation Guide Part I Appendix APPLYING ENVIRONMENT SETTINGS 11-8 11 Applying Environment Settings

11.1 General Functionality

The FEKO Environment is set up internally by means of Lua applications and internal functions. Each application is “self-aware”. It will detect and set up the environment based on its location. The default environment for the current installation will be loaded from a set of mandatory files. Any user-specific environment variables can then be added/changed in optional files loaded after the mandatory files. It allows for the user-specific environment variables to overwrite the global environment variables, rather than editing the file containing the global default environment variables. The Lua scripts are loaded in the following order (see Figure 11-1):

1. FEKO_HOME/FEKOenvironmentFromSetup.lua: This mandatory file is created at installation time. It contains the global default settings for the current installation. It is not advised to edit this file, unless a different setting is required than specified during installation.

2. FEKO_HOME/FEKOenvironment.lua: This mandatory file is provided and managed by Altair FEKO to ensure correct functionality. This file may be updated by the update utility (see Section 10), so any changes to it may be lost.

3. FEKO_USER_HOME/FEKOenvironment.lua: This is an optional file. It must be created by the user if and when required. 4a. Windows: %HOMEDRIVE%%HOMEPATH% FEKOenvironment.lua: This is an optional file. It\ must be created by the user if and when re- quired. If it is not found, it will be silently ignored and operation continues. %USERPROFILE% FEKOenvironment.lua: This is an optional file. It \ must be created by the user if and when required. If it is not found, it will be silently ignored and op- eration continues. 4b. Linux: $HOME/FEKOenvironment.lua: This is an optional file. It must be cre- ated by the user if and when required. If it is not found, it will be silently ignored and operation con- tinues.

5. FEKO_USER_ENV_INIFILE: Environment variable containing the full path to a Lua-based envi- ronment setup file.

Note that the above files are fully-functional Lua scripting files and standard Lua commands and constructs apply.

January 2017 FEKO Installation Guide APPLYING ENVIRONMENT SETTINGS 11-9

1. %FEKO_HOME%/FEKOenvironmentFromSetup.lua Mandatory files 2. %FEKO_HOME%/FEKOenvironment.lua

3. %FEKO_USER_HOME%/FEKOenvironment.lua

4. Windows:

User-editable and %HOMEDRIVE%%HOMEPATH%\FEKOenvironment.lua optional files %USERPROFILE%\FEKOenvironment.lua

Linux Loading precedence

$HOME/FEKOenvironment.lua

5. %FEKO_USER_ENV_INIFILE%

Figure 11-1: The loading order of the Lua scripting files.

Use the following functions for environment-related tasks:

• getEnv(variable name, getExpanded) Returns the value of the environment variable variable name.

Name Description variable name Name of environment variable. (String) getExpanded true: If the value contains reference to other vari- ables, get the expanded value. (default) (optional) false: Get the value as is with no extra expansion applied. (Boolean) return value Value of the environment variable (might be nil, if not set) (String)

• setEnv(variable name, value, forceOverwrite) Modifies the environment variable variable name to the specified value.

Name Description variable name Name of environment variable. (String) value Value to be prepended. (String) forceOverWrite true: Always set the value. Overwrite if variable already exists. (optional) false: Only set the value if variable does not exist. (default) (Boolean) return value – January 2017 FEKO Installation Guide APPLYING ENVIRONMENT SETTINGS 11-10

• prependEnv(variable name, value, delimReq) Prepends (or sets, if not exists) the environment variable variable name with the specified value.

Name Description variable name Name of environment variable. (String) value Value to be appended. (String) delimReq Delimiter character/string to be used to separate values when concatenating (operating system de- fault will be used, if not exists) (optional) (String) return value –

• appendEnv(variable name, value, delimReq) Appends (or sets, if not exists) the environment variable variable name with the specified value.

Name Description variable name Name of environment variable. (String) value Value to be appended. (String) delimReq Delimiter character/string to be used to separate values when concatenating (operating system de- fault will be used, if not specified) (optional) (String) return value –

January 2017 FEKO Installation Guide REMOTE MACHINE SETUP: SSH SERVER 12-11 12 Remote Machine Setup: SSH Server

12.1 SSHd from Cygwin

Cygwin is a collection of UNIX/POSIX tools ported to Windows. It is actively maintained and updates are provided on a regular basis and can be installed by re-running the setup. It is a good solution if one requires other UNIX/POSIX tools and is interested in getting the latest (security) bug fixes. Cygwin allows installation from a local repository to save time and internet bandwidth. This feature makes it an attractive option when installing multiple machines27. The general procedure for installation on a single machine (Vista, 7, Server) from the internet is as follow:

1. Install Cygwin

(a) Download setup.exe from the Cygwin website28 and run the setup. The file may be saved to a shared location to be used as a local repository. (b) Select Install from Internet. If you are installing a second machine and use the same location, you can also choose Install from Local Directory. (c) Use the default options in the next screen or change them to your needs (other in- stallation directory). To prevent future problems, do not use spaces in the directory name. Note that the recommended settings are the default. (d) Choose a location where to place the downloaded installation packages. If the file is to be re-used, save it to the same location as setup.exe above. (e) Select the type of internet connection. Specify the Proxy host and Port. (f) Choose a mirror close to you for maximum download speed. (g) Click View button to change to Full. Scroll down to openssh. Clicking on the left- most icon will select openssh as well as and its other dependencies. (h) Wait while the packages download and install. (i) Choose if you want shortcuts to be created (recommended) and click Finish to exit the installer.

2. Configuration of SSHd

(a) Open a Bash Shell found under Start > All Programs > Cygwin. (b) Ensure the files “/etc/passwd” and “/etc/group” are up to date (showing the cor- rect entries as to what is configured in Windows). Otherwise create them by: mkpasswd -l > /etc/passwd mkgroup -l > /etc/grou You can add the domain accounts by using the -d option. (c) Now configure the SSHd daemon/service by running “ssh-host-config”. Answer Yes to all questions. When asked for the value of the “CYGWIN” variable, enter “ntsec tty”.

27 http://www1.maths.lth.se/help/windows/cygwin/ 28 http://www.cygwin.com/

January 2017 FEKO Installation Guide REMOTE MACHINE SETUP: SSH SERVER 12-12

(d) Start the service by “net start sshd” or “cygrunserv –start sshd”.

3. If there are any errors, then check:

(a) Errors about permissions: i. Run the following commands to correct the permissions chmod +r /etc/passwd chmod u+w /etc/passwd chmod +r /etc/group chmod u+w /etc/group chmod 755 /var chmod 664 /var/log/sshd.log ii. Errors about memory addresses: The Cygwin DLLs then have to be rebased by the following procedure: A. Exit all Cygwin processes (close all windows of Cygwin and also stop all run- ning services of Cygwin). B. Start a Windows (!) command prompt (Start > Run > cmd.exe) with admin- istrative privileges. C. Go to the Cygwin installation bin directory (“cd C: Cygwin bin”). D. Run “ash”. \ \ E. Inside ash then run “/usr/bin/rebaseall” and then close again.

12.2 OpenSSH for Windows

OpenSSH for Windows is a free package that installs a minimal OpenSSH server and client utili- ties in the Cygwin package without needing the full Cygwin installation. For information on OpenSSH, refer to:

• OpenSSH for Windows29

The general procedure for installation:

1. Run the downloaded installation package and provide an installation location.

2. After installation completed successfully, you need to add the users that should be able to connect to this machine. For more information, refer to the Quickstart Guide and the ReadMe of OpenSSH located at Start > All Programs > OpenSSH for Windows.

12.3 Copssh - OpenSSH for Windows

Copssh is an OpenSSH server and client implementation for Windows systems with administra- tion GUI. It is a yet another packaging of portable OpenSSH, Cygwin, some popular utilities, plus implementation of some best practices regarding security. For information on Copssh, refer to:

29 http://sshwindows.sourceforge.net/

January 2017 FEKO Installation Guide REMOTE MACHINE SETUP: SSH SERVER 12-13

• Copssh - OpenSSH for Windows30

The general procedure for installation:

1. Run the downloaded installation package and just provide an installation location as well as a password for the service account.

2. Then after this completed successfully, you have to activate the users that should be able to connect to this machine (as by default no user is activated). Since Copssh works internally also with a basic version of Cygwin, one can use the same configuration options.

30 https://www.itefix.net/copssh

January 2017 FEKO Installation Guide CLIENT MACHINE SETUP: SSH CLIENT 13-14 13 Client Machine Setup: SSH Client

13.1 SSH from Cygwin

Refer to Section 12.1 for the basic installation, but skip the installation/configuration steps of the SSH daemon. Place the bin directory of your Cygwin installation in the system PATH environment variable to be able to directly launch the tools without having to provide the full path. (Go to Start > Control Panel > System >Advanced > Environment Variables > System Variables (lower part), there select PATH and press Edit and append the path to the Cygwin bin directory. Then close all and reboot the system.)

13.2 PuTTY

PuTTY is an SSH and telnet client. For information on PuTTY, refer to:

• PuTTY31

PuTTY needs no “real” installation since it comes in a ZIP archive (PuTTY32) which only needs to be extracted into some directory. One either adds the path of the directory where PuTTY was extracted to the Path system environ- ment variable (Go to Start > Control Panel > System > Advanced system settings > Environment Variables > System Variables (lower part), there select Path and press Edit and append the path to the PuTTY directory, close all and reboot the system.) or simply extract PuTTY to the FEKO bin directory. Since PuTTY uses another syntax and also another way of storing the public keys, additional configuration steps are necessary:

1. Create a backup copy of feko_remote_ssh.bat before editing the file.

2. Modify the FEKO remote launching file, feko_remote_ssh.bat.

(a) Locate the line “set SSH=ssh” and change to “set SSH=plink” (b) Locate the line “set SSH_OPTIONS=” and change to “set SSH_OPTIONS=-ssh -batch -l -i ” \ \ (c) Locate the line “set SCP=scp” and change to “set SCP=pscp” (d) Locate the line “set SCP_OPTIONS=-p -B” and change to “set SCP_OPTIONS=-scp -p -batch -l -i -unsafe” \ \ 31 http://www.chiark.greenend.org.uk/ sgtatham/putty/ 32 the.earth.li/ sgtatham/putty/latest/x86/putty.zip

January 2017 FEKO Installation Guide CLIENT MACHINE SETUP: SSH CLIENT 13-15

(e) Locate the line “set SCP_OPTIONS=-p -B -q” and change to “set SCP_OPTIONS=-scp -p -batch -l -i -unsafe -q" where\ in the\ above “” must be replaced\ \ by the real username to be used on the remote system and “” must be the absolute path to the private key file. \ \

3. Convert the public key file from OpenSSH syntax to PuTTY syntax. (See the Environment Setup item in Section 9.3)) This file has to be used in the above commands.

4. Log into the remote machine once using an interactive PuTTY session. Save the fingerprint to the registry to prevent the following error: “The server’s host key is not cached in the registry.”

5. For additional options and configuration settings regarding the PuTTY suite, refer to the help screens of PuTTY and the individual components.

13.3 OpenSSH for Windows

Refer to Section 12.2 for the basic installation. Place the bin directory of your OpenSSH installation in the system PATH environment variable to be able to directly launch the tools without having to provide the full path. (Go to Start > Control Panel > System >Advanced > Environment Variables > System Variables (lower part), there select PATH and press Edit and append the path to the OpenSSH bin directory. Then close all and reboot the system.)

January 2017 FEKO Installation Guide Index

Symbols 3D hardware rendering ...... 2-1

A activation legacy licensing ...... 4-39 Altair License Management system (ALM) ...... 3-35 Altair License Manager (ALS) ...... 3-35 appendEnv ...... 11-8 apply environment variable ...... 11-8

C check for updates ...... 10-1 cluster requirements ...... 8-5, 9-7 configure environment ...... 7-4

D display settings ...... 2-1

E environment variable ...... 7-4, 11-8

F face displacement ...... 2-1 farming ...... 1-1, 9-7 FEKO command line update utility ...... 10-4 FEKO environment ...... 7-4 FEKO GUI update utility ...... 10-1 FEKO software updater ...... 10-1 FEKO Student Edition ...... 1-1, 3-1 FEKO_HOME ...... 11-8 FEKO_USER_ENV_INIFILE ...... 11-8 FEKO_USER_HOME ...... 11-8 FEKOenvironment.lua ...... 11-8 FEKOenvironmentFromSetup.lua ...... 11-8 floating license ...... 4-40 floating license server ...... 4-40

G getEnv ...... 11-8 graphic card ...... 2-1

H High Availability License (HAL) system ...... 3-35 Hoops ...... 2-1 HyperWorks Units licensing ...... 3-1 installer ...... 3-1 HyperWorks Units licensing system ...... 1-1

I initfeko ...... 7-4

I-1 InstallAnywhere ...... 3-30, 4-34 installation ...... 1-1 remote launching ...... 9-7 installer ...... 3-1, 4-1 installer (HyperWorks Units licensing) Linux ...... 3-14 Windows ...... 3-2 installer (legacy licensing) Linux ...... 4-15 Windows ...... 4-2 installing console mode (HyperWorks Units licensing) ...... 3-29 console mode (legacy licensing) ...... 4-33 GUI mode (HyperWorks Units licensing) ...... 3-1, 3-2 GUI mode (legacy licensing) ...... 4-1, 4-2 server (HyperWorks Units licensing) ...... 3-34 server (legacy licensing) ...... 4-38 silent mode (HyperWorks Units licensing) ...... 3-30 silent mode (legacy licensing) ...... 4-34 IntelMPI ...... 8-5

L legacy licensing ...... 4-1 activation ...... 4-39 FEKO license file ...... 4-39 floating license ...... 4-40 installer ...... 4-1 requestfile ...... 4-39 secfeko.dat ...... 4-39 SECFEKO_GUI ...... 4-39 legacy licensing system ...... 1-1 licensing system HyperWorks Units ...... 1-1 legacy ...... 1-1 Linux ...... 2-1 installer (HyperWorks Units licensing) ...... 3-14 installer (legacy licensing) ...... 4-15 local update repository create ...... 10-6 Luascript ...... 11-8

M modify installation ...... 5-1 MPImethod ...... 9-7 MPI settings ...... 8-5 MPICH ...... 8-5 MS-MPI ...... 8-5

O OpenGL ...... 2-1

P parallel

I-2 MS Windows Domain ...... 8-6 parallel FEKO solver ...... 8-5 parallel solver ...... 1-1 prependEnv ...... 11-8 proxy settings ...... 10-5

R registry ...... 7-4 remote launching ...... 1-1, 9-7 rendering options ...... 2-1 requestfile ...... 4-39 legacy licensing ...... 4-39 requirements cluster ...... 8-5, 9-7 response file ...... 3-30, 4-34

S screen resolution ...... 2-1 secfeko.dat legacy licensing ...... 4-39 SECFEKO_GUI legacy licensing ...... 4-39 setEnv ...... 11-8 settings ...... 11-8 software rendering ...... 2-1 SSHmethod ...... 9-10 student edition ...... 3-1 system requirements ...... 2-1

T terminal script file ...... 7-4

U uninstall FEKO ...... 6-1 update minor ...... 10-1 patch ...... 10-1 proxy settings ...... 10-5 schedule ...... 10-1 update utility ...... 10-1 updater ...... 1-1 upgrade major ...... 10-1

W Windows ...... 2-1 installer (HyperWorks Units licensing) ...... 3-2 installer (legacy licensing) ...... 4-2 Windows CCS Server 2003 ...... 3-34, 4-38 Windows HPC server 2008 ...... 3-34, 4-38 Windows HPC server 2008 R2 ...... 3-34, 4-38 Windows HPC server 2012 ...... 3-34, 4-38 Windows HPC server 2012 R2 ...... 3-34, 4-38

I-3