[table of contents] [master index] [comments] [modules] [programs] [variables] [types] [procedures]
MODULE
rpa_mod
PURPOSE
Provides procedures to calculate response/correlation functions
for a homogenous polymer mixture at a specified wavenumber
SOURCE
module rpa_mod use const_mod use chemistry_mod implicit none private public :: S_block ! correlation function matrix for one chain public :: S_chain ! correlation function matrix for one chain public :: S_ideal ! ideal gas correlation function matrix public :: S_inc ! Incompressible correlation function matrix, chi=0 public :: S_rpa ! RPA correlation function matrix, arbitrary chi
FUNCTION
S_block(i_chain, i_block, j_block, q)
PURPOSE
Return dimensionless cross correlation function for blocks
i_block and j_block on a chain of species i_chain at a single
wavenumber q
Convention: S_{ij}(k=0) = N_i N_j, where N_i is the number of i
monomers in the chain of interest.
ARGUMENTS
i_chain - chain species index
i_block - block index
j_block - block index
q - wavenumber
SOURCE
real(long) function S_block(i_chain, i_block, j_block, q) integer, intent(IN) :: i_chain ! chain species index integer, intent(IN) :: i_block, j_block ! block indices real(long), intent(IN) :: q ! wavenumber
SUBROUTINE
S_chain(i_chain, q, S)
PURPOSE
Calculate dimensionless single-chain correlation function.
Use convention such that S_{a,ij}(k=0) = N_{ai}N_{aj}
ARGUMENTS
i_chain - chain species index
q - wavenumber
S(:,:) - Correlation matrix (N_monomer x N_monomer)
SOURCE
subroutine S_chain(i_chain, q, S) integer, intent(IN) :: i_chain ! chain species index real(long), intent(IN) :: q ! wavenumber real(long), intent(OUT) :: S(:,:) ! correlation function
SUBROUTINE
S_ideal
PURPOSE
Calculate correlation function for an ideal gas with compositon
specified in chemistry. Includes contributions of all chain
and solvent species.
Convention: Fuction S_{ij}(k) is the dimensionless function:
S_{ij}(k) = v \int dr e^{ik.r} <\delta c_{i}(r)\delta c_{j}(0)>
where v is monomer reference volume.
ARGUMENTS
q - wavenumber
S(:,:) - Correlation matrix (N_monomer x N_monomer)
SOURCE
subroutine S_ideal(q, S, N)
real(long), intent(IN) :: q ! wavenumber
real(long), intent(OUT) :: S(:,:) ! correlation function
! (N_monomer,N_monomer)
integer, intent(IN) :: N ! physical dimension of S
SUBROUTINE
S_inc
PURPOSE
Calculates RPA correlation function for an incompressible liquid
with the composition specified in chemistry, but chi_{ij}=0.
COMMENT
Uses the convention:
S_{ij}(k) = v \int dr e^{ik.r} <\delta c_{i}(r)\delta c_{j}(0)>
The resulting matrix is singular, due to incompressibility.
ARGUMENTS
q wavenumber
S(:,:) correlation matrix (N_monomer x N_monomer)
N physical dimensions of matrix S
SOURCE
subroutine S_inc(q, S, N)
real(long), intent(IN) :: q ! wavenumber
real(long), intent(OUT) :: S(N,N) ! correlation function matrix
! (N_monomer,N_monomer)
integer, intent(IN) :: N ! physical dimension of S
SUBROUTINE
S_rpa
PURPOSE
Return RPA correlation function for incompressible mixture
specified in chemistry module.
COMMENT
Uses the convention:
S_{ij}(k) = v \int dr e^{ik.r} <\delta c_{i}(r)\delta c_{j}(0)>
The resulting matrix is singular, due to incompressibility
ARGUMENTS
q wavenumber
S(:,:) correlation matrix (N_monomer x N_monomer)
N physical dimensions of matrix S
SOURCE
subroutine S_rpa(q, S, N)
real(long), intent(IN) :: q ! wavenumber
real(long), intent(OUT) :: S(:,:) ! correlation function
! (N_monomer,N_monomer)
integer, intent(IN) :: N ! physical dimension of S