--- title: ANSYS HFSS / ElectroMagnetics #tags: keywords: software, ansys, ansysEM, em, slurm, hfss, interactive, rsm, batch job last_updated: 07 September 2022 summary: "This document describes how to run ANSYS HFSS (ElectroMagnetics) in the Merlin6 cluster" sidebar: merlin6_sidebar permalink: /merlin6/ansys-hfss.html --- This document describes the different ways for running **ANSYS HFSS (ElectroMagnetics)** ## ANSYS HFSS (ElectroMagnetics) This recipe is intended to show how to run ANSYS HFSS (ElectroMagnetics) in Slurm. Having in mind that in general, running ANSYS HFSS means running **ANSYS Electronics Desktop**. ## Running HFSS / Electromagnetics jobs ### PModules Is necessary to run at least ANSYS software **ANSYS/2022R1**, which is available in PModules: ```bash module use unstable module load Pmodules/1.1.6 module use overlay_merlin module load ANSYS/2022R1 ``` ## Remote job submission: HFSS RSM and SLURM Running jobs through Remote RSM or Slurm is the recommended way for running ANSYS HFSS. * **HFSS RSM** can be used from ANSYS HFSS installations running on Windows workstations at PSI (as long as are in the internal PSI network). * **Slurm** can be used when submitting directly from a Merlin login node (i.e. `sbatch` command or interactively from **ANSYS Electronics Desktop**) ### HFSS RSM (from remote workstations) Running jobs through Remote RSM is the way for running ANSYS HFSS when submitting from an ANSYS HFSS installation on a PSI Windows workstation. A HFSS RSM service is running on each **Merlin login node**, and the listening port depends on the ANSYS EM version. Current support ANSYS EM RSM release and associated listening ports are the following:
ANSYS version Login nodes Listening port
2022R1 merlin-l-001 merlin-l-001 merlin-l-001 32958
2022R2 merlin-l-001 merlin-l-001 merlin-l-001 32959
2023R2 merlin-l-001 merlin-l-001 merlin-l-001 32960
Notice that by default ANSYS EM is listening on port **`32958`**, this is the default for **ANSYS/2022R1** only. * Workstations connecting to the Merlin ANSYS EM service must ensure that **Electronics Desktop** is connecting to the proper port. * In the same way, the ANSYS Workstation version must be the same as the version running on Merlin. Notice that _HFSS RSM is not the same RSM provided for other ANSYS products._ Therefore, the configuration is different from [ANSYS RSM](/merlin6/ansys-rsm.html). To setup HFSS RSM for using it with the Merlin cluster, it must be done from the following **ANSYS Electronics Desktop** menu: 1. **[Tools]->[Job Management]->[Select Scheduler]**. ![Select_Scheduler]({{"/images/ANSYS/HFSS/01_Select_Scheduler_Menu.png"}}) 2. In the new **[Select scheduler]** window, setup the following settings and **Refresh**: ![RSM_Remote_Scheduler]({{"/images/ANSYS/HFSS/02_Select_Scheduler_RSM_Remote.png"}}) * **Select Scheduler**: `Remote RSM`. * **Server**: Add a Merlin login node. * **User name**: Add your Merlin username. * **Password**: Add you Merlin username password. Once *refreshed*, the **Scheduler info** box must provide **Slurm** information of the server (see above picture). If the box contains that information, then you can save changes (`OK` button). 3. **[Tools]->[Job Management]->[Submit Job...]**. ![Submit_Job]({{"/images/ANSYS/HFSS/04_Submit_Job_Menu.png"}}) 4. In the new **[Submite Job]** window, you must specify the location of the **ANSYS Electronics Desktop** binary. ![Product_Path]({{"/images/ANSYS/HFSS/05_Submit_Job_Product_Path.png"}}) * In example, for **ANSYS/2022R1**, the location is `/data/software/pmodules/Tools/ANSYS/2021R1/v211/AnsysEM21.1/Linux64/ansysedt.exe`:. ### HFSS Slurm (from login node only) Running jobs through Slurm from **ANSYS Electronics Desktop** is the way for running ANSYS HFSS when submitting from an ANSYS HFSS installation in a Merlin login node. **ANSYS Electronics Desktop** usually needs to be run from the **[Merlin NoMachine](/merlin6/nomachine.html)** service, which currently runs on: - `merlin-l-001.psi.ch` - `merlin-l-002.psi.ch` Since the Slurm client is present in the login node (where **ANSYS Electronics Desktop** is running), the application will be able to detect and to submit directly to Slurm. Therefore, we only have to configure **ANSYS Electronics Desktop** to submit to Slurm. This can set as follows: 1. **[Tools]->[Job Management]->[Select Scheduler]**. ![Select_Scheduler]({{"/images/ANSYS/HFSS/01_Select_Scheduler_Menu.png"}}) 2. In the new **[Select scheduler]** window, setup the following settings and **Refresh**: ![RSM_Remote_Scheduler]({{"/images/ANSYS/HFSS/03_Select_Scheduler_Slurm.png"}}) * **Select Scheduler**: `Slurm`. * **Server**: must point to `localhost`. * **User name**: must be empty. * **Password**: must be empty. The **Server, User name** and **Password** boxes can't be modified, but if value do not match with the above settings, they should be changed by selecting another Scheduler which allows editig these boxes (i.e. **RSM Remote**). Once *refreshed*, the **Scheduler info** box must provide **Slurm** information of the server (see above picture). If the box contains that information, then you can save changes (`OK` button).