More on memory

One limitation that will be ran into while trying to do realistic CCD calculations is that of memory. The four-indexed two-body matrix elements (TBMEs) and \( t \)-amplitudes have to store a lot of elements, and the size of these arrays can quickly exceed the available memory on a machine. If a calculation wants to use 500 single-particle basis states, then a structure like \( \langle pq\vert v\vert rs\rangle \) will need a length of 500 for each of its four indices, which means it will have \( 500^4 = 625\times 10^8 \) elements. To get a handle on how much memory is used, consider the elements as double-precision floating point type. One double takes up 8 bytes of memory. This specific array would take up \( 8\times 625\times 10^8 \) bytes = \( 5000 \times 10^8 \) bytes = \( 500 \) Gbytes of memory.