Dalton: Różnice pomiędzy wersjami

Z KdmWiki
Przejdź do nawigacji Przejdź do wyszukiwania
(Nie pokazano 26 wersji utworzonych przez 3 użytkowników)
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]] < Dalton</small>
{{zasobytab|logo=|serwery=[[Nova]]}}  
+
{{aplikacja|nazwa=Dalton|logo=|serwer=[[Bem]]|wersja='''2015'''}}  
'''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 (HF), wielokonfiguracyjną metodę pola samouzgodnionego (MCSCF), metody sprzężonych klasterów (CCS, CC2, CCSD, CCSD(T), CC3, jak również MP2) oraz teorię funkcjonału gęstości (DFT). W najnowszej wersji Daltona (2013) zaimplementowane zostały m.in. takie funkcjonalności jak: dekompozycja Choleskiego dla metody sprzężonych klasterów, empiryczne poprawki na dyspersję w metodach DFT (DFT-D2, DFT-D3 and DFT-D3BJ czy też model dyskretnego rozpuszczalnika (Polarizable Embedding).  
  
 
== Licencja ==
 
== Licencja ==
WCSS posiada darmową licencję instytucjonalną na Daltona 2.0.
+
WCSS posiada darmową licencję instytucjonalną na Daltona 2015.
  
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 2015''' 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),  
+
:''K. Aidas, C. Angeli, K. L. Bak, V. Bakken, R. Bast, L. Boman, O. Christiansen, R. Cimiraglia, S. Coriani, P. Dahle, E. K. Dalskov, U. Ekström, T. Enevoldsen, J. J. Eriksen, P. Ettenhuber, B. Fernández, L. Ferrighi, H. Fliegl, L. Frediani, K. Hald, A. Halkier, C. Hättig, H. Heiberg, T. Helgaker, A. C. Hennum, H. Hettema, E. Hjertenæs, S. Høst, I.-M. Høyvik, M. F. Iozzi, B. Jansik, H. J. Aa. Jensen, D. Jonsson, P. Jørgensen, J. Kauczor, S. Kirpekar, T. Kjærgaard, W. Klopper, S. Knecht, R. Kobayashi, H. Koch, J. Kongsted, A. Krapp, K. Kristensen, A. Ligabue, O. B. Lutnæs, J. I. Melo, K. V. Mikkelsen, R. H. Myhre, C. Neiss, C. B. Nielsen, P. Norman, J. Olsen, J. M. H. Olsen, A. Osted, M. J. Packer, F. Pawlowski, T. B. Pedersen, P. F. Provasi, S. Reine, Z. Rinkevicius, T. A. Ruden, K. Ruud, V. Rybkin, P. Salek, C. C. M. Samson, A. Sánchez de Merás, T. Saue, S. P. A. Sauer, B. Schimmelpfennig, K. Sneskov, A. H. Steindal, K. O. Sylvester-Hvid, P. R. Taylor, A. M. Teale, E. I. Tellgren, D. P. Tew, A. J. Thorvaldsen, L. Thøgersen, O. Vahtras, M. A. Watson, D. J. D. Wilson, M. Ziolkowski, and H. Ågren, "The Dalton quantum chemistry program system", WIREs Comput. Mol. Sci. (doi: 10.1002/wcms.1172)''
see http://www.kjemi.uio.no/software/dalton/dalton.html "
+
 
 +
oraz
 +
 
 +
:''"Dalton, a molecular electronic structure program, Release DALTON2015.0 (2015), see http://daltonprogram.org."''
 +
 
 +
=== Informacje o wykorzystaniu ===
 +
{{Podziękowanie_WCSS}}
  
 
== Korzystanie w WCSS ==
 
== Korzystanie w WCSS ==
Dalton w wersji 2.0 jest zainstalowany na klastrze [[Nova]], w katalogu:
+
Dalton zainstalowany jest na klastrze [[Bem]] w katalogu: /usr/local/dalton
/usr/local/dalton-2.0
+
 
Dostępna jest wersja sekwencyjna i równoległa programu.
+
=== Uruchamianie ===
  /usr/local/dalton-2.0/bin/dalton.x
+
; Praca w trybie interaktywnym
/usr/local/dalton-2.0/bin/dalpar.x
+
Praca z pakietem w trybie interaktywnym jest możliwa po uruchomieniu zadania interaktywnego, np:
Obydwie wersje skompilowane są kompilatorem Intela, z użyciem bibliotek MKL. Werja równoległa jest dodatkowo skompilowana z bibliotekami MVAPICH.
+
  > qsub -I -l -l walltime=06:00:00 -l software=Dalton
  
