The purposes of this document are:
The contents of this document are applicable to both recompilable, which enables the user to re-link the executables, and non-recompilable with which the user can only use the supplied executables.
To install PHOENICS, the user needs to have a hard disk with at least a total of 2 GB free space. Additional space should be available for running PHOENICS. How much space will depend on the size of simulations made; for complex models it is possible to generate individual output files which are more than 1GB in size. For efficient use of PHOENICS the user should have at least 10GB of free hard disk space available.
PHOENICS will run on all platforms of Microsoft Windows from version XP onwards and will run on Windows 10. It is recommended that the computer used for running PHOENICS has a minimum of 2GB RAM. The amount of available RAM will limit the size and complexity of simulations made. PHOENICS is available compiled either as 32-bit or 64-bit executables. The 32-bit version will run on any version of Windows, but individual programs are limited to 2GB in size. This limits the size of the grid on which it is possible to run simulations. To go beyond this limit, the user will need to have a 64 bit version of the Windows operating system and use the 64-bit version of PHOENICS. Most new computers now come pre-installed with the 64-bit version of Windows.
PHOENICS has no special graphics requirements; most modern graphics cards should have no problem running PHOENICS. However, we have found that with some of the graphics cards that come integrated with the motherboard do give slow performace when rotating the domain with result contours displayed. To enable the clear display of results, the minimum recommended screen resolution is 1024*768 pixels.
An Intel Visual Fortran compiler version 10.1 or later is required for the recompilable version of PHOENICS compiled using Intel Fortran compiler. Users who do not have a version Microsoft Visual Studio installed (required since this contains the linker) should install the copy of Microsoft Visual Studio premier partner edition that now comes with Intel Visual Fortran.
Please note that an Administrator account will be required to install the software.
Chapter 2 lists the items supplied with the installation
Chapter 3 describes the installation procedures
Chapter 4 shows how to test the success of the installation
Chapter 5 advises users on starting to use PHOENICS
Chapter 6 shows how to install the parallel version of PHOENICS
Appendix A gives information on how to obtain an unlocking string
Appendix B provides answers to Frequently Asked Questions and to troubleshooting
The following items will be supplied:
The quick installation instructions are provided inside the cover of the DVD case which should enable experienced customers to upgrade their PHOENICS version successfully. Otherwise, it is recommended to read through the following sections before starting installation.
At least 2 GB of free disk space must be available on the target machine before you start to install PHOENICS. It is recommended though that you have in excess of 10GB free space, so that you have sufficient space to store results.
If an earlier version of PHOENICS is already present, it should be deleted, or the name of the existing installation directory changed before installing the new version. You may wish to preserve user files from working directories, such as \phoenics\d_priv1 , and user geometry files under \phoenics\d_satell\d_object\users. These can be copied to a temporary location with Windows Explorer, and later moved to the equivalent locations in the new installation.
To delete the old installation, open the Control Panel then in the section Programs click on the item 'Uninstall a program'. Now scroll through the list of installed programs and find the PHOENICS installation – the previous version was labelled PHOENICS 2014. Double click on the line labelled PHOENICS to begin the install script and choose the option 'Remove' then click on the button 'Next' to begin the uninstall procedure. This will remove all the files which were originally installed, but leave behind any new files which have subsequently been added (e.g. your case files). If you wish to preserve any of these left over files then rename the phoenics folder, otherwise delete it before re-installing PHOENICS. To rename the old installation to, say, PHOENICS.OLD, open Windows Explorer, right click on the \PHOENICS folder, then on Rename and type in PHOENICS.OLD.
If a previous version of PHOENICS exists on this PC, and you do not rename or remove it, it will not be overwritten by this installation process. The installation process will finish normally, but no existing files will have been overwritten.
If you have an old version of PHOENICS on your drive C:, and you would like to keep it on the C: drive, you can create a virtual drive and install PHOENICS on this virtual drive, with no need to rename or remove your old PHOENICS from the C: drive.
Click on 'My computer' icon to ascertain what drive letters are in use. Usually the C: drive will be the user's local hard drive and D: a removable drive (eg CD or DVD), other drive letters may already be in use for mapped network drives. Suppose the drive P: is not in use, you can create a virtual drive P:.
First, make a root level folder with a suitable name, e.g. C:\PHOENICS2015; then in a Command Prompt window, enter the command
SUBST P: C:\PHOENICS2015
You now have a virtual drive P: onto which you can load PHOENICS 2015 without affecting any older version of PHOENICS you may have on C:.
Please note that any subst drives are not remembered after a user logout. The drive will need to be re-created at each logon. This can be achieved by creating a batch file, say map_drive.bat (within which is written the subst command above) and include this in the Startup folder under the Start menu.
If the delivery is for a non-recompilable version of PHOENICS, then no compiler is required.
To install the compiler, insert the Intel Compiler DVD in the DVD drive. If Autorun (it is a default setting for the DVD drive on computers) is enabled, follow the instructions on your screen. If installation does not start automatically, use Windows Explorer to open the DVD drive and then double-click on INSTALL to start the installation process.
Follow the steps below to install the entire PHOENICS program suite on to the hard disk.
If PHOENICS is installed on one disk drive (e.g. C:) and the working directory is on a different drive (e.g D:), then the PHOENICS-VR icon will require changing. Click on the icon with the right mouse button, select Properties and Shortcut, and change the drive letter in the filed 'Start in:' to be the required letter, in this case D:.
Before running anything more complex, it is recommended that the user tries running a simple case from the PHOENICS library of cases to check the software unlocking and that the necessary DLLs are being loaded correctly.
Double-click on the CHAM icon, labelled 'PHOENICS VR' in the desktop. The screen shown below should should appear.
PHOENICS is provided with a temporary license file. If you received PHOENICS on a DVD disc, then this license file should provide up to two months usage before expiry. However, if you received PHOENICS as a download then you are likely to receive a dialog message that the code has expired.
If you get the expired notice, then refer to Appendix A and contact CHAM for a new license file.
Once you have valid license file you can prepare a test run of the solver. For this is best to select a simple case from the PHOENICS library cases, a good example to use is library case 805 – 'Sphere in a uniform stream'. To load the library case, from the File menu in PHOENICS VR select the item 'Load from Libraries…'. This should lead to the dialog shown below.
This dialog acts as a warning that if you had a pre-existing case loaded into the VR-Editor then the following action(s) will overwrite your case. This reminder gives the user the opportunity to cancel and save their work before continuing. To continue either click on the ‘Select Case’ or ‘OK’ buttons, these will lead to the following dialog.
In the edit box to the right of 'Case number:' enter the number 805, and then click on the button 'OK'. The PHOENICS VR window should then look like
This is a simple case of airflow entering the domain from an inlet the left and passing a sphere set in the flow field, the air exits through an outlet on the right. One can make adjustments to the flow, but for this initial test run, run the model as is. On the Run menu, select the item 'Solver'. Once selected, you will see the 'Save Current Settings' dialog below.
At this point you can choose whether any changes are saved to the current Q1 input file, by default this item will be ticked. This option is provided for those occasions when you wish to retain the original Q1. The file eardat will always be written at this time as it contains the input instructions for the solver. Clicking on the ‘OK’ button will launch the solver, 'Cancel' will abort the run. This run should only take a few seconds and you will see a new window appear on screen as below.
Once completed, the window will close. If the window does not appear then it indicates that the solver failed to start. At this juncture the solver should not fail. If it does, likely causes are either an unlocking failure or a failure to locate the necessary DLLs. Any failure in the unlocking should be recorded in the file 'lunit6' which will be located in the working directory (if installed in default location this file should be c:\phoenics\d_priv1\lunit6). If there is no message there then check that you have the three DLLs present in the directory c:\phoenics\d_earth\d_windf. The DLLs are named fmpich2.dll, mpich2.dll and mpich2mpi.dll (mpich2nemesis.dll for 64-bit version). If the DLLs and unlocking are present and correct and the solver is still not running then contact CHAM for further assistance.
Once the solver has finished the test is now complete. You may go on to view the results in the post processor.
Use the option 'GUI – Post processor (VR Viewer)' then click OK on the following dialog. Instructions on the use of the VR Viewer are available in documents TR324 and TR326.
PHOENICS is a general-purpose software package which uses the techniques of CFD (i.e. Computational Fluid Dynamics) to predict quantitatively:
Its name is an acronym for Parabolic Hyperbolic Or Elliptic Numerical Integration Code Series, wherein "parabolic", "hyperbolic" and "elliptic" are the words which mathematicians use to distinguish the underlying equations. However, the mention of equations does not imply that PHOENICS is intended for mathematicians.
PHOENICS performs three main functions:
PHOENICS therefore, like many but not all CFD codes, has a distinct software module, or set of modules, for each of the above three functions. Their interrelationships are shown below.
The four names in white rectangular boxes in the above diagram refer to files which are used for communication between modules, as follows:
The easiest way to get started is to activate the 'PHOENICS Commander', either by clicking on the desk-top icon created at installation time or by entering the command pc at the command prompt.
What should then appear on the screen is something like this:
The buttons along the top edge provide access to the PHOENICS Computational Fluid Dynamics Software Package. They include:
The buttons down the left are:
The principal input file used by the PHOENICS pre-processor is the Q1 file. This is an ASCII text file that contains a description of the scenario that is to be simulated and is written in the PHOENICS Input Language. This Q1 is read and processed by the pre-processor module Satellite into a form that is ready for the solver module Earth.
There are a number of ways in which the user can write a Q1, these include
In addition to the VR-Viewer, PHOENICS has further modules for the graphical display of flow fields. Two of which are:
Both programs can be launched from the 'Run module' page in the VR Environment.
PHOTON(PHOENICS OuTput optiON) dates from the early years of PHOENICS; it is a still the module which some users prefer to use.
WinPHOTON came into existence more recently. As its name suggests, its main role is to enable users to do by way of Windows-style mouse-clicks and dialog boxes what most users of PHOTON do by entering typed. WinPHOTON can also accept typed commands; but, as well as having a more-modern-looking menu system, it also has several functions which PHOTON, and indeed even the VR-Viewer, does not possess. Among these are:
The PHOTON/WinPHOTON programs also contain an additional line plotting module AUTOPLOT. AUTOPLOT provides X-Y graphs, made up of straight line segments joining the data points.
The data can be manipulated in a number of ways during plotting, specifically by:
AUTOPLOT can access data from PHOENICS PHIDA and XYZDA files, and also from user-created files. It can plot data from many files simultaneously, allowing easy comparison of PHOENICS results with experimental or analytical results.
As well as the post-processing modules which are available within PHOENICS, the user can select additional output which will enable users to plot their results user third party graphics programs. There are output options available for Tecplot, FieldView and VTK formats and can be activated either through the Additional Interfaces option in the VR Editor or by adding the PIL lines to the Q1 before running the solver.
For further detailed information access the PHOENICS On-Line-Information System.
This chapter describes the installation of MPICH2 for the user who purchased a licence for running Parallel PHOENICS on machines that are running Microsoft Windows or Microsoft Windows Server. It applies to installations on a single multi-core processor machine and clusters of multiple workstations or servers.
A typical configuration for running 64-bit parallel PHOENICS is a multi-core workstation with 2GB of RAM per core. However, if you are running large models then you may require double this capacity or more. Generally as computer power increases, users are building larger and larger models. So when buying new hardware allow room for memory expansion.
The workstations in a cluster should be joined by a switch or hub running at 100Mbps or faster. For efficient operation the processors in a cluster should be of equal performance: if not, the loads will be unbalanced and the slowest processor will determine the speed of the system. MPICH2 also requires the ability to make TCP/IP socket connections between all hosts.
The installation process for Parallel PHOENICS on a single workstation with multiple-cores/processors is simpler than the installation process for a cluster. It still requires the installation of MPICH2 to handle the message passing aspects, but one does not need to be concerned with firewalls nor with network connectivity issues. MPICH2 should be installed on the single workstation as outlined in section 6.3 (6.3.1-6.3.3 only), and the PATH set appropriately so that mpiexec.exe is visible. After completing the MPICH2 installation check that SMPD has been correctly installed as a service on the workstation
When setting up a group of computers to perform as a cluster, the computers should belong to the same Workgroup or Domain. Details of a computer's domain can be found on the Systems Properties page found by opening the Control Panel on the computer. If you need to change the domain settings, then you should consult your network administrator.
The user account that will be used to perform parallel computation across the cluster must be able to make remote connections to all computers in the cluster. For this reason it is recommended to use an Administrator account. The user account used should have the same password on all computers in the cluster.
It is a requirement that MPICH2 be installed on each PC in the cluster. To install MPICH2 the user will need to be logged in using an account with Administrator permissions. This need not be the account on which you run PHOENICS, but please note it is preferable when running over a cluster to use an administrator account.
Workstations and servers running versions of Microsoft Windows will now have a personal Firewall switched on by default. Experienced users may configure the firewall settings to allow parallel PHOENICS to run successfully, but while installing and until the user is sure that MPICH2 has been configured correctly, it is recommended that any personal firewalls are turned off. Again consult your network administrator if you are unsure how to do this. After the user has established that MPICH2 is working correctly then, of course, you may switch the Firewall back on (see settings in section 6.4).
It will be assumed in what follows that PHOENICS has been successfully installed in accordance with the instructions in the earlier chapters of this document. A full PHOENICS installation need only be made on one machine in a parallel cluster (the head node from which jobs will be run); however it is recommended that an installation is made on each workstation. If PHOENICS is only installed on the head node then it will be necessary to share the \phoenics directory so that all compute nodes may see it. Each workstation in the cluster will also be required to have a valid local licence file 'phoenics.lic' accessible.
On Windows platforms parallel PHOENICS uses MPICH2 as the message passing interface (MPI) for the communication between the different processors. MPICH2 is freely available on the Internet but for compatibility it is recommended that the installation is made from the MPI provided with PHOENICS package. Installation instructions are as follows:
In order to run the MPICH2 installation program you must first be logged onto the PC using an account that has Administrator privileges. If the PC is running Vista Business or Windows 7/8 you must switch off the User Account Control (UAC) while installing MPICH2. If you fail to switch off UAC, then the installation may complete without reporting any errors but in fact SMPD will not have been installed as a service nor will the necessary registry entries have been made.
To disable UAC open the Control Panel from the Start Menu, select item "User Accounts" and then "User Accounts" once more. On this page there should be an item "Change User Account Control settings", click on this item and then change the setting to its lowest one "Never notify" as below..
Then click OK to accept the changes and you will also be asked to restart the computer before the changes take effect.
The installer for MPICH2 is supplied as the file
This file should be executed prior to running Parallel PHOENICS, and this will initiate an Argonne National Laboratory installation of MPICH2 on your PC. Follow the installation instructions, and choose the default MPICH2 location in the Program Files folder (C:\Program Files\MPICH2) on your PC.
Please note: While it only necessary for PHOENICS to be installed on a single PC in a cluster, it is necessary to install MPICH2 or the SMPD service on all PCs.
The PHOENICS parallel run scripts assume that mpiexec.exe is located on the users PATH on the head and compute nodes. If the default location was chosen, this should be C:\Program Files\MPICH2\bin. The PATH is set through the System Properties dialog [launched from the Control Panel]. The image below shows the stages to set the User variable, path. Go to the Advance settings page and click on Environment Variables button. If the User variable path does not exist, click on New, otherwise highlight path and click on Edit. Add the necessary path entry for mpiexec – separate any path entries by semi colons. [To modify the System variable path, consult with your network administrator.]
Since version 12, the Intel Compiler has included Intel’s version of mpich. This version is not compatible at the binary level with that used by PHOENICS, so it is important when using PHOENICS that MPICH2 appears in the PATH before the Intel Compiler. If you have the Intel compiler installed on your PC it is best to add C:\Program Files\mpich2\bin; at the beginning of the path. This will ensure that the correct version of smpd and mpiexec will be found when you try to run parallel.
Note: If the path causes the Intel version of mpiexec to be used then the parallel solver will stall on start-up and calculations will not proceed.
When running across a cluster it is recommended to register a user account from which to launch MPICH2 on the head node. While it is not essential, it does simplify matters if this account is an administrator on the workstations within the cluster. This account will then be used to launch parallel Phoenics on the compute nodes. To register an account, open a Command Prompt window [From the Start menu it is located under Accessories], and run the MPICH2 program mpiexec.exe with the option -register. You will be prompted for an account and password, e.g.
> mpiexec.exe -register account: cfd1 password: ******** confirm: ******** Do you want this action to be persistent (y/n)? y
If the cluster has been set up within a network Domain (rather than a Workgroup), then in the above, you should also specify the domain as part of the account name. For example, if 'phoenics' is the domain and 'cfd1' is the user account within that domain, enter phoenics\cfd1. The response 'y' ensures that this action is persistent, i.e. this registration process does not have to be repeated for each session on this computer.
Once the installation of MPICH2 is concluded you may restore the UAC setting to their default levels.
If the firewall is activated, when the PHOENICS solver (earexe.exe) is run for the first time - in either sequential or parallel mode - a Windows Firewall Security Alert will be generated.
If the user is (or intends) running the solver in parallel mode then the user should click on the 'Allow access' button. On Windows 7 the user will need to also specify on which networks to allow access. Normally you would only be making parallel runs on either a domain or private network, so only these two items need be ticked before clicking on.
When running in parallel mode you will also get security alerts for the MPICH2 Process Manager (smpd.exe) and the MPICH2 Process launcher (mpiexec.exe). If you intend to run the parallel solver over a cluster it is essential that all three programs are unblocked/allowed access.
Allowing access to the three programs above on the head node is not yet sufficient to enable parallel PHOENICS to run across a cluster of computers. Before you can run across a cluster the user must first go to each of the compute nodes and allow access to the PHOENICS solver (earexe.exe) and the MPICH2 Process manager (smpd.exe).
On Windows 7, open the Control Panel and then click on 'System and Security'. Under the section 'Windows Firewall' there should be an item 'Allow a program or feature through Windows Firewall'. This will open a dialog from which you can check the permitted programs and allow you to add the additional programs. Click on the 'Allow another program…' button and then use 'Browse…' for the each following three programs in turn.
C:\Phoenics\d_earth\d_windf\earexe.exe C:\Program Files\mpich2\bin\smpd.exe C:\Program Files\mpich2\bin\mpiexec.exe
When adding the programs you can use the ‘Network location types…’ button to restrict network locations to ‘Domain’ and ‘Home/Work’. The ‘Public’ network option should remain unticked.
On each of the compute nodes you will need to add the programs
C:\Phoenics\d_earth\d_windf\earexe.exe C:\Program Files\mpich2\bin\smpd.exe
On Windows XP, open the Windows Firewall icon from the Control Panel, then go to the Exceptions Page. On the head node check that the above three programs are included, if any are missing you will need to use the "Add Program…" button to add them. You may also use the “Change scope..” button to restrict access to My network (subnet) only.Users of other personal firewall will need to unblock the above programs in a manner suitable for their firewall software.
The simplest way to launch parallel EARTH is from the VR-Editor, although it can be run from a Command Prompt window.
If a parallel PHOENICS licence has been purchased, an additional sub-menu, 'Parallel Solver', will appear under the 'Run' menu option in the VR-Editor. Once the parallel solver is chosen, a dialog box will appear on the screen where the user can either specify the number of processes to use or to specify a MPI configuration file.
The pulldown combo box provides the user with an option to select up to 64 processes in steps of 2. Those users who have more than 64 processors on their PC cluster may type the appropriate number into the box.
The 'Cluster Host List' portion of the dialog enables the user to select which hosts in the cluster are used for computation. Here there are three options,
This mode of running the parallel solver will always launch the root process on the local machine and a convergence monitoring window will appear on screen (as per the sequential solver). If running across a cluster, then the run will attempt to launch an instance of the solver from the same location on each of the compute nodes. If the default locations are used, this will be C:\phoenics\d_earth\d_windf\earexe.exe. If a Private Earth is to be used, then this also should be copied to the equivalent directory for each of the compute nodes.
When running across a cluster, it is important to consider the working directory on the compute nodes. This is because, by default, mpiexec will attempt to launch the process in the equivalent directory on all the workstations. So, if on the head node you are working in c:\phoenics\myprojects\projectbeta then this directory should also appear on all the workstations in the cluster otherwise the run will fail.
As it can difficult to always remember to create the working directory on all the cluster workstations there is an alternative. One can set up an environment variable PHOE_WORK_DIR on each of the cluster to point to an existing fixed directory
Then all processes (aside from the launching process) will write their output to this location.
PLEASE NOTE: The use of PHOE_WORK_DIR is not recommended if you are likely to make multiple parallel runs simultaneously. This is because the second parallel run (and subsequent runs) will overwrite the working files of the first.
The above methods of launching the parallel solver do not allow the user to fix the number of solver instances on each workstation. If you want that level of control, then the user will need to use the MPI Configuration file (see section 6.5.2 below).
The MPI configuration file option gives a more flexible way of launching the parallel solver. Assuming we have PHOENICS installed on each computer in the cluster, the following config file will use the public earexe.exe to run a single process on each of the four computers.
-localroot -np 1 -host cham-cfd1 c:\phoenics\d_earth\d_windf\earexe.exe -np 1 -host cham-cfd2 c:\phoenics\d_earth\d_windf\earexe.exe -np 1 -host cham-cfd3 c:\phoenics\d_earth\d_windf\earexe.exe -np 1 -host cham-cfd4 c:\phoenics\d_earth\d_windf\earexe.exe
The following example launches two processes on each of two computers where PHOENICS is installed only on the head node:
-localroot -np 2 -host cham-cfd1 c:\phoenics\d_earth\d_windf\earexe.exe -np 2 -host cham-cfd2 \\cham-cfd1\d_earth\d_windf\earexe.exe
Users should create their own configuration and 'run' files, based on the examples provided, tailored to their own installation. These can either be located in \phoenics\d_utils\d_windf or the local working directory.
All Nodes in the cluster should belong to the same Workgroup or Domain, and the user should be logged into each Node on the Cluster using the same Workgroup/Domain User account and password.
A full PHOENICS installation must be made on the head node. A PHOENICS installation is strongly recommended on the other compute nodes, but it is not essential.
C:\phoenics\d_allpro\phoenics.lic C:\phoenics\d_allpro\coldat C:\phoenics\d_allpro\config C:\phoenics\d_allpro\prefix C:\phoenics\d_earth\earcon C:\phoenics\d_earth\propsThe files get_hostid.bat and lmhostid.exe (in c:\phoenics\d_allpro) will also be needed initially to identify the compute node HOSTID necessary for unlocking the software.
C:\phoenics\d_earth\d_windf\earexe.exeDuring a run of the parallel solver the processes on the compute nodes will need to read and write some working files. These are generally only of use to the program during a run or perhaps for diagnostic purposes if things go wrong, but they still need to be written somewhere. By default these will be in an equivalent directory to that used to start the run on the head node. So if the run was started from c:\phoenics\d_priv1 on the head node the user will need to make sure that there is a directory of the same name on each of the compute nodes.
When using the default automatic domain decomposition, parallel PHOENICS only differs from sequential when Earth is run: problem set-up and post-processing of results can be done in exactly the same way as for the sequential version. A case that has been run in sequential mode can normally be run in parallel without any changes being made. The output from a parallel PHOENICS simulation will be result and phi files, having the same format as for sequential simulations.
It is also possible to by-pass the automatic domain decomposition algorithm, and to specify how you want to decompose the calculation domain into sub-domains. This can be done by selecting 'Manual' in the Domain decomposition group box on the Run Parallel solver dialog (see section 6.5.1 above).
When you first switch to manual decomposition the arrangement will match the automatic decomposition that would otherwise be used. Normally automatic decomposition will suffice, but there may be occasions where a different decomposition is preferable to avoid a split at a critical location.
In a Command Prompt window, if the EARTH executable is launched directly, then the sequential solver will be used; to run the parallel solver, the program name 'earexe' is used as an argument to mpiexec.
A script RUNPAR.BAT [nnodes] is provided. The optional argument [nnodes] indicates the number of processes to be launched on the current PC. The default is to launch two processes.
For example, RUNPAR 2 will execute the MPI command:
mpiexec –localroot -np 2 \phoenics\d_earth\d_windf\earexe
If a cluster has been defined by smpd, then the command will execute on two processors in the cluster, otherwise it will launch multiple processes on the local machine.
There are also 'run' commands which can be used in conjunction with configuration files, for example 'runcl4' uses the configuration file 'config4'. Config4 lists the PCs and processors to be used (see above Configuration file section above). The script runcl4 will execute the following command:
mpiexec –configfile \phoenics\d_utils\d_windf\config4
The parallel installation should be tested by loading a library case.
The different solver used for parallel operation requires a slight modification to the numerical controls. For example, the user may use main 'Menu' in the VR-Editor, and select 'Numerics' and then 'Iteration control': change the number of iterations for TEM1 (temperature) from 20 to 300. (Increasing the relaxation for the velocity components, U1 and W1, from 1.0 to 10.0 will also improve performance.)
For parallel operation it is recommended that velocities should be solved whole-field (rather than slab-by-slab); this can be achieved from the VR Editor (under 'Models', 'Solution control/extra variables') or by direct editing of the q1 file (by setting 'Y' as the third logical in a SOLUTN command).
A copy of the MPICH2 user guide (mpich2-1.4.1p1-userguide.pdf) may be found in the directory \phoenics\d_allpro\d_libs\d_win32\mpi.
Previously it was found that the user either needed to install Microsoft’s Visual Studio 2005/2008 or two Redistributable Packages (available as free downloads from the Microsoft website) before you can install MPICH2. With the current version of the installer MPICH2-1.4.1p1 on a computer running Windows 7, these packages no longer appear to be a pre-requisite. If you should find you need them, here are the links to download them:
Microsoft .NET Framework version 2.0 Redistributable Package (x64)
Microsoft Visual C++ 2005 SP1 Redistributable Package (x64)
These links were still correct July 2014, if you are unable to find them, try a search of the Microsoft site using the package name.
In order for parallel PHOENICS to start the MPICH2 Process Manager (smpd.exe) must first be running on each computer in the cluster. This is also necessary if PHOENICS is running in parallel on a single multi-core computer. It should have been installed as a service during the MPICH2 installation process. If parallel PHOENICS fails to start, begin by checking whether mpich2_smpd is listed amongst the list of services in the Task Manager.
If mpich2_smpd is not listed amongst the services then you will need to manually install it as an Administrator. To do this you will need to open a Command Prompt window, on Vista/Windows 7 you will also need to use the “Run as Administrator” when starting the Command Prompt. To install the smpd as a service, in the window type
If the head node has difficulty seeing one or more of the compute nodes and you are using static IP addresses in your cluster then you should consider defining the IP addresses in the host file on each of the workstations. The host file is normally located as
An example 'hosts' file is:
# Copyright (c) 1993-2009 Microsoft Corp. # # This is a sample HOSTS file used by Microsoft TCP/IP for Windows. # # This file contains the mappings of IP addresses to host names. Each # entry should be kept on an individual line. The IP address should # be placed in the first column followed by the corresponding host name. # The IP address and the host name should be separated by at least one # space. # # Additionally, comments (such as these) may be inserted on individual # lines or following the machine name denoted by a '#' symbol. # # For example: # # 220.127.116.11 rhino.acme.com # source server # 18.104.22.168 x.acme.com # x client host 127.0.0.1 localhost 192.168.11.1 cham-cfd1 192.168.11.2 cham-cfd2 192.168.11.3 cham-cfd3 192.168.11.4 cham-cfd4
To determine the IP addresses, on each of the workstations in the cluster open a Command Prompt window and type the command ipconfig. Use the IPv4 Address located in the section Ethernet adapter Local Area Connection to define the IP address for the workstation in the hosts file.
Sometimes on Windows 7 or Vista PCs the passphrase is not written to the registry correctly during installation. This can be checked by using the Windows program regedit and navigating to HKEY_LOCAL_MACHINE\Software\MPICH\SMPD. Assuming default values, the registry key 'phrase' should have the value behappy. Set the registry key phrase to this value if it is not present.
There are two non-fatal error messages that may occur in the Command Prompt window. The first is:
The system cannot find the path specified.
This will occur if the phoepath.bat did not correctly identify the location for the Intel compiler or if you don’t have the compiler installed on the computer.
The second non-fatal message is
Unable to open the HKEY_LOCAL_MACHINE\SOFTWARE\MPICH\SMPD\process\1264 registry key, error 5, Access is denied.
This can occur either if you are running from a non-administrator account or if you have UAC turned on. This error is not usually fatal and the run should continue. The process number may be different to the one indicated above.
If when starting the parallel solver you find that it has stalled during the start up process, that is if there are earexe.exe processes visible on all the compute nodes but consuming no CPU, then it may be a case of one of the compute nodes not being correctly unlocked. If this happens you will need to check the installations on each of the nodes separately to determine which has not been unlocked correctly.
If one of the compute nodes has not had the Firewall setting made correctly then the program mpiexec.exe should appear in the task manager of the head node, but earexe.exe will not appear in the list of processes on the compute node. It will appear to stall but will eventually time out with a message:
Error while connecting to host, a connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. (10060) Connect on sock (host=cham-cfd2, port: 8676) failed, exhausted all end points unable to post a connect to start the connect command Sock error: Error=-1 Abort: Unable to connect to ‘cham-cfd2:8676’ Sock error: Error=-1
If this message occurs then check the firewall settings on host cham-cfd2 and ensure that the programs smpd.exe and earexe.exe have been allowed access (see 6.4 for detail).
PHOENICS is normally unlocked using the FLEXlm system, and the delivery CDROM contains a FLEXlm licence file which allows use of PHOENICS for an initial period of one month.
The batch file /phoenics/d_allpro/get_hostid.bat will create a text file lmhostid.txt, which contains the FLEXlm HOSTID of that PC. Alternatively, the program /phoenics/d_allpro/lmhostid.exe, when run in a DOS window, displays the required FLEXlm HOSTID.This HOSTID should be sent to CHAM's Installation Section (see Contacting CHAM details below) in order to obtain a longterm licence file. The FLEXlm licence file 'phoenics.lic' supplied by CHAM in response to such a request should be placed in /phoenics/d_allpro, and the existing phoenics.lic file deleted.
A USB dongle may be supplied with the delivery, and the unique USB FLEXID will normally be known by CHAM. This FLEXID is printed on the USB dongle itself, and is of the form 9-abcd1234. When requesting a FLEXlm licence file the FLEXID value should be sent to CHAM's Installation Section (see Contacting CHAM details below).
Existing PHOENICS users may have a Rainbow dongle, and in this case PHOENICS is locked/unlocked using a dongle-based unlocking string present in the CONFIG file in the directory \phoenics\d_allpro, and is initially supplied with a temporary unlocking string.
A permanent unlocking string may be supplied with the PHOENICS delivery, or may be requested from CHAM's Installation Section (see Contacting CHAM details below). The dongle number is currently 10793.
An example of a dongle unlocking string and its location in the CONFIG file is shown below (the example is not currently valid). The unlocking string consists of the line starting with the text 'ID='
* ------ The configuration file CONFIG for PHOENICS version 3.5.1 ------ ID=:9(L8P3Y)P5ABG1AIOA/2D:SF dongle March 2009 *--------------------------------------------------------------------- SITE= CHAM *--------------------------------------------------------------------- SATPRE=\phoenics\d_satell\ EARPRE=\phoenics\d_earth\ PHOPRE=\phoenics\d_photon\ AUTPRE=\phoenics\d_photon\
PHOENICS is unlocked using the FLEXlm system, and the delivery CDROM contains a FLEXlm licence file which allows use of Parallel PHOENICS for an initial period of two months.
The FLEXlm HOSTID can be obtained as detailed under the paragraph ‘FLEXlm’ above. Unlocking for a multi-processor machine is exactly the same whether parallel or sequential PHOENICS is being used on that PC.
For a Parallel cluster installation the HOSTID of all the machines in the cluster is required (because, although PHOENICS need only be installed on one machine, parallel Earth will run on each machine). This is the case for multi-processor installations and clusters of fewer than 16 nodes - alternative unlocking will be arranged for larger clusters.
AC3D can be obtained directly from Inivis (www.inivis.com).
The folder phoenics\d_ac3d\plugins contains files which allow AC3D to be used in conjunction with PHOENICS, and AC3D should be installed on your computer such that it is in the folder \phoenics\d_ac3d.
The FLEXlm HOSTID or USB FLEXID should be recorded on the unlocking request form provided and returned to:
|Installation Section||Tel: 020 8947 7651|
|CHAM,||Fax: 020 8879 3497|
|Bakery House||e-mail: firstname.lastname@example.org|
|40 High Street,|
|London SW19 5AU|
A brief description of the first level subdirectories under \phoenics is given below.
d_ac3d contains plug-ins for a stand-alone program AC3D (obtainable from Inivis) which can be used (among other things) to create objects for use in the VR Editor.
d_allpro contains the binary code for the PHOENICS service routines shared by SATELLITE and EARTH, the program libraries for all modules and the graphics drivers used by SATELLITE, EARTH and PHOTON;
d_cosp contains a new "goal-seeker" for the purpose of solving so-called "inverse problems" (to be purchased separately);.
d_chmkin, containing files for the CHEMKIN interface.
d_earth contains the binary code and some source files of the PHOENICS main solver program EARTH, together with the PHOENICS case libraries;
d_enviro contains program and data files for the PHOENICS COMMANDER;
d_includ contains the Fortran common blocks required for recompilation;
d_intfac contains the interfaces between PHOENICS and other codes;
d_photon contains the binary code of the PHOENICS post-processor program PHOTON, which now incorporates AUTOPLOT;
d_pc contains the PHOENICS Commander.
d_polis contains all files for the PHOENICS On-Line Information System;
d_priv1 is referred to as a 'private' working directory from which the user may run all the PHOENICS programs, or use the PHOENICS-VR Environment;
d_satell contains the binary code of the PHOENICS pre-processor program SATELLITE, and the menu libraries;
d_shapem contains the executable of Shapemaker, a geometry generator;
d_utils contains utility batch files, such as run scripts, link scripts, and compiler option scripts. Also included are directories which contain many utility programs.
SimLab contains SimLab installation programs. SimLab is an optional third party add-on which may be used to convert a variety of CAD formats into ones usable by PHOENICS.
In addition to phoenics, the installation process will create the directory website,containing the additional files relevant to the PHOENICS On-Line Information System.
A working directory, \phoenics\d_priv1, is provided with the installation. New working directories may also be created anywhere on the system. The following steps should be performed in order to create a working directory, such as d_work.
To create the new folder, click the right mouse button on an empty part of the Windows desktop, then select New, and Folder. Type in a name for the new folder e.g. d_work, then press <return>. Drag this d_work folder to any convenient location.
Start the PHOENICS-VR Environment and click on Options, Change working directory. Use the browser to locate the new folder.
Note that the desktop icon created by the installation process is set to start PHOENICS with \phoenics\d_priv1 as the working directory. This can be changed by bringing up the properties dialog box for the PHOENICS icon, and changing the 'Working' directory on the program tab. Many copies of the icon can be made, each with a different 'Working' folder.
In a Command Prompt window
It is recommended that a new working directory is created under the \phoenics directory although the new directory can be anywhere. To create the new working directory, d_work,
Type: md d_work
POLIS can be run from the PHOENICS-VR Environment, or the PHOENICS Commander by clicking on the appropriate button under HELP in the top tool bar. It can also be started on Windows systems from the CHAM-logo icon labelled 'POLIS' on the Desktop.
All the POLIS documents are in HTML format, and can be accessed directly through an Internet browser. The address of the POLIS top page is usually \phoenics\d_polis\polis.htm.
If PHOENICS is not installed at the root level (for example, if it is installed within C:\Program Files) then although the icon will link to the opening page, the links within the document will fail. Historically, the links in POLIS have been made with absolute paths and so POLIS must be located at a root level for the links to work. The answer is to make use of the subst command to map the location of the installation to the root level of a virtual drive (see section 3.2).
Normally, the POLIS files will be copied to the drive on which PHOENICS has been installed. The Desktop icon and Start-menu item will be set to this drive automatically by the installation program.
The drive letter used by the HELP button is stored in the file \phoenics\d_allpro\cham.ini. At installation time, it is set to C. If PHOENICS is installed on another drive, say D, the cham.ini file must be edited (with Notepad or any other file editor) and the entry 'drive = ' in the [POLIS] section must be set to the correct drive letter.
POLIS uses absolute pathnames in its HTML links; unfortunately Firefox is unable to translate these links correctly from the file system. It is possible to get over this limitation by installing and using the IE Tab add-on. The IE Tab can be downloaded from the Firefox website, http://www.mozilla.com, and then follow the link to popular Add-ons. Just scroll down until you find the IE Tab, click on the 'Add to Firefox' button and install. The Tab will appear as a small icon to the left of the address bar, just click on it when you need to activate it.
The POLIS links will work correctly in Internet Explorer and Google Chrome.
If PHOENICS has been installed by another user, or if it is located within 'C:\Program Files' then the user may have Read-Only access phoenics folder. This will make the default PHOENICS_VR icon unworkable as it will attempt to open the program within phoenics\d_priv1 and fail because it will be unable to write to that directory.
If this happens then the (PC) Administrator will need to modify the properties of the PHOENICS-VR icon (right-click on the icon and select Properties) so that the folder pointed to for 'Start In:' is somewhere users will have write access to.
In addition to this the file permissions to the folder 'phoenics/d_sapps/common/pq1ed' will need to be changed so that Users have write permission, otherwise the pQ1 editor will fail.
Click on the Start menu icon, then in the 'Search programs and files' edit box type systempropertiesadvanced then hit return to open the Systems Properties dialog. Next click on the button 'Environment Variables…' to open a further dialog. To create a new User variable click on 'New…' and enter PHOENICS as the variable name and C:\phoenics as the Variable value (if your installation is not located at C:\phoenics then enter the location of your installation). Then click 'OK' to close each of the dialogs in turn.
PHOENICS can be run from an Command Prompt window opened by users, using individual commands such as:
providing that the PATH for that window has been suitably modified. The batch file \phoenics\d_utils\phoepath will modify the PATH correctly.
Users should check this file to ensure that the drive letters and paths for PHOENICS and the Intel Visual Fortran Compiler are both correct.
For the 32bit Intel Visual Fortran version, the PHOENICS code has been compiled using the compiler options
ifort /threads /libs:static /winapp /compile_only /assume:byterecl /debug:none /O3 /include:\phoenics\d_includ /include:\phoenics\d_includ\d_windf
as specified in the batch file COMPILE.BAT in the directory \phoenics\d_utils\d_windf.
For the 64bit Intel Visual Fortran version the compiler options are
ifort /define:_X64_ /integer_size:64 /threads /libs:static /winapp /compile_only /assume:byterecl /debug:none /O3 /include:\phoenics\d_includ /include:\phoenics\d_includ\d_windf
The current set of compiler options are specified in the batch file COMPILE.BAT, located in the directory \phoenics\d_utils\d_windf.
Somehow the CHAM icon, PHOENICS-VR disappears from my desktop. How do I recreate this icon.
Should the PHOENICS-VR Environment Icon be deleted in error it can be recreated thus:
Select the following by clicking, using the left button of the mouse
Start, then point to Programs
Then, in 'All folders', double click on
d_satell and then
Finally, in the 'contents of d_windf' box, click right button of the mouse on
satexe.exe then select the option
A Shortcut to satexe.exe is now created. Drag this Shortcut, using the left mouse button, onto a suitable part of the Windows screen. Rename the icon, using the right button, to 'PHOENICS-VR'. Right-click on the icon, and select 'Properties' then add the argument vre after SATEXE.EXE. Set the 'Start in' folder to a suitable location, e.g. \phoenics\d_priv1.
When I click on the PHOENICS-VR Environment icon, I get an error message that Windows cannot find C:\PHOENICS\D_SATELL\D_WINDF\SATEXE.EXE'.
The desktop shortcut created by Install assumes that PHOENICS has been copied to drive C:. If you have copied it to another drive, you will have to modify the 'Cmd line' and 'Working' entries on the Program tab of Properties to reflect the correct drive letter. Click on the Commander icon with the right mouse button to bring up the Properties dialog box.
I can't run any PHOENICS modules from a Command Prompt window with the 'runsat', 'runear' commands - I get 'bad command or file name' error messages.
You should check if the path is correct by typing 'PATH' on the Command Prompt window. The correct path should point to '\phoenics\d_windf\d_utils and \phoenics\d_utils'. If it does not, you must run the batch file <drive>:\PHOENICS\D_UTILS\PHOEPATH.BAT in the DOS window before running any PHOENICS modules. Check that this file contains the correct drive letter for PHOENICS, and the correct path to the INTEL Fortran compiler.
My windows open and close too quickly for me to be able to see the messages.
Edit the file \phoenics\d_allpro\cham.ini ('Files', 'Open file for editing','cham.ini' from environment top menu bar) and replace the line
pause = off
pause = on
My compile window opens and closes too quickly for me to be able to see the error messages.
Edit the file \phoenics\d_utils\d_windf\compile.bat, and add /list to the argument list as follows:
ifort /list %IFACE% %CMP_OPTS% %INT_SIZE% %IDIR% %1
You will now generate listing files for each file compiled.
The INTEL Visual Fortran compiler version does not appear to be accessible when I try to compile a program.
In order to use the Visual Fortran compiler it must first be visible on the user’s path. PHOENICS uses the file \phoenics\d_utils\phoepath.bat to set the users path correctly. This script depends on correct Environment variable being set when the Intel Visual Fortran Compiler was installed. The script should be good for versions of the Intel compiler between 10 and 16. The current complier Intel Parallel Studio XE for Fortran is version 16.
If, for some reason, you do not have the Environment variable set you can modify the file phoepath.bat to explicitly set it. For example, if you have installed Intel Fortran Composer XE 2013 in its default location, in phoepath.bat, after the line
if defined phoenics (set pho=%phoenics%) else set pho=\phoenics
set IFORT_COMPILER14=C:\Program Files (x86)\ComposerXE-2013
Check that this is where the compiler is located and adjust the location if necessary.
When I click on 'compile' from the VR Environment I encounter the error message 'Bad command'. How do I cure the problem?
This problem is usually because the path name for the script ifortvars.bat is incorrect in the file /phoenics/d_utils/phoepath.bat. Please refer to the previous FAQ for the correct setting of the compiler path.
If the Compiler path is set correctly then the other possibility is that the path to the PHOENICS script is incorrect. The script PHOENICS uses for compilation is compile.bat and is normally located in \phoenics\d_utils\d_windf. If you have installed PHOENICS somewhere other than the root directory and you do not have the Environment variable PHOENICS set correctly then it will fail to find the script. Refer to the follow FAQ for instructions on how to do this.
How do I set or reset my PHOENICS Environment variable?
Section 6.3.3 dealt with updating the PATH environment variable. The setting of the PHOENICS environment variable is similar. Follow the process to open the 'Environment Variables' dialog. If you are logged in as an Administrator you will be able to create a 'New' System Variable, otherwise you will be restricted to creating a 'New' User Variable. The difference between a User and a System variable is that the User variable only applies to the current user whereas a System variable will apply to all Users of the computer. So, click on the 'New' button and enter the variable name PHOENICS and the variable value C:\phoenics. Adjust the value to reflect the location of the 'phoenics' directory on your installation.
When I click on 'compile' from the VR Environment I encounter the error message 'Too many parameters'. How do I cure the problem?
This error message may be cured by modifying the file /phoenics/d_utils/phoepath.bat so that the path statement:
echo Adding INTEL PHOENICS to path
path = \phoenics\d_utils\d_windf;\phoenics\d_utils;%path%
is replaced by
echo Adding INTEL PHOENICS to path
path = \phoenics\d_utils\d_windf;\phoenics\d_utils;c:\windows\system32
This means the path is set explicitly, rather than adding to an existing path by the use of %path%.
I wish to see an EARTH window with variables, not the graphics window with spot values and residuals.
You must turn the graphical convergence monitor off. Either:
PHOENICS starts but immediately stops. When I click on the PHOENICS icon, the PHOENICS-VR window appears and disappears almost immediately.
Check in the working directory for the file luout. If it exists, open it with Notepad or some other file editor. It may contain an error message - usually indicating that unlocking is incorrect.
I have put my unlocking string in the file phoenics/d_allpro/config, but still get the message 'illegal or absent id string'.
Check that you have entered the string correctly, paying particular attention to possible confusion between the upper-case letter O and the number 0.
Furthermore, the character string 'ID=:' must start in column 1. If a leading space is left in the string, it will not be recognised.
The message sent to you containing your unlocking string also contains your dongle id as a check, in the form:
NODEID=10793 for a dongle
This line should not be entered in the config file.
I have put PHOENICS on to a PC server, but could not run from another PC on my network.
You will need to have local copies of some files and directories on each machine. You will also need to modify the config and prefix files. Please contact CHAM for detailed information.
PHOENICS has been working satisfactorily, but today it fails with a Microsoft error window reporting an error in 'satexe'. I have made no changes since yesterday, and my computer has not been upgraded or modified since PHOENICS last worked.
If no changes have been made on your PC it is just possible that the length of the FLEXlm licence path list in the Registry has become too long. Run the program 'FlushLic.exe' , which is to be found in the folder \phoenics\d_utils to clear this FLEXlm licence path list.
When I run the Sequential Solver (EARTH) nothing happens on the screen and no error messages are displayed, and no result file is created.
The sequential solver requires the dynamic-link libraries (DLL) fmpich2.dll, mpich2.dll and mpich2mpi.dll (mpich2nemesis.dll for 64-bit version) to be accessible at run time. That is they must either reside in same folder as the executable, the working directory or on the user's path. The named library files are located in /phoenics/d_earth/d_windf, copies are also in /phoenics/d_utils/d_windf. If the solver cannot locate them they can be copied from there to your working folder. Alternatively, add the folder pathname '\phoenics\d_utils\d_windf' to your PATH.
I get a message indicating there is insufficient Virtual Memory when I run a PHOENICS module
The F-arrays for all the modules are now allocated dynamically at run-time, in the file CHAM.INI.
Sometimes, when running large cases, the Earth Solver will display a dialog complaining that there is insufficient virtual memory, and give the size of the F array it is trying to allocate. In many cases, changing the CHAM.INI setting to allocate that much memory initially will allow the case to run.
When I attempt to compile from within VR Editor, an error in the Command Prompt window indicates that the wrong compiler has been accessed
This can happen if you have more than one Fortran compiler installed. The solution is to set up an Environment Variable PHOENICS_COMPILER with a value which is the pathname to the correct compiler. The pathname would be similar to this
C:\Program Files (x86)\Intel\ComposerXE-2013\bin\ia32
Under the VISTA Operating System I get grey rectangles when running the VR Viewer
This is normally a consequence of the hardware acceleration on the graphics card. It can usually be fixed by upgrading the graphics file driver to the latest version. The simplest way to update the graphics card driver is to use Windows Update. If there is an update for your graphics card it should normally be indicated amongst the optional updates.
If updating the graphics card driver does not clear the problem, then you will need to turn off hardware acceleration while running PHOENICS VR there are three ways of accomplishing this: