Author Topic: Severe Error during Ridft HFC Calculations  (Read 2860 times)

jcardol

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
Severe Error during Ridft HFC Calculations
« on: September 25, 2023, 06:02:04 PM »
Dear Turbomole Users,

I'm running into an error when using Turbomole 7.7 ridft module alongside x2c method to calculate HFCC (HyperFine Coupling Constants) while employing the MPI version.

The error is:
Code: [Select]
SEVERE ERROR from node:   0 parallel densao, flag.eq.2 untested

I manually setup the control file through define to write this input:
Code: [Select]
$title
sctest
$symmetry c1
$coord    file=coord
$optimize
 internal   off
 redundant  off
 cartesian  on
$atoms
    basis =x2c-QZVPPall
$basis    file=basis
$ecp    file=basis
$uhfmo_alpha   file=alpha
$uhfmo_beta   file=beta
$uhf
$alpha shells
 a       1-60                                   ( 1 )
$beta shells
 a       1-59                                   ( 1 )
$scfiterlimit      300
$scfdamp   start=1.000  step=0.050  min=0.100
$scfdump
$scfdiis
$maxcor    500 MiB  per_core
$energy    file=energy
$grad    file=gradient
$rx2c
$finnuc
$dft
    functional   b3-lyp
    gridsize   5a
$scfconv   9
$scforbitalshift  closedshell=.05
$rundimensions
   natoms=6
$last step     define
$end

To then run a script which launches the calculations:
Code: [Select]
#!/bin/tcsh
#$ -S /bin/csh
#$ -N sctest
#$ -pe smp 16
#$ -cwd

#Set Path
set dir = $cwd

source /etc/profile.d/modules.csh
module load turbomole/7.7_mpi
setenv PARA_ARCH MPI
setenv PARNODES 16
setenv OMP_NUM_THREADS 1

cp * $TMPDIR/
cd $TMPDIR

#Execute job
nohup dscf -np 16 > output

cp -pr * $dir

/aplic/turbomole/turbomole-7.7/TURBOMOLE/scripts/gtensprep.sh -msnso -hfc

cd x/
nohup ridft -np 16 > output
cd ../y/
nohup ridft -np 16 > output
cd ../z/
nohup ridft -np 16 > output

cd ../
cp -pr * $dir

exit

The script seems to run successfully up until the first ridft, the dscf manages to compute it correctly, but another message from the outputs was declaring 'Missing spinor shell occupation number declaration!' due to the fact that no spinor.i nor spinor.r files were created during the process is what I'm guessing but I don't know why.

Any help would be greatly appreciated. :D

Best regards!

                     Joan

uwe

  • Global Moderator
  • Hero Member
  • *****
  • Posts: 560
  • Karma: +0/-0
Re: Severe Error during Ridft HFC Calculations
« Reply #1 on: September 25, 2023, 07:14:04 PM »
Hello,

you are running Turbomole in an SMP environment, not using more than one node. So it is usually more efficient not to use the MPI version but the SMP one.

1. Please set in your tcsh script instead of:

Code: [Select]
module load turbomole/7.7_mpi
setenv PARA_ARCH MPI
setenv PARNODES 16
setenv OMP_NUM_THREADS 1

this here:

Code: [Select]
module load turbomole/7.7_mpi
setenv PARA_ARCH SMP
setenv PARNODES 16
source $TURBODIR/Config_turbo_env.csh

This will start the SMP versions of the Turbomole modules instead of the MPI ones.

2. Next: Your input

Please add
Code: [Select]
$rij
to the control file. Two-component calculations are all done with the module ridft (not dscf), thus $rij is required in the control file.

3. Finally replace the call

Code: [Select]
nohup dscf -np 16 > output
by

Code: [Select]
ridft > output
the -np option can be skipped as you already set $PARNODES to the number of cores you want to use for the calculation. nohup is not required within a script.

Hope this helps




jcardol

  • Newbie
  • *
  • Posts: 3
  • Karma: +0/-0
Re: Severe Error during Ridft HFC Calculations
« Reply #2 on: September 27, 2023, 12:41:52 AM »
Hi!

Thanks for your advice and insights Uwe  :D,

1. I've changed the tcsh script code for the one you have written.

2. I follow the Turbomole 7.7 User Guide (Section 18.1) where it starts with a UHF/UKS calculation employing the X2C ($rx2c) and finite nucleus model ($finnuc). So I ran a dscf and afterwards through the use of gtensprep.sh a ridft calc was prepared and sent for each vector (x,y and z), so I guess these would be two consecutive ridft calculations then?

3. I've implemented your cleaner code changes to the script as well.


I've run a test with your changes in the script and works perfectly.
Thank you for your time! :D

Joan