PETSc è una suite open source di strutture dati e routine per la soluzione scalabile (parallela) di applicazioni scientifiche modellata da equazioni differenziali parziali.
Ho diversi problemi di ottimizzazione globale non convessi da risolvere. Attualmente uso MATLAB's Optimization Toolbox (in particolare, fmincon()con algoritmo = 'sqp'), che è abbastanza efficace . Tuttavia, la maggior parte del mio codice è in Python e mi piacerebbe fare l'ottimizzazione anche in Python. Esiste un solutore NLP con attacchi …
Cosa può andare storto quando si usano i metodi di Krylov precondizionati di KSP (il pacchetto di risolutore lineare di PETSc ) per risolvere un sistema lineare sparso come quelli ottenuti discretizzando e linearizzando equazioni differenziali parziali? Quali passi posso prendere per determinare cosa non va nel mio problema? Quali …
Per quanto ne so, i due grandi framework software generici per la scienza computazionale del Dipartimento dell'Energia sono PETSc e Trilinos . Sembrano simili a prima vista, al di là delle differenze di linguaggio (C contro C ++). Quali sono le principali differenze tra i due framework e quali fattori …
Sto usando il pacchetto di risolutore non lineare SNES di PETSc per risolvere un sistema di equazioni non lineari ottenuto discretizzando un'equazione differenziale parziale. Come posso determinare perché il risolutore non converge e cosa posso fare per risolvere con successo le mie equazioni?
Sto pianificando di utilizzare multigrid per calcolare alcuni autovalori e vettori e ho notato che PETSc ha un supporto di alto livello per multigrid. La documentazione PETSc afferma che questa parte di PETSc non deve essere utilizzata, poiché verrà presto sostituita. Quali altre librerie hanno un supporto di alto livello …
Vorrei sapere se esiste un modo rapido per calcolare la distanza euclidea di due vettori in Ottava. Sembra che non ci sia una funzione speciale per questo, quindi dovrei semplicemente usare la formula con sqrt?
Ovunque abbia visto, tutorial / documenti PETSc ecc. Dicono che è utile per l'algebra lineare e di solito specifica che i sistemi sparsi ne trarranno vantaggio. Che dire delle matrici dense? Sono preoccupato per risolvere per denso .A x = bUNX=BAx=bUNUNA Ho scritto il mio codice per CG e QMR …
Stavo giocando con PETSc e ho notato che quando eseguo il mio programma con più di un processo tramite MPI sembra funzionare ancora più lentamente ! Come posso verificare per vedere cosa sta succedendo?
Di solito, scrivo codice seriale e, quando lo faccio, scrivo unit test con alcuni framework di test in stile xUnit (MATLAB xUnit, PyUnit / nose o il framework di test C ++ di Google). Sulla base di una rapida ricerca su Google, non ho visto molto su come il codice …
Domanda: quali metodi sono disponibili per calcolare in modo accurato ed efficiente la struttura di sparsità di una matrice di elementi finiti? Info: sto lavorando su un risolutore di equazioni di pressione di Poisson, usando il metodo di Galerkin con una base quadratica di Lagrange, scritto in C, e usando …
Il mio sistema è un problema FE simmetrico con moltiplicatori di lagrange (ad es. Flusso di Stokes incomprimibile): (ABBTC)(ABTBC)\begin{pmatrix}A & B^T \\ B & C\end{pmatrix} dove è il caso tipico (mi sono anche assicurato che le equazioni siano numerate in modo tale che i moltiplicatori di Lagrange appaiano per ultimi). …
Devo risolvere lo stesso sistema lineare rado (da 300x300 a 1000x1000) con molti lati di destra (da 300 a 1000). Oltre a questo primo problema, vorrei anche risolvere sistemi diversi, ma con gli stessi elementi diversi da zero (solo valori diversi), ovvero molti sistemi sparsi con un modello di sparsità …
Quanto è più lento petsc4py vs c / c ++ / fortran? Mi rendo conto che dipenderà in modo significativo dal codice in esecuzione, ma che dire di qualcosa di semplice come un prodotto a matrice vettoriale?
Ecco un uso tipico dei puntatori a funzione in C. Vorrei fare qualcosa di simile in Fortran. Ho alcune idee, ma vorrei sapere se esiste un modo canonico per farlo. I puntatori e contesti di funzione passati dall'utente vengono memorizzati, quindi chiamati in seguito. typedef PetscErrorCode (*TSIFunction)(TS,PetscReal,Vec,Vec,Vec,void*); PetscErrorCode TSSetIFunction(TS ts,Vec …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.