CFD Online Logo CFD Online URL
www.cfd-online.com
[Sponsors]
Home > Forums > Software User Forums > ANSYS

FSI System Coupling HPC Cluster (SLURM)

Register Blogs Community New Posts Updated Threads Search

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
Old   April 5, 2021, 19:30
Default FSI System Coupling HPC Cluster (SLURM)
  #1
New Member
 
Jasia
Join Date: Nov 2020
Posts: 2
Rep Power: 0
JAsia is on a distinguished road
I have been working to try to get a FSI simulation running in our universities HPC cluster. I have the coupling.sci file, mechanical and fluent data, .py script, and submission script. I have searched through the ANSYS forums, but don't seem to find any solutions that work. The ANSYS forums are also down for this week.

Here is the error file I am met with:

error file
Code:
Traceback (most recent call last):
  File "/datapool/usr/local/src/ansys/ansys-20.2/ansys_inc/v202/SystemCoupling/PyLib/main/Controller.py", line 143, in <module>
    _run(sys.argv)
  File "/datapool/usr/local/src/ansys/ansys-20.2/ansys_inc/v202/SystemCoupling/PyLib/main/Controller.py", line 139, in _run
    _executeScript(options)
  File "/datapool/usr/local/src/ansys/ansys-20.2/ansys_inc/v202/SystemCoupling/PyLib/main/Controller.py", line 88, in _executeScript
    kernel.commands.readScriptFile(scriptFile)
  File "PyLib/kernel/commands/__init__.py", line 31, in readScriptFile
  File "PyLib/kernel/commands/CommandManager.py", line 168, in readScriptFile
  File "run.in", line 19, in <module>
    ('PARTICIPANT-2', 1.0)])
  File "PyLib/kernel/commands/CommandDefinition.py", line 74, in func
  File "PyLib/kernel/commands/__init__.py", line 28, in executeCommand
  File "PyLib/kernel/commands/CommandManager.py", line 121, in executeCommand
  File "PyLib/cosimulation/externalinterface/core/partitioning.py", line 77, in execute
  File "PyLib/kernel/framework/ApplicationContext.py", line 30, in __getattr__
  File "PyLib/kernel/framework/ApplicationContext.py", line 50, in __madeComponent
  File "PyLib/kernel/framework/ApplicationContext.py", line 59, in <lambda>
  File "PyLib/kernel/framework/Annotate.py", line 50, in injected
  File "PyLib/cosimulation/partitioning/__init__.py", line 33, in __init__
  File "PyLib/cosimulation/partitioning/machinelist.py", line 66, in loadMachines
  File "PyLib/cosimulation/partitioning/machinelist.py", line 252, in _constructMachineListSLURM
TypeError: int() argument must be a string, a bytes-like object or a number, not 'NoneType'


Here is the submission script:

batch script
Code:
#SBATCH -J "FSI"                              # Job name
#SBATCH -n 16                                       # Number of cores to use
#SBATCH -N 1                                        # Number of compude nodes to use
#SBATCH -e "%J.err"                                 # SLURM error file name
#SBATCH -o "%J.out"                                 # SLURM output file name
###SBATCH -t 0                                      # Time limit (0 indicates no time limit)
#SBATCH -p talon-part1                              # Talon partition to user for this job
#SBATCH --mem=120GB

RUN_FILE="run.in"                       # Ansys definition file

module load mech/ansys-20.2test
module load system/openmpi-4.0.4
module load system/mpich-3.4a2
###module load system/perl-5.22.1

#START_METHOD="IBM MPI Distributed Parallel"
START_METHOD="IBM MPI Local Parallel"

#function join_by { local IFS="$1"; shift; echo "$*"; }
function join_by { local d=$1; shift; echo -n "$1"; shift; printf "%s" "${@/#/$d}"; }

HOSTS=`scontrol show hostname $SLURM_JOB_NODELIST`
HOSTLIST="$(join_by "*$SLURM_CPUS_ON_NODE," $HOSTS)*$SLURM_CPUS_ON_NODE"

systemcoupling -R "$RUN_FILE" > FSI.out


and here is the .py script:

