6 subroutine a_polar_drhoi_drhoj( n_comp, A_polar_rr )
8 USE eos_variables, ONLY: ncomp, parame, dd_term, qq_term, dq_term
12 integer,
intent(in) :: n_comp
13 real,
dimension(n_comp,n_comp),
intent(out) :: a_polar_rr
18 integer :: dipole_quad
19 real,
allocatable,
dimension(:,:) :: add_rr, aqq_rr, adq_rr
27 if ( sum( parame(1:ncomp,6) ) /= 0.0 ) dipole = 1
28 if ( sum( parame(1:ncomp,7) ) /= 0.0 ) quadrupole = 1
29 if ( dipole == 1 .AND. quadrupole == 1 ) dipole_quad = 1
36 allocate( add_rr(ncomp, ncomp) )
37 if (dd_term ==
'GV')
CALL a_rr_dd_gross_vrabec( n_comp, add_rr )
38 if (dd_term /=
'GV' .AND. dd_term /=
'SF')
write (*,*)
'specify dipole term !' 40 a_polar_rr = a_polar_rr + add_rr
48 if (quadrupole == 1)
then 50 allocate( aqq_rr(ncomp, ncomp) )
51 if (qq_term ==
'JG')
CALL a_rr_qq_gross( n_comp, aqq_rr )
52 if (qq_term /=
'JG' .AND. qq_term /=
'SF')
write (*,*)
'specify quadrupole term !' 54 a_polar_rr = a_polar_rr + aqq_rr
62 if (dipole_quad == 1)
then 64 allocate( adq_rr(ncomp, ncomp) )
65 if (dq_term ==
'VG')
CALL a_rr_dq_vrabec_gross( n_comp, adq_rr )
66 if (dq_term /=
'VG' )
write (*,*)
'specify DQ-cross term !' 68 a_polar_rr = a_polar_rr + adq_rr
73 end subroutine a_polar_drhoi_drhoj
80 subroutine a_rr_dd_gross_vrabec( n_comp, Add_rr )
83 USE eos_variables, ONLY: nc, ncomp, uij, parame, mseg, sig_ij, rho, eta, x, t, dhs
88 integer,
intent(in) :: n_comp
89 real,
dimension(n_comp,n_comp),
INTENT(IN OUT) :: add_rr
92 integer :: i, j, k, l, m, o
94 real :: factor2, factor3, eij
97 real,
allocatable,
dimension(:,:) :: xijfa
98 real,
allocatable,
dimension(:,:,:) :: xijkfa
100 real,
dimension(nc) :: my2dd, z3_r
101 real,
dimension(nc) :: rhoi
102 real,
allocatable,
dimension(:,:) :: idd2
103 real,
allocatable,
dimension(:,:,:) :: idd3
104 real,
allocatable,
dimension(:,:,:) :: idd2_r
105 real,
allocatable,
dimension(:,:,:,:) :: idd3_r
106 real,
allocatable,
dimension(:) :: fdd2_r, fdd3_r, fdd_r
107 real,
allocatable,
dimension(:,:) :: idd2_rkrl
108 real,
allocatable,
dimension(:,:,:) :: idd3_rkrl
109 real :: fdd2_rkrl, fdd3_rkrl
114 if ( uij(i,i) == 0.0 )
write (*,*)
'A_rr_DD_GROSS_VRABEC: do not use dimensionless units' 115 if ( uij(i,i) == 0.0 ) stop
116 my2dd(i) = (parame(i,6))**2 *1.e-49 / (uij(i,i)*kbol*mseg(i)*sig_ij(i,i)**3 *1.e-30)
117 z3_r(i) = pi/6.0 * mseg(i) * dhs(i)**3
124 allocate( xijfa(ncomp,ncomp), xijkfa(ncomp,ncomp,ncomp) )
125 allocate( idd2(ncomp,ncomp), idd2_r(ncomp,ncomp,ncomp) )
126 allocate( idd3(ncomp,ncomp,ncomp), idd3_r(ncomp,ncomp,ncomp,ncomp) )
127 allocate( fdd2_r(ncomp), fdd3_r(ncomp), fdd_r(ncomp) )
128 allocate( idd2_rkrl(ncomp,ncomp), idd3_rkrl(ncomp,ncomp,ncomp) )
130 rhoi( 1:ncomp ) = x(1:ncomp ) * rho
133 factor3= -4.0/3.0*pi*pi
137 xijfa(i,j) = factor2* uij(i,i)*my2dd(i)*sig_ij(i,i)**3 /t &
138 *uij(j,j)*my2dd(j)*sig_ij(j,j)**3 /t / sig_ij(i,j)**3
140 xijkfa(i,j,l)= factor3*uij(i,i)/t*my2dd(i)*sig_ij(i,i)**3 &
141 *uij(j,j)/t*my2dd(j)*sig_ij(j,j)**3 &
142 *uij(l,l)/t*my2dd(l)*sig_ij(l,l)**3 &
143 /sig_ij(i,j)/sig_ij(i,l)/sig_ij(j,l)
151 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 153 eij = (parame(i,3)*parame(j,3))**0.5
154 idd2(i,j) =idd2(i,j) + ( ddp2(i,j,m) + eij/t*ddp4(i,j,m))*z3**m
158 if (parame(l,6) /= 0.0)
then 160 idd3(i,j,l) = idd3(i,j,l) + ddp3(i,j,l,m)*z3**m
172 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 173 fdd2 = fdd2 + rhoi(i)*rhoi(j)*xijfa(i,j) * idd2(i,j)
175 if (parame(l,6) /= 0.0)
then 176 fdd3 = fdd3 + rhoi(i)*rhoi(j)*rhoi(l)*xijkfa(i,j,l) * idd3(i,j,l)
193 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 195 z3_m =
REAL(m) * z3**(m-1) * z3_r(k)
196 eij = (parame(i,3)*parame(j,3))**0.5
197 idd2_r(k,i,j) = idd2_r(k,i,j)+ ( ddp2(i,j,m) + eij/t * ddp4(i,j,m) ) * z3_m
200 idd3_r(k,i,j,o) = 0.0
201 if (parame(o,6) /= 0.0)
then 203 idd3_r(k,i,j,o)=idd3_r(k,i,j,o) + ddp3(i,j,o,m)*
REAL(m)*z3**(m-1)*z3_r(k)
214 fdd2_r(k) = fdd2_r(k) + 2.0*rhoi(i)*xijfa(i,k) * idd2(i,k)
216 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 217 fdd2_r(k) = fdd2_r(k) + rhoi(i)*rhoi(j)*xijfa(i,j) * idd2_r(k,i,j)
218 fdd3_r(k) = fdd3_r(k) + 3.0 * rhoi(i)*rhoi(j)*xijkfa(i,j,k) * idd3(i,j,k)
220 if (parame(o,6) /= 0.0)
then 221 fdd3_r(k) =fdd3_r(k) + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * idd3_r(k,i,j,o)
228 if (fdd2 < -1.e-50 .AND. fdd3 /= 0.0 .AND. fdd2_r(k) /= 0.0 .AND. fdd3_r(k) /= 0.0)
then 230 fdd_r(k) = fdd2* (fdd2*fdd2_r(k) - 2.0*fdd3*fdd2_r(k) + fdd2*fdd3_r(k)) / (fdd2-fdd3)**2
246 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 248 z3_m =
REAL(m-1) *
REAL(m) * z3**(m-2) * z3_r(k) * z3_r(l)
249 eij = (parame(i,3)*parame(j,3))**0.5
250 idd2_rkrl(i,j) = idd2_rkrl(i,j)+ ( ddp2(i,j,m) + eij/t * ddp4(i,j,m) ) * z3_m
253 idd3_rkrl(i,j,o) = 0.0
254 if (parame(o,6) /= 0.0)
then 256 idd3_rkrl(i,j,o)=idd3_rkrl(i,j,o) + ddp3(i,j,o,m)*
REAL(m-1)*
REAL(m)*z3**(m-2)*z3_r(k)*z3_r(l)
264 fdd2_rkrl = 2.0 * xijfa(k,l) * idd2(k,l)
267 fdd2_rkrl = fdd2_rkrl + 2.0 * rhoi(i) * ( xijfa(i,k) * idd2_r(l,i,k) + xijfa(i,l) * idd2_r(k,i,l))
268 fdd3_rkrl = fdd3_rkrl + 6.0 * rhoi(i) * xijkfa(i,k,l) * idd3(i,k,l)
270 if (parame(i,6) /= 0.0 .AND. parame(j,6) /= 0.0)
then 271 fdd2_rkrl = fdd2_rkrl + rhoi(i)*rhoi(j)*xijfa(i,j) * idd2_rkrl(i,j)
272 fdd3_rkrl = fdd3_rkrl + 3.0 * rhoi(i)*rhoi(j)* ( xijkfa(i,j,k) * idd3_r(l,i,j,k) &
273 + xijkfa(i,j,l) * idd3_r(k,i,j,l) )
275 if (parame(o,6) /= 0.0)
then 276 fdd3_rkrl =fdd3_rkrl + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * idd3_rkrl(i,j,o)
284 add_rr(k,l) = ( 2.0*fdd2*fdd2_r(l)*( fdd2_r(k) + fdd3_r(k) ) + fdd2*fdd2*( fdd2_rkrl + fdd3_rkrl ) &
285 -2.0*( fdd2_r(k)*fdd2_r(l)*fdd3 + fdd2*fdd3_r(l)*fdd2_r(k) + fdd2*fdd3*fdd2_rkrl ) ) &
286 / ( fdd2 - fdd3 )**2 &
287 + fdd_r(k) * 2.0 * ( fdd3_r(l) - fdd2_r(l) ) / ( fdd2 - fdd3 )
292 deallocate( xijfa, xijkfa, idd2, idd2_r, idd3, idd3_r, fdd2_r, fdd3_r, fdd_r, idd2_rkrl, idd3_rkrl )
294 end subroutine a_rr_dd_gross_vrabec
303 subroutine a_rr_qq_gross( n_comp, Aqq_rr )
306 USE eos_variables, ONLY: nc, ncomp, uij, parame, mseg, sig_ij, rho, eta, x, t, dhs
311 integer,
intent(in) :: n_comp
312 real,
dimension(n_comp,n_comp),
INTENT(IN OUT) :: aqq_rr
315 integer :: i, j, k, l, m, o
317 real :: factor2, factor3, eij
320 real,
allocatable,
dimension(:,:) :: xijfa
321 real,
allocatable,
dimension(:,:,:) :: xijkfa
323 real,
dimension(nc) :: qq2, z3_r
324 real,
dimension(nc) :: rhoi
325 real,
allocatable,
dimension(:,:) :: iqq2
326 real,
allocatable,
dimension(:,:,:) :: iqq3
327 real,
allocatable,
dimension(:,:,:) :: iqq2_r
328 real,
allocatable,
dimension(:,:,:,:) :: iqq3_r
329 real,
allocatable,
dimension(:) :: fqq2_r, fqq3_r, fqq_r
330 real,
allocatable,
dimension(:,:) :: iqq2_rkrl
331 real,
allocatable,
dimension(:,:,:) :: iqq3_rkrl
332 real :: fqq2_rkrl, fqq3_rkrl
337 if ( uij(i,i) == 0.0 )
write (*,*)
'A_rr_QQ_GROSS: do not use dimensionless units' 338 if ( uij(i,i) == 0.0 ) stop
339 qq2(i) = (parame(i,7))**2 *1.e-69 / (uij(i,i)*kbol*mseg(i)*sig_ij(i,i)**5 *1.e-50)
340 z3_r(i) = pi/6.0 * mseg(i) * dhs(i)**3
347 allocate( xijfa(ncomp,ncomp), xijkfa(ncomp,ncomp,ncomp) )
348 allocate( iqq2(ncomp,ncomp), iqq2_r(ncomp,ncomp,ncomp) )
349 allocate( iqq3(ncomp,ncomp,ncomp), iqq3_r(ncomp,ncomp,ncomp,ncomp) )
350 allocate( fqq2_r(ncomp), fqq3_r(ncomp), fqq_r(ncomp) )
351 allocate( iqq2_rkrl(ncomp,ncomp), iqq3_rkrl(ncomp,ncomp,ncomp) )
353 rhoi( 1:ncomp ) = x(1:ncomp ) * rho
355 factor2= -9.0/16.0*pi
356 factor3= 9.0/16.0*pi**2
360 xijfa(i,j) = factor2* uij(i,i)*qq2(i)*sig_ij(i,i)**5 /t &
361 *uij(j,j)*qq2(j)*sig_ij(j,j)**5 /t / sig_ij(i,j)**7
363 xijkfa(i,j,l)= factor3*uij(i,i)/t*qq2(i)*sig_ij(i,i)**5 &
364 *uij(j,j)/t*qq2(j)*sig_ij(j,j)**5 &
365 *uij(l,l)/t*qq2(l)*sig_ij(l,l)**5 &
366 / ( sig_ij(i,j)*sig_ij(i,l)*sig_ij(j,l) )**3
374 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 376 eij = (parame(i,3)*parame(j,3))**0.5
377 iqq2(i,j) = iqq2(i,j) + ( qqp2(i,j,m) + eij/t * qqp4(i,j,m) ) * z3**m
381 if (parame(l,7) /= 0.0)
then 383 iqq3(i,j,l) = iqq3(i,j,l) + qqp3(i,j,l,m)*z3**m
395 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 396 fqq2 = fqq2 + rhoi(i)*rhoi(j)*xijfa(i,j) * iqq2(i,j)
398 if (parame(l,7) /= 0.0)
then 399 fqq3 = fqq3 + rhoi(i)*rhoi(j)*rhoi(l)*xijkfa(i,j,l) * iqq3(i,j,l)
416 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 418 z3_m =
REAL(m) * z3**(m-1) * z3_r(k)
419 eij = (parame(i,3)*parame(j,3))**0.5
420 iqq2_r(k,i,j) = iqq2_r(k,i,j)+ ( qqp2(i,j,m) + eij/t * qqp4(i,j,m) ) * z3_m
423 iqq3_r(k,i,j,o) = 0.0
424 if (parame(o,7) /= 0.0)
then 426 iqq3_r(k,i,j,o)=iqq3_r(k,i,j,o) + qqp3(i,j,o,m)*
REAL(m)*z3**(m-1)*z3_r(k)
437 fqq2_r(k) = fqq2_r(k) + 2.0*rhoi(i)*xijfa(i,k) * iqq2(i,k)
439 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 440 fqq2_r(k) = fqq2_r(k) + rhoi(i)*rhoi(j)*xijfa(i,j) * iqq2_r(k,i,j)
441 fqq3_r(k) = fqq3_r(k) + 3.0 * rhoi(i)*rhoi(j)*xijkfa(i,j,k) * iqq3(i,j,k)
443 if (parame(o,7) /= 0.0)
then 444 fqq3_r(k) =fqq3_r(k) + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * iqq3_r(k,i,j,o)
451 if (fqq2 < -1.e-50 .AND. fqq3 /= 0.0 .AND. fqq2_r(k) /= 0.0 .AND. fqq3_r(k) /= 0.0)
then 453 fqq_r(k) = fqq2* (fqq2*fqq2_r(k) - 2.0*fqq3*fqq2_r(k) + fqq2*fqq3_r(k)) / (fqq2-fqq3)**2
469 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 471 z3_m =
REAL(m-1) *
REAL(m) * z3**(m-2) * z3_r(k) * z3_r(l)
472 eij = (parame(i,3)*parame(j,3))**0.5
473 iqq2_rkrl(i,j) = iqq2_rkrl(i,j)+ ( qqp2(i,j,m) + eij/t * qqp4(i,j,m) ) * z3_m
476 iqq3_rkrl(i,j,o) = 0.0
477 if (parame(o,7) /= 0.0)
then 479 iqq3_rkrl(i,j,o)=iqq3_rkrl(i,j,o) + qqp3(i,j,o,m)*
REAL(m-1)*
REAL(m)*z3**(m-2)*z3_r(k)*z3_r(l)
487 fqq2_rkrl = 2.0 * xijfa(k,l) * iqq2(k,l)
490 fqq2_rkrl = fqq2_rkrl + 2.0 * rhoi(i) * ( xijfa(i,k) * iqq2_r(l,i,k) + xijfa(i,l) * iqq2_r(k,i,l))
491 fqq3_rkrl = fqq3_rkrl + 6.0 * rhoi(i) * xijkfa(i,k,l) * iqq3(i,k,l)
493 if (parame(i,7) /= 0.0 .AND. parame(j,7) /= 0.0)
then 494 fqq2_rkrl = fqq2_rkrl + rhoi(i)*rhoi(j)*xijfa(i,j) * iqq2_rkrl(i,j)
495 fqq3_rkrl = fqq3_rkrl + 3.0 * rhoi(i)*rhoi(j)* ( xijkfa(i,j,k) * iqq3_r(l,i,j,k) &
496 + xijkfa(i,j,l) * iqq3_r(k,i,j,l) )
498 if (parame(o,7) /= 0.0)
then 499 fqq3_rkrl =fqq3_rkrl + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * iqq3_rkrl(i,j,o)
507 aqq_rr(k,l) = ( 2.0*fqq2*fqq2_r(l)*( fqq2_r(k) + fqq3_r(k) ) + fqq2*fqq2*( fqq2_rkrl + fqq3_rkrl ) &
508 -2.0*( fqq2_r(k)*fqq2_r(l)*fqq3 + fqq2*fqq3_r(l)*fqq2_r(k) + fqq2*fqq3*fqq2_rkrl ) ) &
509 / ( fqq2 - fqq3 )**2 &
510 + fqq_r(k) * 2.0 * ( fqq3_r(l) - fqq2_r(l) ) / ( fqq2 - fqq3 )
515 deallocate( xijfa, xijkfa, iqq2, iqq2_r, iqq3, iqq3_r, fqq2_r, fqq3_r, fqq_r, iqq2_rkrl, iqq3_rkrl )
517 end subroutine a_rr_qq_gross
531 subroutine a_rr_dq_vrabec_gross( n_comp, Adq_rr )
534 USE eos_variables, ONLY: nc, ncomp, uij, parame, mseg, sig_ij, rho, eta, x, t, dhs
539 integer,
intent(in) :: n_comp
540 real,
dimension(n_comp,n_comp),
INTENT(IN OUT) :: adq_rr
543 integer :: i, j, k, l, m, o
545 real :: factor2, factor3, eij
548 real,
allocatable,
dimension(:,:) :: xijfa
549 real,
allocatable,
dimension(:,:,:) :: xijkfa
552 real,
dimension(nc) :: z3_r
553 real,
dimension(nc) :: my2dd, myfac, qq2, q_fac
554 real,
dimension(nc) :: rhoi
555 real,
allocatable,
dimension(:,:) :: idq2
556 real,
allocatable,
dimension(:,:,:) :: idq3
557 real,
allocatable,
dimension(:,:,:) :: idq2_r
558 real,
allocatable,
dimension(:,:,:,:) :: idq3_r
559 real,
allocatable,
dimension(:) :: fdq2_r, fdq3_r, fdq_r
560 real,
allocatable,
dimension(:,:) :: idq2_rkrl
561 real,
allocatable,
dimension(:,:,:) :: idq3_rkrl
562 real :: fdq2_rkrl, fdq3_rkrl
567 if ( uij(i,i) == 0.0 )
write (*,*)
'A_rr_DQ_GROSS: do not use dimensionless units' 568 if ( uij(i,i) == 0.0 ) stop
569 my2dd(i) = (parame(i,6))**2 *1.e-49 / (uij(i,i)*kbol*mseg(i)*sig_ij(i,i)**3 *1.e-30)
570 myfac(i) = parame(i,3)/t*parame(i,2)**4 *my2dd(i)
571 qq2(i) = (parame(i,7))**2 *1.e-69 / (uij(i,i)*kbol*mseg(i)*sig_ij(i,i)**5 *1.e-50)
572 q_fac(i) = parame(i,3)/t*parame(i,2)**4 *qq2(i)
573 z3_r(i) = pi/6.0 * mseg(i) * dhs(i)**3
580 allocate( xijfa(ncomp,ncomp), xijkfa(ncomp,ncomp,ncomp) )
581 allocate( idq2(ncomp,ncomp), idq2_r(ncomp,ncomp,ncomp) )
582 allocate( idq3(ncomp,ncomp,ncomp), idq3_r(ncomp,ncomp,ncomp,ncomp) )
583 allocate( fdq2_r(ncomp), fdq3_r(ncomp), fdq_r(ncomp) )
584 allocate( idq2_rkrl(ncomp,ncomp), idq3_rkrl(ncomp,ncomp,ncomp) )
586 rhoi( 1:ncomp ) = x(1:ncomp ) * rho
588 factor2 = -9.0/4.0*pi
593 xijfa(i,j) = factor2* myfac(i) * q_fac(j) /sig_ij(i,j)**5
595 xijkfa(i,j,l)= factor3*( myfac(i)*q_fac(j)*myfac(l) + myfac(i)*q_fac(j)*q_fac(l)*1.193735 ) &
596 / (sig_ij(i,j)*sig_ij(i,l)*sig_ij(j,l))**2
605 eij = (parame(i,3)*parame(j,3))**0.5
606 idq2(i,j) = idq2(i,j) + ( dqp2(i,j,m) + eij/t * dqp4(i,j,m) ) * z3**m
611 idq3(i,j,l) = idq3(i,j,l) + dqp3(i,j,l,m)*z3**m
621 fdq2 = fdq2 + rhoi(i)*rhoi(j)*xijfa(i,j) * idq2(i,j)
623 fdq3 = fdq3 + rhoi(i)*rhoi(j)*rhoi(l)*xijkfa(i,j,l) * idq3(i,j,l)
639 z3_m =
REAL(m) * z3**(m-1) * z3_r(k)
640 eij = (parame(i,3)*parame(j,3))**0.5
641 idq2_r(k,i,j) = idq2_r(k,i,j)+ ( dqp2(i,j,m) + eij/t * dqp4(i,j,m) ) * z3_m
644 idq3_r(k,i,j,o) = 0.0
646 idq3_r(k,i,j,o)=idq3_r(k,i,j,o) + dqp3(i,j,o,m)*
REAL(m)*z3**(m-1)*z3_r(k)
657 fdq2_r(k) = fdq2_r(k) +rhoi(i)*( xijfa(i,k)+xijfa(k,i) ) *idq2(i,k)
659 fdq2_r(k) = fdq2_r(k) + rhoi(i)*rhoi(j)*xijfa(i,j) * idq2_r(k,i,j)
665 fdq3_r(k) = fdq3_r(k) + rhoi(i)*rhoi(j)* (xijkfa(i,j,k)+xijkfa(i,k,j)+xijkfa(k,i,j)) *idq3(i,j,k)
667 fdq3_r(k) =fdq3_r(k) + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * idq3_r(k,i,j,o)
672 if (fdq2 < -1.e-50 .AND. fdq3 /= 0.0 .AND. fdq2_r(k) /= 0.0 .AND. fdq3_r(k) /= 0.0)
then 674 fdq_r(k) = fdq2* (fdq2*fdq2_r(k) - 2.0*fdq3*fdq2_r(k) + fdq2*fdq3_r(k)) / (fdq2-fdq3)**2
691 z3_m =
REAL(m-1) *
REAL(m) * z3**(m-2) * z3_r(k) * z3_r(l)
692 eij = (parame(i,3)*parame(j,3))**0.5
693 idq2_rkrl(i,j) = idq2_rkrl(i,j)+ ( dqp2(i,j,m) + eij/t * dqp4(i,j,m) ) * z3_m
696 idq3_rkrl(i,j,o) = 0.0
698 idq3_rkrl(i,j,o)=idq3_rkrl(i,j,o) + dqp3(i,j,o,m)*
REAL(m-1)*
REAL(m)*z3**(m-2)*z3_r(k)*z3_r(l)
706 fdq2_rkrl = ( xijfa(l,k)+xijfa(k,l) ) * idq2(k,l)
710 fdq2_rkrl = fdq2_rkrl + rhoi(i) * ( ( xijfa(i,k)+xijfa(k,i) ) * idq2_r(l,i,k) &
711 + ( xijfa(i,l)+xijfa(l,i) ) * idq2_r(k,i,l) )
712 fdq3_rkrl = fdq3_rkrl + rhoi(i) * ( xijkfa(i,l,k)+xijkfa(i,k,l)+xijkfa(l,i,k) &
713 +xijkfa(k,i,l)+xijkfa(l,k,i)+xijkfa(k,l,i) ) * idq3(i,k,l)
715 fdq2_rkrl = fdq2_rkrl + rhoi(i)*rhoi(j)*xijfa(i,j) * idq2_rkrl(i,j)
716 fdq3_rkrl = fdq3_rkrl + rhoi(i)*rhoi(j)*( (xijkfa(i,j,k)+xijkfa(i,k,j)+xijkfa(k,i,j)) *idq3_r(l,i,j,k) &
717 + (xijkfa(i,j,l)+xijkfa(i,l,j)+xijkfa(l,i,j)) *idq3_r(k,i,j,l) )
719 fdq3_rkrl =fdq3_rkrl + rhoi(i)*rhoi(j)*rhoi(o)*xijkfa(i,j,o) * idq3_rkrl(i,j,o)
724 adq_rr(k,l) = ( 2.0*fdq2*fdq2_r(l)*( fdq2_r(k) + fdq3_r(k) ) + fdq2*fdq2*( fdq2_rkrl + fdq3_rkrl ) &
725 -2.0*( fdq2_r(k)*fdq2_r(l)*fdq3 + fdq2*fdq3_r(l)*fdq2_r(k) + fdq2*fdq3*fdq2_rkrl ) ) &
726 / ( fdq2 - fdq3 )**2 &
727 + fdq_r(k) * 2.0 * ( fdq3_r(l) - fdq2_r(l) ) / ( fdq2 - fdq3 )
732 deallocate( xijfa, xijkfa, idq2, idq2_r, idq3, idq3_r, fdq2_r, fdq3_r, fdq_r, idq2_rkrl, idq3_rkrl )
734 end subroutine a_rr_dq_vrabec_gross
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains constant...
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW This module contains paramete...