Molcas Frequently Asked Questions


  1. Payment, VAT nr etc.
  2. I have placed an order, when I will receive a password for download?
  3. I have a molcas license. Who is allowed to use the code?
  4. May I modify the code? May I make my modifications available?
  5. What kind of support can I get/expect?
  6. Why (and how often) should I pay for updates?
  7. What should I do with the license key file?
  8. How do I get patches for Molcas?
  9. Running under Linux
  10. Running under Mac OS
  11. Running under MS Windows
  12. How to tranfer MOLCAS to another location?
  13. What kind of information should I provide in a bug report?
  14. How to compile MOLCAS with optimized blas library?
  15. How do I choose my active space in a CASSCF/CASPT2 calculation?
  16. How do I obtain good starting orbitals for an open shell calculation?
  17. Which orbitals should I correlate in my calculations?
  1. Payment, VAT nr etc.
    The access to the Molcas program package is normally sent electronically in a day or two after we have received the signed original orderform in original (a faxed copy will not due). Later as a separate mail, you will receive an invoice from our financial administrative department. Unfortunately, this normally takes a bit longer.

    Unfortunately, there is no account for Molcas only and therefore the payment has to be done through Lund University. This makes it very important for you to specify that the payment is for Molcas and from whom it is sent (including the invoice number). Lund University has the VAT number: SE 202100321101 The payment can be done in two different ways:

    1. Bank.
      • Customers within the EU - When paying through a bank account you should include the following:
        SWIFT code: SWED SESS
        IBAN SE75 8000 0890 1192 4358 5123
        Address: Swedbank AB
        SE-105 34 Stockholm, Sweden
        Kst: 156715
        Theoretical Chemistry
        Invoice number ...

      • Customers outside the EU - When paying through a bank account you should include the following:
        SWIFT code: SWED SESS
        account number: 8901-1, 924 358 512-3
        Address: Swedbank AB
        SE-105 34 Stockholm, Sweden
        Kst: 156715
        Theoretical Chemistry
        Invoice number ...

    2. Credit card. (Do NOT send us your credit card number!) You can use Visa or Mastercard for payment. Visit http://luccp.adm.lu.se If the form is in Swedish click on the Brittish flag to get the form in english. Fill out all compulsory fields which are marked with a star. Fill in the name of the credit card holder. For the field "Event" select "Molcas code". The system does not accept the amount which is bigger than 10 000SEK in one transaction. If you have to pay large amount, please split the payment. In field "Remittance information" enter the name on the order form. When the form is filled out click on the "next" button, and verify that the information is correct. If the information is not correct click on the "Back" button and correct the information, otherwise press the "To payment" button. Click on Mastercard or Visa a appropriate and fill out the credit card information and proceed with the payment. Important! You have to fill our order form, and send us signed copyright and license agreement.
  2. I have placed an order, when I will receive a password for download?
    If you are a known MOLCAS user, password will be sent to you as soon as we have received your signed order and copyright forms. New customers may have to wait until payment have been received.
  3. I have a molcas license. Who is allowed to use the code?
    If you have an academic research licence, the members of the research group may use the code on all platforms available to you. The code may not be transferred ot other research groups. A site licence means that all scientists using that site can use the code. The code may then be installed on all computers available at the computer center.
  4. May I modify the code? Howto make my modifications available for other users?
    Yes you may modify the code as you wish. Obviously such modifications are your own responsibility. You may also make your modification available to other users of MOLCAS. The best way to introduce new codes in MOLCAS is to use the "package" concept. If you want to make your modifications or extensions generally available, you can contact the MOLCAS group.
  5. What kind of support can I get/expect?
    If you need support, you can always contact a member of the MOLCAS team. We will do our best to answer your questions and advice you, if we can.
  6. Why (and how often) should I pay for updates?
    When you buy molcas you will get a license that is valid for 1 or 3 years. During this period you will get all updates, including major releases withou any additional cost. When the license expires you need to renew your license to be able to continue to use molcas.
  7. What should I do with the license key file?
    You should get an email with the license key file at about the same time that you get the password to download molcas. After you have unpacked molcas, place the license key in the molcas root directory. We advise you to make a backup copy of this file.
  8. How do I get patches for Molcas?
    Normally, we making an updates for Molcas in the form of Service Packs. Service Pack is a script which updates your copy of Molcas, however, it is possible to get and apply individual patches.
    To download patches for Molcas you start a script called getpatch, by command 'molcas getpatch'. The environment variable $MOLCAS is used to figure out where the installed patches are placed, so please make sure that this points to the correct version, if you have more than one installed. A better way is to start the command from the root directory of the Molcas version you want to patch, since then this will override the definition of $MOLCAS.
    After checking of patch level of your MOLCAS installation all new patches will be downloaded and applied.
    You can also download some developers patches which are not included yet into 'official' list of patches by command: 'molcas getpatch -unsafe'.
    Note that this feature requires Perl 5.003 or higher. Alternatively you can start a command 'molcas getpatch' with a flag -file. Getpatch will produce a file called getpatch.html located in the Molcas root directory. You can transfer this file to another machine and continue from there by opening this file as URL.
    The browser will then download all new patches and place them inside a tar file named update.tar that must be placed in the molcas root directory.
    By untaring this file (tar -xvf update.tar) you will get a number of files with names like 7.N.NNN_xxx.sh.gz and a file with name apply which is a script that you can run to get all downloaded patches applied.
    After this, do not forget to run make again.
  9. Running Molcas under Linux
    Note, that some versions of GNU compiler are not recommended for compiling MOLCAS with optimization level O3. Please, upgrade your compiler to version 3.4.4.
    Also, you can use commercial compilers, such as Intel, NAG, PGI, Absoft, PathScale, SunStudio. The complete list of supported platforms can be found here.
  10. Running Molcas under Mac OS
    Molcas runs now also under Mac OS. However, if you want to use xlf compiler, you must install molcas on case sensitive partition
  11. Running Molcas under MS Windows
    Molcas runs now also under MS Windows. You have to install Cygwin. Note, that there is no support for compilers other than GNU gcc/g77.
  12. How to tranfer MOLCAS to another location?
    To reallocate MOLCAS to another directory or especially to another computer you had to run 'make distclean' first. However, the best way of installation of MOLCAS on a new computer - take an original tar.gz file, unpack it, and apply new patches using 'molcas getpatch' command.

    If you want to make a copy of molcas on the same computer (filesystem) you can use a command: "molcas copy /path_to_new_destination". In this case you will create a copy of molcas files with correct timestamps.

  13. What kind of information should I provide in a bug report?
    Before submitting a bug report, please, check that the error still occurs in the latest available version of MOLCAS. Update your version using 'molcas getpatch'.
    Ideally, your report should include:
    • input files for complete calculation
    • run script to start this calculation (if input file is not written in automolcas format)
    • patch level (the content of $MOLCAS/.molcashome file)
    • file $MOLCAS/Symbols (if you suspect that it might be a platform specific bug)
    • information about the version of OS and compiler
    • output of MOLCAS
  14. How to compile MOLCAS with optimized blas library?
    To compile molcas with an optimized BLAS library, run './configure -setup' command, and answer to questions about location of BLAS library.

    The following instruction can be used if setup fails to determine the installation of BLAS:
    MOLCAS uses a subset of BLAS libraries located in src/blas_util/ and src/essl_util/. However, it is possible to compile molcas with an optimized blas library which could exist on your particular system. One should issue commands molcas uninstall blas_util, molcas uninstall essl_util to remove these directories from the molcas source code, then export XLIB variable to set the location of blas library, e.g. export XLIB="-lblas", and finally reconfigure and build molcas. If the library is in a nonstandard location you may have to issue the command export XLIB="-Lpath_to_lib -lblas". Alternatively, define XLIB in the system specific configuration file.

  15. How do I choose my active space in a CASSCF/CASPT2 calculation?
    There is no unique answer to this question. The major problem is the limitation of the active space to 12-15 orbitals enforced by the method. In most cases this is no problem and the choice of active orbitals is obvious (for example the pi-orbitals in a conjugated system). The answer depends strongly on the problem under consideration. If it is a GS energy surface one should be careful to include all orbitals the occupation number of which may vary considerable along the path(s) followed on the surface. In excited states studies one need to include enough orbitals to describe the excited states. This often means both valence and Rydberg type orbitals.

    In difficult cases it might be advantageous by starting a study with a RASSCF calculation where RAS2 only includes the open shell orbitals (if any), RAS1 the orbitals that can possibly be interesting as active, and RAS3 the corresponding correlating orbitals (often one just chooses all valence orbitals). By allowing 2-4 electrons in RAS3 one can get quite a good description of the near degeneracies. The result can be used to choose an active space for a CASSCF/CASPT2 calculation. Note that this test calculation may have to be performed on several places on an energy surface. In CASSCF calculations one should preferably use the same active space over the whole surface.

  16. How do I obtain good starting orbitals for an open shell calculation?
    If you want to use closed shell SCF orbitals as start orbitals it is normally better to remove electrons until you have a closed shell cation. Doing the opposite, adding electrons until you have a closed shell anion is normally worse. This is due to the fact that if you have more electrons in the system than would physically be possible, the programs tend to try do the physically correct thing, i.e. remove the extra electrons. This is of course not possible with a limited basis set, but the programs try and you get poor convergence. Further, orbitals in an anionic are often too diffuse, whereas Koopmann's theorem tells you that LUMO's from cationic calculations should be good.

    Another way that often is the best is to use fractional occupations in the SCF program. The energy coming out of the program is not interresting, but the orbital shape is often very good.

  17. Which orbitals should I correlate in my calculations?
    This question is easiest to answer by stating which orbitals should NOT be correlated. First, you should NEVER correlate orbitals for which there are no correlating functions in the basis set. For example, the ANO-S and ANO-L basis sets do not contain any functions that correlate the core orbitals, thus those should not be correlated. The reason for this is that you introduce large basis set superposition errors (BSSE) since whatever orbitals there are will yield some slight correlation of the core and this is rather stochastic with respect to the structure of the molecule. If you use a size-extensive method such as CASPT2 or CCSD, you can correlate all electrons, except for the above statement. For methods that are not size extensive such as MRCI, you need to use caution. Up to 10 electron or so is no problem, but as the number of electrons grow, you get ill effects of the lack of size extensivity.