Dalton: Różnice pomiędzy wersjami

Z KdmWiki
Przejdź do nawigacji Przejdź do wyszukiwania
Linia 1: Linia 1:
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]]</small>
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]]</small>
{{zasobytab|logo=|serwery=[[Nova]]}}  
+
{{aplikacja|nazwa=Dalton|logo=|serwer=[[Nova]]|wersja=2.0}}  
 
'''Dalton''' - oprogramowanie do obliczeń kwantowo-chemicznych. Pozwala wyznaczać właściwości molekularne, w tym optyczne i elektryczne (np. liniowe i nieliniowe polaryzowalności) oraz magnetyczne (NMR, podatność magnetyczna). Udostępnia metody obliczeniowe: Hartree-Focka, wielokonfiguracyjną metodę pola samouzgodnionego, sprzężonych klasterów, teorię funkcjonału gęstości (z metodą Kohna-Shama). Jako bazy funkcyjnej program używa funkcji Gaussa (Gaussian type orbitals, GTO).
 
'''Dalton''' - oprogramowanie do obliczeń kwantowo-chemicznych. Pozwala wyznaczać właściwości molekularne, w tym optyczne i elektryczne (np. liniowe i nieliniowe polaryzowalności) oraz magnetyczne (NMR, podatność magnetyczna). Udostępnia metody obliczeniowe: Hartree-Focka, wielokonfiguracyjną metodę pola samouzgodnionego, sprzężonych klasterów, teorię funkcjonału gęstości (z metodą Kohna-Shama). Jako bazy funkcyjnej program używa funkcji Gaussa (Gaussian type orbitals, GTO).
  
Linia 8: Linia 8:
 
Użytkownicy korzystający z Daltona zobowiązani są do umieszczenia w publikacjach, wykorzystujących wyniki obliczeń wykonanych przy użyciu tego oprogramowania, cytowania następującej treści:  
 
Użytkownicy korzystający z Daltona zobowiązani są do umieszczenia w publikacjach, wykorzystujących wyniki obliczeń wykonanych przy użyciu tego oprogramowania, cytowania następującej treści:  
  
"DALTON, a molecular electronic structure program, Release 2.0 (2005),  
+
: "DALTON, a molecular electronic structure program, Release 2.0 (2005),  
see http://www.kjemi.uio.no/software/dalton/dalton.html "
+
: see http://www.kjemi.uio.no/software/dalton/dalton.html "
  
 
== Korzystanie w WCSS ==
 
== Korzystanie w WCSS ==
Linia 17: Linia 17:
 
  /usr/local/dalton-2.0/bin/dalton.x
 
  /usr/local/dalton-2.0/bin/dalton.x
 
  /usr/local/dalton-2.0/bin/dalpar.x
 
  /usr/local/dalton-2.0/bin/dalpar.x
Obydwie wersje skompilowane są kompilatorem Intela, z użyciem bibliotek MKL. Werja równoległa jest dodatkowo skompilowana z bibliotekami MVAPICH.
+
Obydwie wersje skompilowane są kompilatorem Intela, z użyciem bibliotek MKL. Wersja równoległa jest dodatkowo skompilowana z bibliotekami MVAPICH.
  
 
;Uruchamianie
 
;Uruchamianie
Polecenie do uruchamiania aplikacji:
+
Przygotowanie środowiska i uruchomienie aplikacji:
  /usr/local/dalton-2.0/bin/dalton
+
  > module load dalton
 +
> dalton
  
 
Dalton do obliczeń potrzebuje zbioru instrukcji (plik '''.dal''') oraz danych (plik '''.mol'''). Uruchomienie obliczeń dla przykładowych plików <code>calc.dal</code> i <code>h2o.mol</code>:
 
Dalton do obliczeń potrzebuje zbioru instrukcji (plik '''.dal''') oraz danych (plik '''.mol'''). Uruchomienie obliczeń dla przykładowych plików <code>calc.dal</code> i <code>h2o.mol</code>:
   > /usr/local/dalton-2.0/bin/dalton calc h2o
+
   > dalton calc h2o
  
 
Jeśli obydwa pliki mają tę samą nazwę bazową, np. calc_h2o.dal i calc_h2o.mol, program można uruchomić następująco:
 
Jeśli obydwa pliki mają tę samą nazwę bazową, np. calc_h2o.dal i calc_h2o.mol, program można uruchomić następująco:
  > /usr/local/dalton-2.0/bin/dalton calc_h2o
+
  > dalton calc_h2o
  
 
; Wstawianie do kolejki
 
; Wstawianie do kolejki

Wersja z 14:04, 18 lip 2011

< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie naukowe

Dalton
Serwer Wersja
Nova 2.0
Kontakt
kdm@wcss.pl

Dalton - oprogramowanie do obliczeń kwantowo-chemicznych. Pozwala wyznaczać właściwości molekularne, w tym optyczne i elektryczne (np. liniowe i nieliniowe polaryzowalności) oraz magnetyczne (NMR, podatność magnetyczna). Udostępnia metody obliczeniowe: Hartree-Focka, wielokonfiguracyjną metodę pola samouzgodnionego, sprzężonych klasterów, teorię funkcjonału gęstości (z metodą Kohna-Shama). Jako bazy funkcyjnej program używa funkcji Gaussa (Gaussian type orbitals, GTO).

