mirror of
https://github.com/QuantumPackage/qp2.git
synced 2024-12-21 11:03:29 +01:00
added all possible angular grid points as possible choices
This commit is contained in:
parent
0850fa6f72
commit
28605c76b9
@ -39,75 +39,6 @@ BEGIN_PROVIDER [integer, n_points_grid_per_atom]
|
|||||||
END_DOC
|
END_DOC
|
||||||
n_points_grid_per_atom = n_points_integration_angular * n_points_radial_grid
|
n_points_grid_per_atom = n_points_integration_angular * n_points_radial_grid
|
||||||
|
|
||||||
END_PROVIDER
|
|
||||||
|
|
||||||
BEGIN_PROVIDER [double precision, angular_quadrature_points, (n_points_integration_angular,3) ]
|
|
||||||
&BEGIN_PROVIDER [double precision, weights_angular_points, (n_points_integration_angular)]
|
|
||||||
implicit none
|
|
||||||
BEGIN_DOC
|
|
||||||
! weights and grid points for the integration on the angular variables on
|
|
||||||
! the unit sphere centered on (0,0,0)
|
|
||||||
! According to the LEBEDEV scheme
|
|
||||||
END_DOC
|
|
||||||
|
|
||||||
include 'constants.include.F'
|
|
||||||
integer :: i
|
|
||||||
double precision :: accu
|
|
||||||
double precision :: degre_rad
|
|
||||||
double precision :: x(n_points_integration_angular)
|
|
||||||
double precision :: y(n_points_integration_angular)
|
|
||||||
double precision :: z(n_points_integration_angular)
|
|
||||||
double precision :: w(n_points_integration_angular)
|
|
||||||
|
|
||||||
degre_rad = pi/180.d0
|
|
||||||
accu = 0.d0
|
|
||||||
|
|
||||||
select case (n_points_integration_angular)
|
|
||||||
|
|
||||||
case (5810)
|
|
||||||
call LD5810(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (2030)
|
|
||||||
call LD2030(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (1202)
|
|
||||||
call LD1202(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (0590)
|
|
||||||
call LD0590(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (302)
|
|
||||||
call LD0302(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (266)
|
|
||||||
call LD0266(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (194)
|
|
||||||
call LD0194(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (170)
|
|
||||||
call LD0170(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (74)
|
|
||||||
call LD0074(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case (50)
|
|
||||||
call LD0050(X,Y,Z,W,n_points_integration_angular)
|
|
||||||
|
|
||||||
case default
|
|
||||||
print *, irp_here//': wrong n_points_integration_angular. Expected:'
|
|
||||||
print *, '[ 50 | 74 | 170 | 194 | 266 | 302 | 590 | 1202 | 2030 | 5810 ]'
|
|
||||||
stop -1
|
|
||||||
end select
|
|
||||||
|
|
||||||
do i = 1, n_points_integration_angular
|
|
||||||
angular_quadrature_points(i,1) = x(i)
|
|
||||||
angular_quadrature_points(i,2) = y(i)
|
|
||||||
angular_quadrature_points(i,3) = z(i)
|
|
||||||
weights_angular_points(i) = w(i) * 4.d0 * pi
|
|
||||||
accu += w(i)
|
|
||||||
enddo
|
|
||||||
|
|
||||||
END_PROVIDER
|
END_PROVIDER
|
||||||
|
|
||||||
BEGIN_PROVIDER [integer , m_knowles]
|
BEGIN_PROVIDER [integer , m_knowles]
|
||||||
|
Loading…
Reference in New Issue
Block a user