YAMBO -koodi - YAMBO code
| Alkuperäinen kirjoittaja | Andrea Marini |
|---|---|
| Kehittäjä (t) | Pääosissa Conor Hogan, Myrta Gruning, Daniele Varsano, Davide Sangalli, Andrea Ferretti, Pedro Melo, Ryan McMillan, Fabio Affinito, Alejandro Molina-Sanchez, Henrique Miranda |
| Ensimmäinen julkaisu | 2008 |
| Vakaa julkaisu | 4.5 / 2. tammikuuta 2020
|
| Varasto | github |
| Kirjoitettu sisään | Fortran , C. |
| Käyttöjärjestelmä | Unix , Unixin kaltainen |
| Alusta | x86 , x86-64 |
| Saatavilla | Englanti |
| Tyyppi | Monirunkoinen teoria |
| Lisenssi | GPL |
| Verkkosivusto | www |
Yambo on tietokone ohjelmisto paketti opiskelu monen kappaleen teorian näkökohtia kiintoaineiden ja molekyylin järjestelmiä. Se laskee fysikaalisten järjestelmien herätetyn tilan ominaisuudet ensimmäisistä periaatteista , esim. Kvanttimekaniikan lain perusteella ilman empiirisiä tietoja. Se on avoimen lähdekoodin ohjelmisto, joka on julkaistu GNU General Public License (GPL) -lisenssillä. Pääkehitysvarasto on kuitenkin yksityinen, ja vain osa yksityisen arkiston ominaisuuksista kloonataan julkiseen arkistoon ja jaetaan siten.
Innostuneet tilat
Yambo osaa laskea:
- Kvasipartikkelienergiat : plasmonanapa, COHSEX-approksimaatio tai reaaliakseli
- Elinikä GW -likimääräisyyden sisällä
- Optinen absorptio : RPA, Bethe Salpeter Tamm-Dancoff-likiarvon kanssa tai ilman, TDDFT TD-LDA: ssa tai LRC: ssä
- Elektronienergian häviöspektroskopia
- Dynaaminen polarisoitavuus
- elektroni-fononikytkentä (staattinen ja dynaaminen häiriöteoria)
- magneettiset optiset ominaisuudet
- pintaspektroskopia
Fyysiset järjestelmät
Yambo voi käsitellä molekyylejä ja jaksollisia järjestelmiä (molemmat metallisia ja eristäviä) kolmessa ulottuvuudessa (kiteinen kiintoaine), kaksi ulottuvuutta (pinnat) ja yksi ulottuvuus (esim. Nanoputket , nanojohdot , polymeeriketjut ). Se voi myös käsitellä kollineaarisia (eli spin-polarisoituja aaltotoimintoja ) ja ei-collinearisia ( spinors ) magneettisia järjestelmiä.
Tyypilliset järjestelmät ovat kooltaan 10-100 atomia tai 10-400 elektronia kennoyksikköä kohti jaksottaisten järjestelmien tapauksessa.
Teoreettiset menetelmät ja likiarvot
Yambo perustuu monen kehon häiriöteoriaan ja ajasta riippuvaiseen tiheysfunktionaaliseen teoriaan . Kvasipartikkelienergiat lasketaan itseenergian GW -likiarvon sisällä . Optiset ominaisuudet lasketaan joko ratkaisemalla Bethe-Salpeter-yhtälö tai käyttämällä adiabaattista paikallista tiheyslukua aikariippuvaisen tiheysfunktion mukaan.
Numeeriset yksityiskohdat
Yambo käyttää tasoaaltojen perustaa, joka edustaa elektronisia (yksipartikkelisia) aaltotoimintoja. Ydinelektronit kuvataan normin säästävillä pseudopotentiaaleilla . Taso-aaltojen perusjoukon valinta pakottaa järjestelmien jaksottaisuuden. Eristettyjä järjestelmiä ja järjestelmiä, jotka ovat jaksollisia vain yhteen tai kahteen suuntaan, voidaan käsitellä käyttämällä supersoluista lähestymistapaa. Tällaisille järjestelmille Yambo tarjoaa kaksi numeerista tekniikkaa Coulomb-integraalien käsittelyyn: raja-arvo ja satunnaisintegraatiomenetelmä.
Tekniset yksityiskohdat
- Yambo on liitetty tasoaaltotiheysfunktionaalisiin koodeihin: ABINIT , PWscf , CPMD ja ETSF-io-kirjastoon. Apuohjelmat, jotka yhdistävät nämä koodit Yamboon, jaetaan pääohjelman mukana.
- Lähdekoodi on kirjoitettu Fortran 95: ssä ja C: ssä
- Koodi rinnastetaan käyttämällä MPI -käynnissä olevia kirjastoja
Käyttöliittymä
- Yambolla on komentorivikäyttöliittymä. Ohjelman kutsuminen tietyllä vaihtoehdolla luo tulon, jossa on oletusarvot parametreille, jotka ovat yhdenmukaisia järjestelmän nykyisten tietojen kanssa.
- Pääohjelman mukana jaettu jälkikäsittelyväline auttaa tulosten analysoinnissa ja visualisoinnissa.
Järjestelmävaatimukset, siirrettävyys
- Unix -pohjaiset järjestelmät
- Ohjelmointikielten Fortran 95 ja C kääntäjät
- valinnainen: PGI Fortran -kääntäjä GPU -versioon (alkaen 4.5 -versiosta)
- valinnainen: netcdf , fftw , mpi (rinnakkaiseen suoritukseen), etsf-io , libxc , hdf5
- Laitteistovaatimukset riippuvat suuresti tutkittavasta fyysisestä järjestelmästä ja valitusta teoriatasosta. For random-access memory (RAM) vaatimukset voivat vaihdella alle 1 GB muutaman GBs, riippuen ongelma.
Yambon oppiminen
Yambo-tiimi tarjoaa wikin verkkosivun, jossa on luettelo opetusohjelmista ja luentomuistiinpanoista . Yambon verkkosivustolla on myös luettelo kaikista koodilla tehdyistä opinnäytetyöistä .
Jakamaton osa
Osa YAMBO -koodista on yksityisen arkiston alla. Nämä ominaisuudet on otettu käyttöön ja niitä ei ole vielä jaettu:
- kokonaisenergiaa käyttämällä adiabaattisen kytkennän heilahtelu-hajoamislause
- magneettikenttä
- itsestään johdonmukainen GW
- dynaaminen Bethe – Salpeter
- äärellinen vauhti Bethe-Salpeter
- reaaliaikainen spektroskopia
- edistyneet ytimet ajasta riippuvaiseen tiheysfunktionaaliseen teoriaan (Nanoquanta-ydin).