LOBPCG
Lokaal optimaal blokkeergradiënt (Lobpcg) is een matrixvrije methode voor het vinden van de grootste (of kleinste) eigenwaarden en de daarbij behorende eigenvectoren van een symmetrische Gegeneraliseerd eigenwaardeprobleem
voor een bepaald paar complex Hermitiaans of echt symmetrisch matrices, waar de matrix wordt ook aangenomen positief gedefineerd.
Achtergrond
Kantorovich in 1948 stelde voor om het kleinste te berekenen eigenwaarde van een symmetrische matrix door steilste afdaling Een richting gebruiken van een geschaalde gradiënt van een Rayleigh quotiënt in een scalair product , met de stapgrootte berekend door het Rayleigh -quotiënt in de lineaire spanwijdte van de vectoren en , d.w.z. op een lokaal optimale manier.Samokish[1] Voorgesteld om een voorwaarde naar de resterende vector Om de vooraf geconditioneerde richting te genereren en afgeleid asymptotisch, als benadert de eigenvector, convergentiesnelheidsgrenzen. D'Yakonov suggereerde[2] spectraal equivalent voorwaarde en afgeleide niet-asymptotische convergentiesnelheidsgrenzen.Blokkeer lokaal optimale meerstaps steilste afdaling voor eigenwaardeproblemen werd beschreven in.[3] Lokale minimalisatie van het Rayleigh -quotiënt op de subruimte overspanning door de huidige benadering, de huidige rest en de vorige benadering, evenals de blokversie, verschenen erin.[4] De vooraf geconditioneerde versie werd geanalyseerd in [5] en.[6]
Hoofdkenmerken[7]
- Matrixvrij, d.w.z. hoeft niet expliciet de coëfficiëntmatrix op te slaan, maar heeft geen toegang tot de matrix door matrix-vectorproducten te evalueren.
- Factorisatie-Vrij, d.w.z. vereist geen matrixontleding Zelfs voor een Gegeneraliseerd eigenwaardeprobleem.
- De kosten per iteratie en het geheugengebruik zijn concurrerend met die van de Lanczos -methode, het berekenen van een enkele extreme eigenpair van een symmetrische matrix.
- Lineaire convergentie is theoretisch gegarandeerd en praktisch waargenomen.
- Versnelde convergentie vanwege direct voorwaarde, in tegenstelling tot Lanczos -methode, inclusief variabel en niet-symmetrisch en vast en positief definitief voorwaarde.
- Maakt triviale opname van efficiënt mogelijk domeinontleding en multigrid Technieken via voorconditionering.
- Warm begint en berekent een benadering van de eigenvector bij elke iteratie.
- Meer numeriek stabiel in vergelijking met de Lanczos -methode, en kan werken in rekenkunde met een laag nauwkeurige computer.
- Gemakkelijk te implementeren, met veel versies verschenen al.
- Blokkering maakt het gebruik van zeer efficiënte matrix-matrix-bewerkingen, b.v. Blas 3.
- De blokgrootte kan worden afgestemd om de convergentiesnelheid versus computerkosten van orthogonalisaties in evenwicht te brengen en de Rayleigh-Ritz-methode bij elke iteratie.
Algoritme
Enkele vectorversie
Voorafleidingen: Gradiëntafkomst voor eigenwaardeproblemen
De methode voert een iteratief maximalisatie (of minimalisatie) van de gegeneraliseerde Rayleigh quotiënt
wat resulteert in het vinden van de grootste (of kleinste) eigenpairs van
De richting van de steilste beklimming, die de gradiënt, van de gegeneraliseerde Rayleigh quotiënt is positief evenredig met de vector
De eigenvector genoemd restant.Als een voorwaarde is beschikbaar, het wordt toegepast op de rest en geeft de vector
de voorgeconditioneerde residu genoemd.Zonder voorconditionering hebben we ons ingesteld en dus .Een iteratieve methode
of, kortom,
staat bekend als vooraf geconditioneerd steilste beklimming (of afdaling), waar de scalair wordt de stapgrootte genoemd.De optimale stapgrootte kan worden bepaald door het Rayleigh -quotiënt te maximaliseren, d.w.z.
(of In het geval van minimaliseren), in welk geval de methode lokaal optimaal wordt genoemd.
Recidief op drie jaar
Om de convergentie van de lokaal optimale vooraf geconditioneerde steilste beklimming (of afkomst) drastisch te versnellen, kan één extra vector worden toegevoegd aan de twee-termijn Herstelrelatie Om het op drie termijn te maken:
(gebruiken In geval van minimaliseren).De maximalisatie/minimalisatie van het Rayleigh-quotiënt in een driedimensionale subruimte kan numeriek worden uitgevoerd door de Rayleigh -Ritz -methode.Meer vectoren toevoegen, zie b.v. Richardson extrapolatie, leidt niet tot aanzienlijke versnelling[8] maar verhoogt de berekeningskosten, dus wordt over het algemeen niet aanbevolen.
Numerieke stabiliteitsverbeteringen
Naarmate de iteraties samenkomen, de vectoren en Bijna worden lineair afhankelijk, resulterend in een precisieverlies en het maken van de Rayleigh -Ritz -methode Numeriek onstabiel in aanwezigheid van afronde fouten.Het verlies van precisie kan worden vermeden door de vector te vervangen met een vector , dat kan verder weg zijn van , op basis van de driedimensionale subruimte , terwijl de subruimte ongewijzigd blijft en vermijden orthogonalisatie of andere extra bewerkingen.[8] Bovendien kan de orthogonalisering van de basis van de driedimensionale subruimte nodig zijn voor slecht geconditioneerd eigenwaarde problemen om de stabiliteit te verbeteren en de bereikbare nauwkeurigheid te bereiken.
Krylov subruimte analogen
Dit is een versie met één vector van de LOBPCG-methode-een van de mogelijke generalisatie van de vooraf aangelegd geconjugeerde gradiënt lineaire oplossers voor het geval van symmetrisch eigenwaarde problemen.[8] Zelfs in het triviale geval en de resulterende benadering met zal verschillen van die verkregen door de Lanczos -algoritme, hoewel beide benaderingen tot hetzelfde zullen behoren Krylov subruimte.
Praktisch gebruiksscenario's
Extreme eenvoud en hoge efficiëntie van de enkele vectorversie van LOBPCG maken het aantrekkelijk voor eigenwaarde-gerelateerde toepassingen onder ernstige hardwarebeperkingen, variërend van spectrale clustering Basis realtime onregelmatigheidsdetectie via Grafiekpartitie op ingebed ASIC of FPGA het modelleren van fysieke fenomenen van recordcomplexiteit op exascale Top500 supercomputers.
Blokversie
Overzicht
Daaropvolgende eigenparen kunnen één voor één worden berekend via LOBPCG met één vector, aangevuld met een orthogonale deflatie of tegelijkertijd als een blok.In de vorige aanpak beïnvloeden de onnauwkeuringen in reeds berekende eigenvectoren additief de nauwkeurigheid van de vervolgens berekende eigenvectoren, waardoor de fout bij elke nieuwe berekening wordt vergroot.Verschillende bij benadering itereren eigenvectoren Samen op een blok op een lokaal optimale manier in de blokversie van de LOBPCG.[8] maakt een snelle, nauwkeurige en robuuste berekening van eigenvectoren mogelijk, inclusief die welke overeenkomen met bijna-multiple eigenwaarden waarbij de lobpcg met één vector lijdt aan langzame convergentie.De blokgrootte kan worden afgestemd om numerieke stabiliteit te balanceren versus convergentiesnelheid versus computerkosten van orthogonalisaties en de Rayleigh-Ritz-methode bij elke iteratie.
Kernontwerp
De blokbenadering in LOBPCG vervangt enkele vectoren en met blokvectoren, d.w.z. matrices en , waar bijvoorbeeld elke kolom van Benadert een van de eigenvectoren.Alle kolommen worden tegelijkertijd herhaald en de volgende matrix van geschatte eigenvectoren wordt bepaald door de Rayleigh -Ritz -methode Op de subruimte overspannen door alle kolommen van matrices en . Elke kolom van wordt eenvoudig berekend als de voorgeconditioneerde rest voor elke kolom van De matrix wordt zodanig vastgesteld dat de subruimten die worden overgebracht door de kolommen van en van zijn hetzelfde.
Numerieke stabiliteit versus efficiëntie
De uitkomst van de Rayleigh -Ritz -methode wordt bepaald door de subruimte die wordt overspannen door alle kolommen van matrices en , waar een basis van de subruimte theoretisch willekeurig kan zijn.In onaf onectieve computer rekent echter de Rayleigh -Ritz -methode wordt numeriek onstabiel als sommige basisvectoren ongeveer lineair afhankelijk zijn.Numerieke instabiliteiten komen meestal voor, bijvoorbeeld als sommige van de eigenvectoren in het iteratieve blok al bereikbare nauwkeurigheid bereiken voor een bepaalde computerprecisie en vooral prominent aanwezig zijn in lage precisie, b.v. enkele precisie.
De kunst van meerdere verschillende implementatie van LOBPCG is om de numerieke stabiliteit van de Rayleigh -Ritz -methode tegen minimale rekenkosten door een goede basis van de subruimte te kiezen.De aantoonbaar meest stabiele benadering van het maken van de basisvectoren orthogonaal, bijvoorbeeld door de Gram -Schmidt -proces, is ook de meest computationele duur.Bijvoorbeeld LOBPCG -implementaties,[9][10] gebruik onstabiel maar efficiënt Cholesky -ontleding van de normale matrix, die alleen op individuele matrices wordt uitgevoerd en , in plaats van op de hele subruimte.De constant toenemende hoeveelheid computergeheugen maakt tegenwoordig typische blokgroottes mogelijk in de Bereik, waar het percentage van de rekentijd besteedt aan orthogonalisaties en de Rayleigh-Ritz-methode begint te domineren.
Vergrendeling van eerder geconvergeerde eigenvectoren
Blokmethoden voor eigenwaardeproblemen die herhalen subsspaces meestal hebben dat sommige van de iteratieve eigenvectoren sneller worden geconvergeerd dan andere die motiveert dat het vergrendelen van de reeds geconvergeerde eigenvectoren, d.w.z. ze uit de iteratieve lus verwijdert, om onnodige berekeningen te elimineren en de numerische stabiliteit te verbeteren.Een eenvoudige verwijdering van een eigenvector kan waarschijnlijk ertoe leiden dat het duplicaat is in nog steeds itererende vectoren.Het feit dat de eigenvectoren van symmetrische eigenwaardeproblemen paarsgewijze orthogonaal zijn, suggereert dat alle iteratieve vectoren orthogonaal voor de vergrendelde vectoren worden gehouden.
Vergrendeling kan anders worden geïmplementeerd met het handhaven van numerieke nauwkeurigheid en stabiliteit, terwijl de rekenkosten worden geminimaliseerd.Bijvoorbeeld LOBPCG -implementaties,[9][10] volgen,[8][11] Harde vergrendeling scheiden, d.w.z. een deflatie door beperking, waarbij de vergrendelde eigenvectoren dienen als een code -invoer en niet veranderen, van zachte vergrendeling, waarbij de vergrendelde vectoren niet deelnemen aan de typisch duurste iteratieve stap om de residuen te berekenen,Neem deel aan de Rayleigh - Ritz -methode en mogen dus door de Rayleigh worden gewijzigd - RITZ -methode.
Convergentietheorie en praktijk
Lobpcg per bouw is gegarandeerd[8] om de Rayleigh quotiënt niet langzamer dan het blok steilst gradiëntafkomst, die een uitgebreide convergentietheorie heeft.Elk eigenvector is een stationair punt van de Rayleigh quotiënt, waar de gradiënt verdwijnt.Dus de gradiëntafkomst kan vertragen in een nabijheid van elke eigenvectorHet is echter gegarandeerd om te convergeren naar de eigenvector met een lineaire convergentiesnelheid of, als deze eigenvector een is zadelpunt, het iteratief Rayleigh quotiënt is meer kans om onder de overeenkomstige eigenwaarde te vallen en lineair te convergeren naar de volgende eigenwaarde hieronder.De slechtste waarde van de lineaire convergentiesnelheid is bepaald[8] en hangt af van de relatieve kloof tussen de eigenwaarde en de rest van de matrix spectrum en de kwaliteit van de voorwaarde, indien aanwezig.
Voor een algemene matrix is er duidelijk geen manier om de eigenvectoren te voorspellen en dus de initiële benaderingen te genereren die altijd goed werken.De iteratieve oplossing door LOBPCG kan gevoelig zijn voor de initiële eigenvectorsbenaderingen, bijvoorbeeld die langer duurt om te vertragen als het passeren van tussenliggende eigenparen.Bovendien kan men in theorie geen convergentie garanderen voor de kleinste eigenpair, hoewel de waarschijnlijkheid van de Miss nul is.Een goede kwaliteit willekeurig Gaussiaans Functie met de nul gemeen is meestal de standaardinstelling in LOBPCG om de initiële benaderingen te genereren.Om de initiële benaderingen te repareren, kan men een vast zaadje selecteren voor de willekeurig nummer generator.
In tegenstelling tot Lanczos -methode, Lobpcg vertoont zelden asymptotisch superlineaire convergentie in praktijk.
Gedeeltelijk Hoofdcomponentanalyse (PCA) en Singuliere waarden ontbinding (SVD)
Lobpcg kan triviaal worden aangepast voor het berekenen van verschillende grootste enkelvoudige waarden en de overeenkomstige enkelvoudige vectoren (gedeeltelijke SVD), bijvoorbeeld voor iteratieve berekening van PCA, voor een gegevensmatrix D met nul gemiddeld, zonder expliciet de covariantie Matrix DTD, d.w.z. in matrix-vrije mode.De belangrijkste berekening is evaluatie van een functie van het product DT(D x) van de covariantiematrix DTD en de blokvector X Dat benadert iteratief de gewenste enkelvoudige vectoren.PCA heeft de grootste eigenwaarden van de covariantiematrix nodig, terwijl LOBPCG meestal wordt geïmplementeerd om de kleinste te berekenen.Een eenvoudige work-around is om de functie te ontkennen, te vervangen -DT(D x) voor DT(D x) en zo de volgorde van de eigenwaarden omkeren, omdat LOBPCG het niet kan schelen of de matrix van het eigenwaardeprobleem positief is of niet.[9]
LOBPCG voor PCA en SVD is geïmplementeerd in Scipy sinds Revision 1.4.0[12]
Algemene software -implementaties
Lobpcg's uitvinder, Andrew Knyazev, een referentie -implementatie gepubliceerd genaamd Block lokaal optimale vooraf geconditioneerde eigenwaarde Xolvers (BLOPEX)[13][14] met interfaces naar PETSC, hypreen parallelle hiërarchische adaptieve multilevel -methode (PHAML).[15] Andere implementaties zijn beschikbaar in, b.v. GNU -octaaf,[16] Matlab (inclusief voor gedistribueerde of betegelingsarrays),[9] Java,[17] Anasazi (Trilinos),[18] SLEPC,[19][20] Scipy ,,[10] Julia,[21] MAGMA,[22] Pytorch,[23] Roest,[24] Openmp en OpenACC,[25] Cupy (EEN Numpy-Compatible Array Library versneld door Cuda),[26] Google Jax,[27] en Nvidia AMGX.[28] Lobpcg is geïmplementeerd,[29] maar niet inbegrepen, in Tensorflow.
Toepassingen
Datamining
Softwarepakketten Scikit-Learn en Megaman[30] Gebruik lobpcg om te schalen spectrale clustering[31] en Mevendeel leren[32] via Laplacian Eigenmaps naar grote gegevenssets. Nvidia heeft geïmplementeerd[33] Lobpcg in zijn nvgraph -bibliotheek geïntroduceerd in Cuda 8. sphynx,[34] Een hybride gedistribueerde- en gedeelde-geheugen-compatibele parallelle grafische partitioner- de eerste grafiekpartitie-tool die werkt op GPU's op gedistribueerde geheugeninstellingen- gebruikt spectrale clustering voor Grafiekpartitie, het berekenen van eigenvectoren op de Laplaciaanse matrix van de grafiek met behulp van lobpcg van de Anasazi pakket.
Materiële wetenschappen
Lobpcg wordt geïmplementeerd in Abinit[35] (inclusief Cuda versie) en Octopus.[36] Het is gebruikt voor multi-miljard maat matrices door Gordon Bell -prijs finalisten, op de Earth Simulator supercomputer in Japan.[37][38] Hubbard -model voor sterk gecorreleerde elektronensystemen om het mechanisme achter de supergeleiding gebruikt LOBPCG om de grondstaat van de Hamiltoniaans op de K computer[39] en multi-GPU-systemen.[40]
Er zijn Matlab[41] en Julia[42][43] [44] Versies van lobpcg voor Kohn-sham Vergelijkingen en Dichtheid functionele theorie (DFT) met behulp van de gewone basis.Recente implementaties zijn onder meer TTPY,[45] Platypus -qm,[46] Mfdn,[47] Aas-molecuul,[48] Laconieke.[49]
Mechanica en vloeistoffen
Lobpcg van BLOPEX wordt gebruikt voor voorwaarde instellen op multilevel Balancerende domeinontleding door beperkingen (BDDC) Solver Library BDDCML, die is opgenomen in OpenFTL (Open Eindelement Sjabloonbibliotheek) en flow123d simulator van ondergrondse waterstroom, opgeloste stof en Warmtransport in een gebroken poreuze media.Lobpcg is geïmplementeerd[50] in LS-DYNA.
Maxwell's vergelijkingen
LOBPCG is een van de kern EigenValue -oplossers in Pyfemax en hoge prestaties multiphysics eindelement Software netgen/ngsolve.Lobpcg van hypre is opgenomen in open source lichtgewicht schaalbaar C ++ bibliotheek voor eindelement methoden Mfem, die in veel projecten wordt gebruikt, waaronder ONTPLOFFING, Xbraid, Op bezoek komen, XSDK, het FastMath Institute in SCIDAC, en het co-designcentrum voor efficiënte exascale discretisaties (ceed) in de Exascale computing Project.
Denoiserend
Iteratieve lobpcg-gebaseerde bij benadering low-pass filter kan worden gebruikt voor denoiserend;zien,[51] bijv. om te versnellen Totale variatie denoising.
Beeldsegmentatie
Beeldsegmentatie via spectrale clustering voert een lage dimensie uit inbedden een affiniteit matrix tussen pixels, gevolgd door clustering van de componenten van de eigenvectoren in de lage dimensionale ruimte, bijvoorbeeld met behulp van de Grafiek Laplacian voor de bilateraal filter. Beeldsegmentatie via spectral Grafiekpartitie door lobpcg met multigrid voorwaarde is voor het eerst voorgesteld in [52] en eigenlijk getest in [53] en.[54] De laatste aanpak is later geïmplementeerd in Python Scikit-Learn[55] dat gebruikt lobpcg van Scipy met Algebraïsche multigridvoorconditionering Voor het oplossen van het eigenwaardeprobleem voor de grafiek Laplacian.
Referenties
- ^ Samokish, B.A.(1958)."De steilste afdalingsmethode voor een eigenwaardeprobleem met semi-gebonden operators". Izvestiya Vuzov, wiskunde. (5): 105–114.
- ^ D'Yakonov, E. G. (1996). Optimalisatie bij het oplossen van elliptische problemen.CRC-Press.p.592. ISBN 978-0-8493-2872-5.
- ^ Cullum, Jane K.;Willoughby, Ralph A. (2002). Lanczos -algoritmen voor grote symmetrische eigenwaardeberekeningen.Vol.1 (herdruk van het origineel 1985). Society for Industrial and Applied Mathematics.
- ^ Knyazev, Andrew V. (1987)."Schattingen van convergentiesnelheid voor iteratieve methoden voor mesh -symmetrische eigenwaardeprobleem". Sovjet Journal of Numerical Analysis and Mathematical Modellering. 2 (5): 371–396. doen:10.1515/rnam.1987.2.5.371. S2CID 121473545.
- ^ Knyazev, A. V. (1991)."Een vooraf geconditioneerde geconjugeerde gradiëntmethode voor eigenwaardeproblemen en de implementatie ervan in een subruimte".In Albrecht, J.;Collatz, L.;Hagedorn, P.;Velte, W. (eds.). Numerieke behandeling van eigenwaardeproblemen Vol.5.Internationale series van numerieke wiskunde.Vol.96. pp. 143–154. doen:10.1007/978-3-0348-6332-2_11. ISBN 978-3-0348-6334-6.
- ^ Knyazev, Andrew V. (1998)."Vooraf geconditioneerde eigenSolvers - een oxymoron?". Elektronische transacties op numerieke analyse. 7: 104–123.
- ^ Knyazev, Andrew (2017)."Recente implementaties, toepassingen en extensies van de lokaal optimale voorgestelde blokkeergradiëntmethode (LOBPCG)". arxiv:1708.08354 [Cs.na].
- ^ a b c d e f g Knyazev, Andrew V. (2001). "Op weg naar de optimale vooraf geconditioneerde eigenSolver: lokaal optimale blokkeervoorgevoerde conjugaatgradiëntmethode". Siam Journal on Scientific Computing. 23 (2): 517–541. doen:10.1137/s1064827500366124. S2CID 7077751.
- ^ a b c d Matlab Bestandsuitwisselingsfunctie lobpcg
- ^ a b c Scipy schaarse lineaire algebra -functie lobpcg
- ^ Knyazev, A. (2004). Harde en zachte vergrendeling in iteratieve methoden voor symmetrische eigenwaardeproblemen.Achtste koperen bergconferentie over iteratieve methoden 28 maart - 2 april 2004. doen:10.13140/rg.2.2.11794.48327.
- ^ Lobpcg voor SVD's in Scipy
- ^ Gitub BLOPEX
- ^ Knyazev, A. V.;Argentati, M. E.;Lashuk, I.;Ovtchinnikov, E. E. (2007)."Blokkeer lokaal optimale vooraf geconditioneerde eigenwaarde xolvers (BLOPEX) in HyPre en PETSC". Siam Journal on Scientific Computing. 29 (5): 2224. arxiv:0705.2626. Bibcode:2007arxiv0705.2626k. doen:10.1137/060661624. S2CID 266.
- ^ Phaml BLOPEX -interface om te lobpcg
- ^ Octaaf lineaire algebra functie lobpcg
- ^ Java lobpcg Bij Google Code
- ^ Anasazi trilinos lobpcg Bij Gitub
- ^ Native SLEPC lobpcg
- ^ SLEPC BLOPEX interface om te lobpcg
- ^ Julia Lobpcg Bij Gitub
- ^ Anzt, Hartwig;Tomov, Stanimir;Dongarra, Jack (2015). "Het versnellen van de LOBPCG -methode op GPU's met behulp van een geblokkeerd schaarse matrixvectorproduct". Proceedings of the Symposium on High Performance Computing (HPC '15).Society for Computer Simulation International, San Diego, CA, VS..HPC '15: 75–82. ISBN 9781510801011.
- ^ Pytorch Lobpcg Bij Gitub
- ^ Roest Lobpcg Bij Gitub
- ^ Rabbi, Fazlay;Daley, Christopher S.;Aktulga, Hasan M.;Wright, Nicholas J. (2019). Evaluatie van op richtlijn gebaseerde GPU-programmeermodellen op een Block EigenSolver met overweging van grote schaarse matrices (PDF). Zevende workshop over Accelerator -programmering met behulp van richtlijnen, SC19: de International Conference for High Performance Computing, Networking, Storage and Analysis.
- ^ Cupy: a Numpy-Compatible Array Library versneld door Cuda Lobpcg Bij Gitub
- ^ Google Jax Lobpcg eerste samenvoeging Bij Gitub
- ^ Nvidia AMGX Lobpcg Bij Gitub
- ^ Rakhuba, Maxim;Novikov, Alexander;Osedelets, Ivan (2019). "Riemanniaanse eigensolver met lage rang voor hoog-dimensionale Hamiltonians". Journal of Computational Physics. 396: 718–737. arxiv:1811.11049. Bibcode:2019jcoph.396..718r. doen:10.1016/j.jcp.2019.07.003. S2CID 119679555.
- ^ McQueen, James;et al.(2016). "Megaman: schaalbaar verdeelstuk leren in Python". Journal of Machine Learning Research. 17 (148): 1–5. Bibcode:2016jmlr ... 17..148m.
- ^ "Sklearn.cluster.spectralclustering-Scikit-Learn 0.22.1 documentatie".
- ^ "Sklearn.manifold.spectral_embedding-Scikit-Learn 0.22.1 documentatie".
- ^ Naumov, Maxim (2016). "Snelle spectrale grafiekpartitionering op GPU's". NVIDIA Developer Blog.
- ^ "SGRAPH PARTITIONING MET SPHYNX".
- ^ Abinit Docs: golffunctie -optimalisatie -algoritme
- ^ Octopus Developers Manual: LOBPCG
- ^ Yamada, S.;Imamura, T.;Machida, M. (2005). 16.447 Tflops en 159-miljard-dimensionale exacte diagonalisatie voor opgesloten Fermion-Hubbard-model op de Earth-simulator. Proc.ACM/IEEE -conferentie over supercomputing (SC'05). p. 44. doen:10.1109/sc.2005.1. ISBN 1-59593-061-2.
- ^ Yamada, S.;Imamura, T.;Kano, T.;Machida, M. (2006). Gordon Bell Finalisten I-Hoge prestaties computergebruik voor exacte numerieke benaderingen van kwantum veel lichaamsproblemen op de Earth-simulator.Proc.ACM/IEEE -conferentie over supercomputing (SC '06).p.47. doen:10.1145/1188455.1188504. ISBN 0769527000.
- ^ Yamada, S.;Imamura, T.;Machida, M. (2018). High Performance LOBPCG -methode voor het oplossen van meerdere eigenwaarden van Hubbard Model: Efficiëntie van communicatie Vermijden van Neumann -uitbreiding Preconditioner.Aziatische conferentie over supercomputerende grenzen. Yokota R., Wu W. (eds) Supercomputerende grenzen.SCFA 2018. Lecture Notes in Computer Science, Vol 10776. Springer, Cham.pp. 243–256. doen:10.1007/978-3-319-69953-0_14.
- ^ Yamada, S.;Imamura, T.;Machida, M. (2022). High Performance Parallel LOBPCG-methode voor groot Hamiltoniaans afgeleid van Hubbard-model op multi-GPU-systemen.Supercomputingasia (SCA).
- ^ Yang, C.;Meza, J. C.;Lee, B.;Wang, L.-W.(2009)."KSSOLV - Een MATLAB -toolbox voor het oplossen van de Kohn -Sham -vergelijkingen". ACM trans. Wiskunde. Softw. 36 (2): 1–35. doen:10.1145/1499096.1499099. S2CID 624897.
- ^ Fathurrahman, Fadjar;Agusta, Mohammad Kemal;Saputro, Adhitya Gandaryus;Dipojono, Hermawan Kresno (2020)."PWDFT.JL: een Julia -pakket voor berekening van de elektronische structuur met behulp van de functionele theorie van de dichtheid en vlakke golfbasis". Computerfysica -communicatie. 256: 107372. Bibcode:2020cophc.25607372F. doen:10.1016/j.cpc.2020.107372. S2CID 219517717.
- ^ Vlakke golfdichtheid functionele theorie (pwdft) in Julia
- ^ Dichtheid-functionele toolkit (DFTK).Vlakke golf Dichtheid functionele theorie in Julia
- ^ Rakhuba, Maxim;Oeledets, Ivan (2016)."Het berekenen van vibratiespectra van moleculen met behulp van de ontleding van tensor trein". J. Chem. Fysiek. 145 (12): 124101. arxiv:1605.08422. Bibcode:2016jchph.145L4101R. doen:10.1063/1.4962420. Pmid 27782616. S2CID 44797395.
- ^ Takano, Yu;Nakata, Kazuto;Yonezawa, Yasushige;Nakamura, Haruki (2016). "Ontwikkeling van massief multilevel moleculaire dynamica simulatieprogramma, platypus (platform voor dynamische eiwit uniforme simulatie), voor de opheldering van eiwitfuncties". J. Comput. Chem. 37 (12): 1125–1132. doen:10.1002/jcc.24318. PMC 4825406. Pmid 26940542.
- ^ Shao, Meiyue;et al.(2018)."Nucleaire configuratie -interactieberekeningen versnellen via een vooraf geconditioneerde blok iteratieve eigenSolver". Computerfysica -communicatie. 222 (1): 1–13. arxiv:1609.01689. Bibcode:2018cophc.222 .... 1s. doen:10.1016/j.cpc.2017.09.004. S2CID 13996642.
- ^ Kang, Sungwoo;et al.(2020)."Ace-Molecule: een open-source real-space kwantumchemiepakket". The Journal of Chemical Physics. 152 (12): 124110. Bibcode:2020JCHPH.152L4110K. doen:10.1063/5.0002959. Pmid 32241122. S2CID 214768088.
- ^ Baczewski, Andrew David;Brickson, Mitchell Ian;Campbell, Quinn;Jacobson, Noah Tobias;Maurer, Leon (2020-09-01). Een kwantumanaloge coprocessor voor gecorreleerde elektronensystemen simulatie (Rapport).Verenigde Staten: Sandia National Lab.(SNL-nm). doen:10.2172/1671166. Osti 1671166.
- ^ Een onderzoek naar Eigen-oplossingsmethoden in LS-DYNA®.15e internationale LS-DYNA-conferentie, Detroit.2018.
- ^ Knyazev, A.;Malyshev, A. (2015). Versnelde op grafiek gebaseerde spectrale polynoomfilters.2015 IEEE 25th International Workshop on Machine Learning for Signal Processing (MLSP), Boston, MA.pp. 1–6. arxiv:1509.02468. doen:10.1109/mlsp.2015.7324315.
- ^ Knyazev, Andrew V. (2003).Boley;Dhillon;Ghosh;Kogan (eds.). Moderne vooraf geconditioneerde eigenSolvers voor spectrale beeldsegmentatie en grafische bisectie.Grote gegevenssets clusteren;Derde IEEE International Conference on Data Mining (ICDM 2003) Melbourne, Florida: IEEE Computer Society.pp. 59–62.
- ^ Knyazev, Andrew V. (2006). Multischaal Spectrale beeldsegmentatie Multischaal Voorvoorwaarde voor het berekenen van eigenwaarden van grafische laplacians in beeldsegmentatie.Snelle verdeelstuk Workshop, WM Williamburg, VA. doen:10.13140/rg.2.2.35280.02565.
- ^ Knyazev, Andrew V. (2006). Multischaal spectrale grafiekpartitionering en beeldsegmentatie.Workshop over algoritmen voor moderne massieve datasets Stanford University en Yahoo!Onderzoek.
- ^ "Spectrale clustering-Scikit-Learn-documentatie".