Kód YAMBO - YAMBO code
| Původní autoři | Andrea Marini |
|---|---|
| Vývojáři | Conor Hogan, Myrta Gruning, Daniele Varsano, Davide Sangalli, Andrea Ferretti, Pedro Melo, Ryan McMillan, Fabio Affinito, Alejandro Molina-Sanchez, Henrique Miranda |
| První vydání | 2008 |
| Stabilní uvolnění | 4.5 / 2. ledna 2020
|
| Úložiště | github |
| Napsáno | Fortran , C. |
| Operační systém | Unix , podobný Unixu |
| Plošina | x86 , x86-64 |
| K dispozici v | Angličtina |
| Typ | Teorie mnoha těl |
| Licence | GPL |
| webová stránka | www |
Yambo je počítačový softwarový balíček pro studium aspektů teorie těles o pevných tělesech a molekulárních systémech. Vypočítává vlastnosti excitovaných stavů fyzikálních systémů z prvních principů , např. Ze zákona kvantové mechaniky bez použití empirických dat. Jedná se o software s otevřeným zdrojovým kódem vydaný pod licencí GNU General Public License (GPL). Hlavní vývojové úložiště je však soukromé a do veřejného úložiště je klonována a tím distribuována pouze podmnožina funkcí dostupných v soukromém úložišti.
Vlastnosti vzrušeného stavu
Yambo umí vypočítat:
- Energie kvazičástic : plazmonový pól, aproximace COHSEX nebo reálná osa
- Životnost v rámci aproximace GW
- Optická absorpce : RPA, Bethe Salpeter s nebo bez Tamm-Dancoffovy aproximace, TDDFT v TD-LDA nebo LRC
- Spektroskopie ztráty elektronové energie
- Dynamická polarizovatelnost
- vazba elektron-fonon (teorie statické a dynamické poruchy)
- magnetooptické vlastnosti
- povrchová spektroskopie
Fyzikální systémy
Yambo může zpracovávat molekuly a periodické systémy (kovové i izolační) ve třech rozměrech (krystalické pevné látky), dvou rozměrech (povrchy) a jedné dimenzi (např. Nanotrubice , nanodrátky , polymerní řetězce). Zvládne také kolineární (tj. Spinově polarizované vlnové funkce ) a nekolineární ( spinory ) magnetické systémy.
Typické systémy mají velikost 10-100 atomů nebo 10-400 elektronů na jednotku buňky v případě periodických systémů.
Teoretické metody a aproximace
Yambo se spoléhá na teorii rušení mnoha těl a funkční teorii hustoty závislou na čase . Energie quasiparticle jsou vypočteny v rámci GW aproximace pro vlastní energii. Optické vlastnosti se vypočítají buď řešením rovnice Bethe – Salpeter, nebo pomocí adiabatické aproximace místní hustoty v rámci funkční teorie hustoty závislé na čase.
Numerické detaily
Yambo používá sadu základen rovinných vln k reprezentaci elektronických (jednočásticových) vlnových funkcí. Jádrové elektrony jsou popsány pseudopotenciály zachovávajícími normy . Volba základního souboru rovinných vln vynucuje periodicitu systémů. Izolované systémy a systémy, které jsou periodické pouze v jednom nebo dvou směrech, lze ošetřit pomocí přístupu supercel. Pro takové systémy Yambo nabízí dvě numerické techniky pro léčbu Coulombových integrálů: cut-off a metodu náhodné integrace.
Technické údaje
- Yambo je propojeno s funkčními kódy hustoty rovinných vln: ABINIT , PWscf , CPMD a s knihovnou ETSF-io. Nástroje, které propojují tyto kódy s Yambo, jsou distribuovány spolu s hlavním programem.
- Zdrojový kód je napsán ve Fortranu 95 a C.
- Kód je paralelizován pomocí knihoven se systémem MPI
Uživatelské rozhraní
- Yambo má uživatelské rozhraní příkazového řádku. Vyvolání programu pomocí konkrétní možnosti generuje vstup s výchozími hodnotami pro parametry konzistentní s aktuálními daty v systému.
- Nástroj pro postprocesing, distribuovaný spolu s hlavním programem, pomáhá s analýzou a vizualizací výsledků.
Systémové požadavky, přenositelnost
- Unixové systémy
- Kompilátory pro programovací jazyky Fortran 95 a C
- volitelně: kompilátor PGI Fortran pro verzi GPU (od verze 4.5)
- volitelně: netcdf , fftw , mpi (pro paralelní provádění), etsf-io , libxc , hdf5
- Hardwarové požadavky velmi závisí na zkoumaném fyzickém systému a zvolené úrovni teorie. V případě paměti RAM ( random-access memory ) se požadavky mohou lišit od méně než 1 GB do několika GB v závislosti na problému.
Učení Yambo
Tým Yambo poskytuje wiki webovou stránku se seznamem návodů a poznámek z přednášek . Na webových stránkách yambo je také seznam všech prací zpracovaných s kódem.
Nedistribuovaná část
Část kódu YAMBO je uložena v soukromém úložišti. Toto jsou implementované a dosud nedistribuované funkce:
- celková energie pomocí věty o kolísání a rozptylu adiabatického spojení
- magnetické pole
- self-konzistentní GW
- dynamický Bethe – Salpeter
- konečná hybnost Bethe-Salpeter
- spektroskopie v reálném čase
- pokročilá jádra pro časově závislou hustotní funkční teorii (jádro Nanoquanta).