CALL SGEMM(’T’,’N’,M,N b ,2*N PW ,2,&& scr(1,0),2*N PW ,cr(1,1),2*N PW ,0,fnl(i,1),N p )ENDFourier transform routines are assumed to work on complex data <strong>and</strong> returnalso arrays with complex numbers. The transform of data with the density cutoff isshown in the next two pseudo code sections. It is assumed that a three dimensionalfast Fourier transform routine exists. This is in fact the case on most computerswhere optimized scientific libraries are available. The next two pseudo code segmentsshow the transform of the charge density from Fourier space to real space<strong>and</strong> back.MODULE INVFFTscr(1:N x ,1:N y ,1:N z ) = 0FOR i=1:N Dscr(ipg(1,i),ipg(2,i),ipg(3,i)) = rhog(i)scr(img(1,i),img(2,i),img(3,i)) = CONJG[rhog(i)]ENDCALL FFT3D("INV",scr)n(1:N x ,1:N y ,1:N z ) = REAL[scr(1:N x ,1:N y ,1:N z )]MODULE FWFFTscr(1:N x ,1:N y ,1:N z ) = n(1:N x ,1:N y ,1:N z )CALL FFT3D("FW",scr)FOR i=1:N Drhog(i) = scr(ipg(1,i),ipg(2,i),ipg(3,i))ENDSpecial kernels are presented for the calculation of the density <strong>and</strong> the applicationof the local potential. These are the implementation of the flow charts shown inFig. 8. The operation count of these routines is N b N log[N]. In most applicationsthese routines take most of the computer time. Only for the biggest applicationspossible on todays computers the cubic scaling of the orthogonalization <strong>and</strong> thenonlocal pseudopotential become dominant. A small prefactor <strong>and</strong> the optimizedimplementation of the overlap are the reasons for this.In the Fourier transforms of the wavefunction two properties are used to speedup the calculation. First, because the wavefunctions are real two transforms can bedone at the same time, <strong>and</strong> second, the smaller cutoff of the wavefunctions can beused to avoid some parts of the transforms. The use of the sparsity in the Fouriertransforms is not shown in the following modules. In an actual implementation amask will be generated <strong>and</strong> only transforms allowed by this mask will be executed.Under optimal circumstances a gain of almost a factor of two can be achieved.81
MODULE Densityrho(1:N x ,1:N y ,1:N z ) = 0FOR i=1:N b ,2scr(1:N x ,1:N y ,1:N z ) = 0FOR j=1:N PWscr(ipg(1,i),ipg(2,i),ipg(3,i)) = c(j,i) + I * c(j,i+1)scr(img(1,i),img(2,i),img(3,i)) = CONJG[c(j,i) + I * c(j,i+1)]ENDCALL FFT3D("INV",scr)rho(1:N x ,1:N y ,1:N z ) = rho(1:N x ,1:N y ,1:N z ) + && REAL[scr(1:N x ,1:N y ,1:N z )]**2 + IMAG[scr(1:N x ,1:N y ,1:N z )]**2ENDMODULE VPSIFOR i=1:N b ,2scr(1:N x ,1:N y ,1:N z ) = 0FOR j=1:N PWscr(ipg(1,i),ipg(2,i),ipg(3,i)) = c(j,i) + I * c(j,i+1)scr(img(1,i),img(2,i),img(3,i)) = CONJG[c(j,i) + I * c(j,i+1)]ENDCALL FFT3D("INV",scr)scr(1:N x ,1:N y ,1:N z ) = scr(1:N x ,1:N y ,1:N z ) * && vpot(1:N x ,1:N y ,1:N z )CALL FFT3D("FW",scr)FOR j=1:N PWFP = scr(ipg(1,i),ipg(2,i),ipg(3,i)) && + scr(img(1,i),img(2,i),img(3,i))FM = scr(ipg(1,i),ipg(2,i),ipg(3,i)) && - scr(img(1,i),img(2,i),img(3,i))fc(j,i) = f(i) * CMPLX[REAL[FP],IMAG[FM]]fc(j,i+1) = f(i+1) * CMPLX[IMAG[FP],-REAL[FM]]ENDEND3.9 Parallel Computing3.9.1 Introduction<strong>Ab</strong> <strong>initio</strong> <strong>molecular</strong> <strong>dynamics</strong> calculation need large computer resources. Memory<strong>and</strong> cpu time requirement make it necessary to run projects on the biggest computersavailable. It is exclusively parallel computers that provide these resourcestoday. There are many different types of parallel computers available. Computersdiffer in their memory access system <strong>and</strong> their communication system. Widelydifferent performances are seen for b<strong>and</strong>width <strong>and</strong> latency. In addition, differentprogramming paradigms are supported. In order to have a portable code that canbe used on most of the current computer architectures, CPMD was programmed us-82
- Page 1 and 2:
John von Neumann Institute for Comp
- Page 4:
2500Number200015001000CP PRL 1985AI
- Page 7 and 8:
The goal of this section is to deri
- Page 9:
¡the Newtonian equation of motion
- Page 13 and 14:
Ehrenfest molecular dynamics is cer
- Page 15 and 16:
the Car-Parrinello approach 108 , s
- Page 17:
According to the Car-Parrinello equ
- Page 20 and 21:
Figure 4. (a) Comparison of the x-c
- Page 22 and 23:
Up to this point the entire discuss
- Page 24 and 25:
parameters are those used to repres
- Page 26 and 27:
in terms of a linear combination of
- Page 28 and 29:
structure calculations, see e.g. Re
- Page 30 and 31:
“unbound electrons” dissolved i
- Page 32 and 33: Table 1. Timings in cpu seconds and
- Page 34 and 35: stressed that the energy conservati
- Page 36 and 37: see e.g. the discussion following E
- Page 38 and 39: from a set of one-particle spin orb
- Page 40 and 41: is used, which represents exactly a
- Page 42 and 43: 2.8.3 Generalized Plane WavesAn ext
- Page 44 and 45: disposable parameters that can be o
- Page 46 and 47: The index i runs over all states an
- Page 48 and 49: f(G) are related by three-dimension
- Page 50 and 51: where j l are spherical Bessel func
- Page 52 and 53: andE self = ∑ I1√2πZ 2 IR c I.
- Page 54 and 55: ¢££¤¤¢¢¢n tot (G)inv FTn to
- Page 56 and 57: correlation energyΩ ∑E xc = ε x
- Page 58 and 59: 3.4 Total Energy, Gradients, and St
- Page 60 and 61: 3.4.3 Gradient for Nuclear Position
- Page 62 and 63: The local part of the pseudopotenti
- Page 64 and 65: ¢¢¢¢¢i = 1 . . .N b¢c i (G)¢
- Page 66 and 67: ¢¢¢¢¢c i (G)123g, E self∆V I
- Page 68 and 69: where G c is a free parameter that
- Page 70 and 71: and a matrix form of the Gram-Schmi
- Page 72 and 73: The two sets of equations are coupl
- Page 74 and 75: introducing different masses for di
- Page 76 and 77: The Lagrange multiplier have to be
- Page 78 and 79: Table 3. Relative size of character
- Page 80 and 81: of the G vectors, and only real ope
- Page 84 and 85: ing standard communication librarie
- Page 86 and 87: over processors. All processors sho
- Page 88 and 89: ab = 2 * sdot(2 * N p D ,A(1),1,B(1
- Page 90 and 91: ENDCALL ParallelFFT3D("INV",scr1,sc
- Page 92 and 93: are the improved load-balancing for
- Page 94 and 95: situations where• it is necessary
- Page 96 and 97: espectively), but completely analog
- Page 98 and 99: 4.2.3 Imposing Pressure: BarostatsK
- Page 100 and 101: in the previous section. The isobar
- Page 102 and 103: 4.3.2 Many Excited States: Free Ene
- Page 104 and 105: down the generalization of the Helm
- Page 106 and 107: free energy functional discussed in
- Page 108 and 109: Figure 16. Four patterns of spin de
- Page 110 and 111: and electrons r = {r i } can be wri
- Page 112 and 113: The effective classical partition f
- Page 114 and 115: up e.g. in Refs. 132,37,596,597,428
- Page 116 and 117: The eigenvalues of A when multiplie
- Page 118 and 119: frequency of the electronic degrees
- Page 120 and 121: 5.2 Solids, Polymers, and Materials
- Page 122 and 123: the penetration of the oxidation la
- Page 124 and 125: in terms of their electronic struct
- Page 126 and 127: culations on very accurate global p
- Page 128 and 129: AcknowledgmentsOur knowledge on ab
- Page 130 and 131: 57. M. Bernasconi, G. L. Chiarotti,
- Page 132 and 133:
Superiore di Studi Avanzati (SISSA)
- Page 134 and 135:
175. E. Ermakova, J. Solca, H. Hube
- Page 136 and 137:
244. H. Goldstein, Klassische Mecha
- Page 138 and 139:
313. T. Ikeda, M. Sprik, K. Terakur
- Page 140 and 141:
384. N. A. Marks, D. R. McKenzie, B
- Page 142 and 143:
442. S. Nosé and M. L. Klein, Mol.
- Page 144 and 145:
502. L. M. Ramaniah, M. Bernasconi,
- Page 146 and 147:
562. F. Shimojo, K. Hoshino, and Y.
- Page 148 and 149:
620. A. Tongraar, K. R. Liedl, and
- Page 150:
682. R. M. Wentzcovitch, Phys. Rev.