;Uruchamianie
+
Środowisko programu inicjalizowane jest w powłoce przez polecenie:
Polecenie do uruchamiania aplikacji:
+
> module load dalton (dla wersji domyślnej)
  /usr/local/dalton-2.0/bin/dalton
+
  > module load dalton/2015-intel13.1
  
 
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
Zadania obliczeniowe należy wstawiać do kolejki, korzystając z polecenia:
+
Zadania obliczeniowe należy wstawiać do kolejki, korzystając z polecenia sub-dalton (uruchamia domyślną wersję programu)
  sub-dalton plik.dal plik.mol wielkosc_pamieci_w_MB [kolejka] [liczba_procesorow]
+
 
 +
Uruchomienie skryptu bez podania argumentów wyświetli podpowiedź jak należy te argumenty specyfikować:
 +
 
 +
> sub-dalton
 +
  Usage: /usr/local/bin/sub-dalton file.dal file.mol [parameters]
 +
Parameters:
 +
-q queue (default - main)
 +
-n nodes (default - 1)
 +
-p cores (per node, default - 1)
 +
-m memory (per node, in MB, default - 2000)
 +
-w walltime (in hours, default - 504)
 +
 
 +
Na przykład
  
Gdzie:
+
> sub-dalton test.dal geo.mol -q main -n 1 -p 2 -m 4000 -w 2
* <code>plik.dal</code> - plik wejściowy z instrukcjami
+
 
* <code>plik.mol</code> - plik wejściowy z danymi
+
Zadanie uruchomione zostanie na 2 rdzeniach (w obrębie jednego węzła), wymaga 4000 MB RAM (po 2000 MB na proces), walltime zadania jest równy 2 godziny.
* <code>wielkosc_pamieci_w_MB</code> - 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.
+
 
* <code>kolejka</code> - parametr opcjonalny, kolejka PBS, do której ma zostać wstawione zadanie, wartość domyślna: normal.
+
'''Uwaga'''
* <code>liczba_procesorow</code> - parametr opcjonalny, liczba procesorów dla zadania, wartość domyślna: 1 CPU, może przyjmować wartości 1,2 lub wielokrotność 4.
+
 
 +
Na klastrze Bem zadania należy zlecać do kolejki main. Jest to kolejka przekierowująca - na podstawie podanego limitu czasu (walltime) zadania będą przenoszone do odpowiednich kolejek (np. normal, infinity).
 +
 
 +
'''Zobacz też:''' [[Jak korzystać z kolejek PBS]]?
  
 
;Obliczenia równoległe
 
;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 <code>mpiexec</code> (a nie <code>mpirun</code>). Na klastrze Nova należy korzystać z mpiexec dostępnego w katalogu: <code>/usr/locla/bin/mpiexec</code>.
 
 
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.
 
Do wykonania obliczeń równoległych potrzebne są odpowiednio przygotowane pliki wejściowe.
Linia 67: Linia 83:
 
  H        0.0  0.0  0.0
 
  H        0.0  0.0  0.0
 
  H        0.0  0.0  2.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 dostarczanych razem ze źródłami. Wszystkie testy wykonały się poprawnie.
  
 
== Dokumentacja ==
 
== Dokumentacja ==
 
