Input File Description

Program: pprism.x / PWscf / Quantum ESPRESSO (version: 7.2)

TABLE OF CONTENTS

INTRODUCTION

&INPUTPP

prefix | outdir | filplot | lpunch

&PLOT

iflag | output_format | fileout | interpolation | x0 | nx | lebedev | e1 | x0 | nx | e1 | e2 | x0 | nx | ny | e1 | e2 | e3 | x0 | nx | ny | nz | radius | nx | ny

INTRODUCTION

Purpose of pprism.x: data analysis and plotting for 3D-RISM or Laue-RISM.

The code performs two steps:

(1) reads the output file produced by pw.x, extract and calculate
    solvent's quantities (solvent charge, solvent potential, ...)

(2) writes solvent's quantities to file in a suitable format for
    various types of plotting and various plotting programs

The input data of this program is read from standard input
or from file and has the following format:

NAMELIST &INPUTPP
   containing the variables for step (1), followed by

NAMELIST &PLOT
   containing the variables for step (2)

The two steps can be performed independently. In order to perform
only step (2), leave namelist &INPUTPP blank. In order to perform
only step (1), do not specify namelist &PLOT

Intermediate results from step 1 can be saved to disk (see
variable filplot in &INPUTPP) and later read in step 2.
Since the file with intermediate results is formatted, it
can be safely transferred to a different machine.

All output quantities are in ATOMIC (RYDBERG) UNITS unless
otherwise explicitly specified.
   

Namelist: &INPUTPP

prefix CHARACTER
Default: 'pwscf'
prefix of files saved by program pw.x
         
outdir CHARACTER
Default: value of the ESPRESSO_TMPDIR environment variable if set; current directory ('./') otherwise
directory containing the input data, i.e. the same as in pw.x
         
filplot CHARACTER
Default: "prefix".pprism
file "filplot" contains solvent's quantities
(can be saved for further processing)
         
lpunch LOGICAL
Default: .FALSE.
punch solvent's quantities to fileplot, or not
         

Namelist: &PLOT

iflag INTEGER
Status: REQUIRED
0 1D plot of the spherical average
1 1D plot
2 2D plot
3 3D plot
4 2D polar plot on a sphere
         
output_format INTEGER
Status: REQUIRED
(ignored on 1D plot)

0  = format suitable for gnuplot   (1D)

1  = obsolete format no longer supported

2  = format suitable for plotrho   (2D)

3  = format suitable for XCRYSDEN  (2D or user-supplied 3D region)

4  = obsolete format no longer supported

5  = format suitable for XCRYSDEN  (3D, using entire FFT grid)

6  = format as gaussian cube file  (3D)
     (can be read by many programs)

7  = format suitable for gnuplot   (2D) x, y, f(x,y)
         
fileout CHARACTER
Default: "prefix".3drism
name of the file to which the plot is written
         
interpolation CHARACTER
Default: 'fourier'
Type of interpolation:
            
'fourier'
            
'bspline' :
 (EXPERIMENTAL)
            
IF iflag = 0 :

the following variables are REQUIRED:

x0(i), i=1,3 REAL
3D vector, origin of the line
(in alat units)
               
nx INTEGER
number of radial grids
               
lebedev INTEGER
number of spherical grids of Lebedev quadrature
(only for interpolation = 'bspline')
               
ELSEIF iflag = 1 :

the following variables are REQUIRED:

e1(i), i=1,3 REAL
3D vector which determines the plotting line
(in alat units)
               
x0(i), i=1,3 REAL
3D vector, origin of the line (in alat units)
               
nx INTEGER
number of points in the line:

rho(i) = rho( x0 + e1 * (i-1)/(nx-1) ), i=1, nx
               
ELSEIF iflag = 2 :

the following variables are REQUIRED:

e1(i), e2(i), i=1,3 REAL
3D vectors which determine the plotting plane (in alat units)

BEWARE: e1 and e2 must be orthogonal
               
x0(i), i=1,3 REAL
3D vector, origin of the plane (in alat units)
               
nx, ny INTEGER
Number of points in the plane:

rho(i,j) = rho( x0 + e1 * (i-1)/(nx-1)
           + e2 * (j-1)/(ny-1) ), i=1,nx ; j=1,ny
               
ELSEIF iflag = 3 :

the following variables are OPTIONAL:

e1(i), e2(i), e3(i), i=1,3 REAL
3D vectors which determine the plotting parallelepiped
(if present, must be orthogonal)

e1, e2, and e3 are in alat units !
               
x0(i), i=1,3 REAL
3D vector, origin of the parallelepiped

x0 is in alat units !
               
nx, ny, nz INTEGER
Number of points in the parallelepiped:

rho(i,j,k) = rho( x0 + e1 * (i-1)/nx
                 + e2 * (j-1)/ny
                 + e3 * (k-1)/nz ),
            i = 1, nx ; j = 1, ny ; k = 1, nz

- If output_format = 3 (XCRYSDEN), the above variables
  are used to determine the grid to plot.

- If output_format = 5 (XCRYSDEN), the above variables
  are ignored, the entire FFT grid is written in the
  XCRYSDEN format - works for any crystal axis (VERY FAST)

- If e1, e2, e3, x0 are present,
  and e1, e2, e3 are parallel to xyz
  and parallel to crystal axis, a subset of the FFT
  grid that approximately covers the parallelepiped
  defined by e1, e2, e3, x0, is
  written - untested, might be obsolete

- Otherwise, the required 3D grid is generated from the
  Fourier components (may be VERY slow)
               
ELSEIF iflag = 4 :

the following variables are REQUIRED:

radius REAL
Radius of the sphere (alat units), centered at (0,0,0)
               
nx, ny INTEGER
Number of points in the polar plane:

phi(i)   = 2 pi * (i - 1)/(nx-1), i=1, nx
theta(j) =   pi * (j - 1)/(ny-1), j=1, ny
               
This file has been created by helpdoc utility on Thu Mar 30 12:14:03 CEST 2023.