Licencja

WCSS posiada darmową licencję instytucjonalną na Daltona 2.0.

Użytkownicy korzystający z Daltona zobowiązani są do umieszczenia w publikacjach, wykorzystujących wyniki obliczeń wykonanych przy użyciu tego oprogramowania, cytowania następującej treści:

"DALTON, a molecular electronic structure program, Release 2.0 (2005),
see http://www.kjemi.uio.no/software/dalton/dalton.html "

Korzystanie w WCSS

Dalton w wersji 2.0 jest zainstalowany na klastrze Nova, w katalogu:

/usr/local/dalton-2.0

Dostępna jest wersja sekwencyjna i równoległa programu.

/usr/local/dalton-2.0/bin/dalton.x
/usr/local/dalton-2.0/bin/dalpar.x

Obydwie wersje skompilowane są kompilatorem Intela, z użyciem bibliotek MKL. Wersja równoległa jest dodatkowo skompilowana z bibliotekami MVAPICH.

Uruchamianie

Przygotowanie środowiska i uruchomienie aplikacji:

> module load dalton
> dalton

Dalton do obliczeń potrzebuje zbioru instrukcji (plik .dal) oraz danych (plik .mol). Uruchomienie obliczeń dla przykładowych plików calc.dal i h2o.mol:

 > dalton calc h2o

Jeśli obydwa pliki mają tę samą nazwę bazową, np. calc_h2o.dal i calc_h2o.mol, program można uruchomić następująco:

> dalton calc_h2o
Wstawianie do kolejki

Zadania obliczeniowe należy wstawiać do kolejki, korzystając z polecenia:

sub-dalton plik.dal plik.mol wielkosc_pamieci_w_MB [kolejka] [liczba_procesorow]

Gdzie:

  • plik.dal - plik wejściowy z instrukcjami
  • plik.mol - plik wejściowy z danymi
  • wielkosc_pamieci_w_MB - całkowity rozmiar pamięci RAM dla zadania. Ponieważ część pamięci zużywana jest przez binaria programu, jako pamięć roboczą (zmienna środowiskowa WRKMEM) skrypt przekazuje do Daltona 90% podanego rozmiaru pamięci.
  • kolejka - parametr opcjonalny, kolejka PBS, do której ma zostać wstawione zadanie, wartość domyślna: normal.
  • liczba_procesorow - parametr opcjonalny, liczba procesorów dla zadania, wartość domyślna: 1 CPU, może przyjmować wartości 1,2 lub wielokrotność 4.
Obliczenia równoległe

Dalton w wersji równoległej korzysta z MVAPICH (procesy komunikują się przez sieć InfiniBand). Skrypt uruchamiający program używa komendy mpiexec (a nie mpirun). Na klastrze Nova należy korzystać z mpiexec dostępnego w katalogu: /usr/local/bin/mpiexec.

Uruchamianie obliczeń równoległych w kolejce, przykład:

sub-dalton plik.dal plik.mol wielkosc_pamieci_w_MB kolejka liczba_procesorow
sub-dalton calc.dal h2o.mol 4000 parallel 2

Do wykonania obliczeń równoległych potrzebne są odpowiednio przygotowane pliki wejściowe.

Przykładowy plik .dal

**DALTON INPUT
.OPTIMIZE
.PARALLEL
**WAVE FUNCTION
.DFT
 B3LYP
**END OF INPUT

Przykładowy plik .mol

BASIS
cc-pVTZ
arbitrary text in here
arbitrary text in here
Atomtypes=1
Charge=1.0 Atoms=2
H        0.0   0.0   0.0
H        0.0   0.0   2.0

Warto zauważyć, że implementacja paradygmatu master/slave w Daltonie sprawia, że proces główny (master) wykonuje fragmenty sekwencyjne programu i odpowiada za rozdział zadań między procesy slave, dlatego wykonuje niewiele obliczeń w porównaniu z procesami slave.

Wyniki testów

Program został przetestowany zestawem testów (ok. 220) dostarczanych razem ze źródłami.

Testy, które nie wykonały się poprawnie:

  • energy_restart
  • geoopt_constrain1a
  • geoopt_constrain1b
  • geoopt_exci2
  • geoopt_redintmin
  • prop_vibvcd
  • rsp_dresqr
  • walk_gradex
  • walk_image
  • walk_vibave2
  • cc_grad
  • cc_grad_ccpt_hf
  • cc_geopt_ccpt_hf
  • cc_geopt_ccpt_h2o
  • energy_corehole
  • geoopt_cartmin
  • geoopt_redintsad
  • geoopt_symbrk
  • walk_polar2
  • cc_grad2
  • cc_geoopt
  • geoopt_prop3
  • prop_vibana
  • walk_solvmag

Dokumentacja