py script
Code:
ImportSystemCouplingInputFile(FilePath = 'coupling.sci')

execCon = DatamodelRoot().CouplingParticipant

execCon['Solution'].ExecutionControl.InitialInput = 'OscPlate.cas'

execCon['Solution'].ExecutionControl.WorkingDirectory = 'Fluent'

execCon['Solution 1'].ExecutionControl.InitialInput = 'mechanical.dat'

execCon['Solution 1'].ExecutionControl.WorkingDirectory = 'Mechanical'

execCon['Solution'].ExecutionControl.PrintState()

execCon['Solution 1'].ExecutionControl.PrintState()

PartitionParticipants(AlgorithmName = "SharedAllocateMachines",
        NamesAndFractions = [('PARTICIPANT-1', 1.0), 
                            ('PARTICIPANT-2', 1.0)])

PrintSetup()

Solve()


I have tried to follow the tutorials and the user manual for system coupling, but I am lost at what else I can try.
JAsia is offline   Reply With Quote

Old   April 6, 2021, 02:33
Default
  #2
Senior Member
 
M
Join Date: Dec 2017
Posts: 703
Rep Power: 13
AtoHM is on a distinguished road
No experience with that kind of simulation on a cluster, but I would try to go the obvious way and see what that error message is about.
Its obviously a Python error, where it expects a value as string to convert to an integer and gets an object of type 'NoneType' instead. There are many reasons that get you a NoneType object so there is no obvious hint. Look what happens on the lines prior to line 252 in _constructMachineListSLURM, there is probably some error in there. Fails to get the machine id? Something like that?


But, I assume it is not your job to fix queue-Scripts. Get help from system administrators.
AtoHM is offline   Reply With Quote

Old   April 6, 2021, 03:54
Default
  #3
New Member
 
Jasia
Join Date: Nov 2020
Posts: 2
Rep Power: 0
JAsia is on a distinguished road
Quote:
Originally Posted by AtoHM View Post
No experience with that kind of simulation on a cluster, but I would try to go the obvious way and see what that error message is about.
Its obviously a Python error, where it expects a value as string to convert to an integer and gets an object of type 'NoneType' instead. There are many reasons that get you a NoneType object so there is no obvious hint. Look what happens on the lines prior to line 252 in _constructMachineListSLURM, there is probably some error in there. Fails to get the machine id? Something like that?


But, I assume it is not your job to fix queue-Scripts. Get help from system administrators.
Would this be in a file called _constructMachineListSLURM or in the machinelist.py file? I have actually looked in machinelist.py and it only goes up to about 180 lines.
JAsia is offline   Reply With Quote

Old   April 6, 2021, 05:07
Default
  #4
Senior Member
 
M
Join Date: Dec 2017
Posts: 703
Rep Power: 13
AtoHM is on a distinguished road
Then I guess _constructMachineListSLURM is a function that is imported from some place else. import statements are usually placed at the top of a file, maybe you can find where it comes from.
AtoHM is offline   Reply With Quote

Old   April 28, 2021, 15:31
Default
  #5
Senior Member
 
Sebastian Engel
Join Date: Jun 2011
Location: Germany
Posts: 567
Rep Power: 21
bluebase will become famous soon enough
Naive question:


How intelligent is the CLI parser? Could it be the case that the commands in run.in have to be oneliners?


It's weird that this line is printed alone in the error log:
('PARTICIPANT-2', 1.0)])
bluebase is offline   Reply With Quote

Reply

Tags
ansys 2021 r1, fsi 2-way coupling, help needed, hpc cluster, system coupling error


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
How to continue calculation in ANSYS Workbench with System Coupling after unsave WangYihuHRB Fluent Multiphase 0 March 30, 2021 11:50
linear solver crashing during transient run on HPC cluster Geoff67 CFX 3 August 28, 2020 19:53
FSI simulation in SLURM cluster (input file and script) Lara Gonçales Structural Mechanics 0 January 20, 2020 16:45
2 Way FSI using System Coupling salijav ANSYS 0 December 21, 2015 03:36
CFX11 + Fortran compiler ? Mohan CFX 20 March 30, 2011 19:56


All times are GMT -4. The time now is 12:03.