Toolkit portatile ed estensibile per il calcolo scientifico - Portable, Extensible Toolkit for Scientific Computation

PETSc
Rilascio stabile
3.16/29 settembre 2021 ; 11 giorni fa ( 2021-09-29 )
Repository
Sistema operativo Linux , Unix , Mac OS X , Windows
Disponibile in C, Python, Fortran
Tipo Software di simulazione scientifica
Licenza Licenza BSD a 2 clausole
Sito web petsc .org

Il Portable, Extensible Toolkit for Scientific Computation ( PETSc , pronunciato PET-see; la S è silente), è una suite di strutture dati e routine sviluppate dall'Argonne National Laboratory per la soluzione scalabile ( parallela ) di applicazioni scientifiche modellate da equazioni differenziali alle derivate parziali . Impiega lo standard Message Passing Interface (MPI) per tutte le comunicazioni di passaggio dei messaggi. PETSc è la libreria software numerica parallela più utilizzata al mondo per equazioni differenziali alle derivate parziali e calcoli di matrici sparse . PETSc ha ricevuto un premio R&D 100 nel 2009. Il PETSc Core Development Group ha vinto il premio SIAM/ACM per la scienza e l'ingegneria computazionali per il 2015.

PETSc è destinato all'uso in progetti applicativi su larga scala , molti progetti di scienza computazionale in corso sono costruiti attorno alle librerie PETSc . Il suo design accurato consente agli utenti avanzati di avere un controllo dettagliato sul processo di soluzione. PETSc include un'ampia suite di risolutori di equazioni lineari e non lineari paralleli che possono essere facilmente utilizzati in codici applicativi scritti in C , C++ , Fortran e ora Python . PETSc fornisce molti dei meccanismi necessari all'interno del codice dell'applicazione parallela, come semplici matrici parallele e routine di assemblaggio vettoriale che consentono la sovrapposizione di comunicazione e calcolo . Inoltre, PETSc include il supporto per array distribuiti paralleli utili per metodi alle differenze finite .

Componenti

Image
Componenti del pacchetto software PETSc dalla versione 3.15

PETSc è costituito da una varietà di componenti costituiti da classi principali e infrastrutture di supporto. Gli utenti in genere interagiscono con oggetti delle classi di livello più alto rilevanti per la loro applicazione, oggetti essenziali di livello inferiore come i vettori e possono personalizzare o estendere qualsiasi altro. Tutti i principali componenti di PETSc hanno un'architettura plug-in estensibile.

Caratteristiche e moduli

PETSc fornisce molte funzionalità per il calcolo parallelo, suddivise in diversi moduli:

Appunti

Bibliografia

Guarda anche

link esterno