* [http://www.kjemi.uio.no/software/dalton/dalton.html Strona domowa pakietu]
 
* [http://www.kjemi.uio.no/software/dalton/dalton.html Strona domowa pakietu]
* Manual: [http://www.kjemi.uio.no/software/dalton/resources/dalton20manual.pdf PDF]
+
* [http://www.scalalife.eu/content/dalton-1 Porady odnośnie uruchamiania Daltona w ScalaLife Competence center]  
 
 
  
 
{{oprogramowanie}}
 
{{oprogramowanie}}

Wersja z 12:42, 23 lut 2016

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

Dalton
Serwer Wersja
Bem 2015
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 (HF), wielokonfiguracyjną metodę pola samouzgodnionego (MCSCF), metody sprzężonych klasterów (CCS, CC2, CCSD, CCSD(T), CC3, jak również MP2) oraz teorię funkcjonału gęstości (DFT). W najnowszej wersji Daltona (2013) zaimplementowane zostały m.in. takie funkcjonalności jak: dekompozycja Choleskiego dla metody sprzężonych klasterów, empiryczne poprawki na dyspersję w metodach DFT (DFT-D2, DFT-D3 and DFT-D3BJ czy też model dyskretnego rozpuszczalnika (Polarizable Embedding).

Licencja

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

  • Użytkownicy korzystający z Daltona 2015 zobowiązani są do umieszczenia w publikacjach, wykorzystujących wyniki obliczeń wykonanych przy użyciu tego oprogramowania, cytowania następującej treści:
K. Aidas, C. Angeli, K. L. Bak, V. Bakken, R. Bast, L. Boman, O. Christiansen, R. Cimiraglia, S. Coriani, P. Dahle, E. K. Dalskov, U. Ekström, T. Enevoldsen, J. J. Eriksen, P. Ettenhuber, B. Fernández, L. Ferrighi, H. Fliegl, L. Frediani, K. Hald, A. Halkier, C. Hättig, H. Heiberg, T. Helgaker, A. C. Hennum, H. Hettema, E. Hjertenæs, S. Høst, I.-M. Høyvik, M. F. Iozzi, B. Jansik, H. J. Aa. Jensen, D. Jonsson, P. Jørgensen, J. Kauczor, S. Kirpekar, T. Kjærgaard, W. Klopper, S. Knecht, R. Kobayashi, H. Koch, J. Kongsted, A. Krapp, K. Kristensen, A. Ligabue, O. B. Lutnæs, J. I. Melo, K. V. Mikkelsen, R. H. Myhre, C. Neiss, C. B. Nielsen, P. Norman, J. Olsen, J. M. H. Olsen, A. Osted, M. J. Packer, F. Pawlowski, T. B. Pedersen, P. F. Provasi, S. Reine, Z. Rinkevicius, T. A. Ruden, K. Ruud, V. Rybkin, P. Salek, C. C. M. Samson, A. Sánchez de Merás, T. Saue, S. P. A. Sauer, B. Schimmelpfennig, K. Sneskov, A. H. Steindal, K. O. Sylvester-Hvid, P. R. Taylor, A. M. Teale, E. I. Tellgren, D. P. Tew, A. J. Thorvaldsen, L. Thøgersen, O. Vahtras, M. A. Watson, D. J. D. Wilson, M. Ziolkowski, and H. Ågren, "The Dalton quantum chemistry program system", WIREs Comput. Mol. Sci. (doi: 10.1002/wcms.1172)

oraz

"Dalton, a molecular electronic structure program, Release DALTON2015.0 (2015), see http://daltonprogram.org."

Informacje o wykorzystaniu

Wszelkie publikacje, (w tym prace doktorskie i dyplomowe) wykorzystujące wyniki obliczeń wykonanych na komputerach WCSS, powinny zawierać podziękowania postaci (odpowiednio do języka publikacji):

"Obliczenia wykonano na komputerach Wrocławskiego Centrum Sieciowo-Superkomputerowego (http://www.wcss.pl), grant obliczeniowy Nr ... "

"Calculations have been carried out in Wroclaw Centre for Networking and Supercomputing (http://www.wcss.pl), grant No. ..."

Korzystanie w WCSS

Dalton zainstalowany jest na klastrze Bem w katalogu: /usr/local/dalton

Uruchamianie

Praca w trybie interaktywnym

Praca z pakietem w trybie interaktywnym jest możliwa po uruchomieniu zadania interaktywnego, np:

> qsub -I -l -l walltime=06:00:00 -l software=Dalton

Środowisko programu inicjalizowane jest w powłoce przez polecenie:

> module load dalton (dla wersji domyślnej)
> module load dalton/2015-intel13.1

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 (uruchamia domyślną wersję programu)

Uruchomienie skryptu bez podania argumentów wyświetli podpowiedź jak należy te argumenty specyfikować:

> sub-dalton
Usage: /usr/local/bin/sub-dalton file.dal file.mol [parameters]
Parameters:
-q queue (default - main)
-n nodes (default - 1)
-p cores (per node, default - 1)
-m memory (per node, in MB, default - 2000)
-w walltime (in hours, default - 504)

Na przykład

> sub-dalton test.dal geo.mol -q main -n 1 -p 2 -m 4000 -w 2 

Zadanie uruchomione zostanie na 2 rdzeniach (w obrębie jednego węzła), wymaga 4000 MB RAM (po 2000 MB na proces), walltime zadania jest równy 2 godziny.

Uwaga

Na klastrze Bem zadania należy zlecać do kolejki main. Jest to kolejka przekierowująca - na podstawie podanego limitu czasu (walltime) zadania będą przenoszone do odpowiednich kolejek (np. normal, infinity).

Zobacz też: Jak korzystać z kolejek PBS?

Obliczenia równoległe

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 dostarczanych razem ze źródłami. Wszystkie testy wykonały się poprawnie.

Dokumentacja