# 8 Testing Mrcc

Once you have successfully installed Mrcc, you may wish to test the correctness of the installation. For that purpose numerous test jobs are at your disposal. The corresponding input files can be found in the MTEST directory created at the installation, where a test script, mtest, is also available. Your only task is to change to the MTEST directory and execute the mtest script. (Please do not forget to add the directory where the Mrcc executables are located to your PATH environmental variable.) The test jobs will be automatically executed and you will receive feedback about the results of the tests. The corresponding output files will be left in the MTEST directory, and you can also check them. If all the tests complete successfully, your installation is correct with high probability.

The execution of the test jobs will take for a couple of hours. If you want to run the test on another machine, e.g., on a node of a cluster, you should copy the entire MTEST directory to that machine and start the mtest script there.

Please note that there are some test jobs that allocate a small amount of memory to test the out-of-core algorithms of the program (MINP_*smallmem). If you run these test jobs with OpenMP-parallelized executables (i.e., the build.mrcc script was run with the -pOMP switch) on more than two cores, some of them will fail since the memory requirement for OpenMP-parallel runs grows with the number of cores. In this case the failure of these tests does not indicate a problem with your installation.

We note that currently the mtest script does not support MPI. The MPI jobs stop at some point and require the manual execution of mrcc with mpirun (see Sect. 9.3). The mtest script is not prepared for such jobs and will return with an error message. To test your installation you should collect a couple of such jobs and run them manually.

If you do not use Libxc, the test jobs requiring the library (jobs *Libxc*) will fail. You can ignore this or, to avoid it, delete files *Libxc* from the MTEST directory before running the mtest script.

Please also note that you can also create your own test jobs, e.g., if you modify the code, compile the program with new compiler versions, or use unusual combination of keywords. To that end you should calculate a reliable energy for your test job (e.g., using a stable compiler version) include the test keyword and the calculated energy to the MINP file (see the description of the keyword for more details), and copy the MINP file to the MTEST directory renaming it as MINP_$<$job_name$>$. Then the new job will be automatically executed when the mtest script is invoked next time.