Contact    Internal   Webmail

  INESC MN

 Microsistemas & Nanotecnologias

 

 

 

HOME

 

RESEARCH

 

PEOPLE

 

INFRASTRUCTURE 

 

SERVICES

 

PUBLICATIONS

 

NEWS/POSITIONS

 

SEMINARS

 

 

 

 

 

 

 

 

 

Development of New Code

Introduction

All the simulation codes used in the group were written or adapted by J.L.Martins or his students and close collaborators. Many groups throughout the world also use them. Writing new codes, improving or maintaining the old codes is an ongoing effort. There are four major codes:

1) Electronic structure of atoms with pseudopotential generation;

2) Electronic structure of molecules with a gaussian basis set;

3) Electronic structure of crystals with a plane-wave basis set;

4) Micromagnetic simulation with finite differences.

The pseudopotential generation code is very stable, and in recent years it has only been improved in the interface with the user, plotting, analysis and test of the results, new options. The program is available on the web http://bohr.inesc.pt/~jlm/pseudo.html. It generates the "Troullier-Martins" pseudopotential (Phys. Rev. B 43, 1993, 1991). From the citations to that article it can be seen that it is widely used and therefore it is important to maintain a bug-free easy to use code. A graphical interface to the program will be available soon.

The molecular program is relatively old (J.Chem.Phys. 78, 5646, 1983), in fact it was one of the first density functional programs for molecules. Today there are commercial and academic packages using the same methods which were developed by large groups, so it is only modified when a new problem demands it. That occurred in 1999, when we used that old code as a basis of a first principles Monte Carlo code. Statistical mechanical simulations are traditionally done with molecular dynamics, requiring the calculation of forces on ionic cores, or Monte-Carlo, requiring only the calculation of the total energy. The trade-off is that a Monte-Carlo simulation requires the calculation of a much larger number atomic configurations. For empirical methods both methods were competitive, however in first principles methods the calculations of forces is a minor effort compared with the calculation of the total energy, and therefore we are only aware of first principles molecular-dynamics simulations (pioneered by Car and Parrinello). In a molecular code with a gaussian basis set, most of the computing time is spent calculating the so-called molecular integrals. In a typical Monte-Carlo simulation only one atom is moved from one configuration to the next. In that case most integrals remain the same, more precisely for an N-atom molecule only 1/N of the integrals change value. We used that property, plus an efficient paralelization of the calculation of the molecular integrals to develop a first-principles density-functional Monte-Carlo simulation code that can be used for large molecules. As far as we know, it is the first code of that kind.

The plane-wave code for crystals (Phys.Rev. B37, 6134 (1988)) has been the most important in the past research. We were the first to present principles molecular-dynamics simulations without using the Car-Parrinello algorithm (Solid State Commun. 78, 831, 1991), and were the first to do a first principles simulation with an optimization of the shape of the crystal cell (Phys. Rev. Lett. 70, 3947, 1993). Recent developments include a new algorithm to optimize the cell shape. In 1999 the code suffered a major upgrade with the addition of new options (for example the GGA density functional), consolidation of non-compatible versions developed by close collaborators, and improvements in computational speed. The new version is now being used for research, and once we document the code, we plan to make it available on the web (the old version was distributed on a informal basis only).

In 1998 a micromagnetics code was written from scratch. It uses a finite differences method to solve the magnetic equations and a molecular dynamics simulated annealing to minimize the magnetic energy. It is quite fast and we are testing it on the "standard problems". We missed by a week being the first to publish a solution to the "third problem". A new version of the code has been completed recently. Paralelization is under way.

For more information on this research topic, contact Prof. José Luís Martins.

 

Main Results

 


Copyright © 2010 INESC MN; all rights reserved · Last update: 29 June 2010 ·