Sto cercando un modo per eseguire operazioni Matrix in PHP in modo semplice ed efficiente.Come eseguire le operazioni Matrix PHP in modo semplice ed efficiente
Voglio essere in grado di fare le operazioni di base come Matrix Inverti, Moltiplica, Determinante, aggiungere, sottrarre, Solving Equazioni lineari Ax = B, trasporre, ecc
sto guardando matrici di piccole dimensioni (La matrice che voglio inversione è al massimo 100x100, e i vettori che voglio moltiplicare/trasporre possono arrivare ad essere 1000x1).
Ho trovato un pacchetto PEAR Math_Matrix ma sembra trascurato (sviluppo con E_STRICT e genera molti avvisi deprecati). Gli altri link che ho trovato sembrano per lo più rotti e non aggiornati.
Ho trovato il pacchetto Lapack PHP ma non ha altre operazioni come la moltiplicazione, la sottrazione o la trasposizione.
Conosco un'altra opzione è quella di utilizzare l'integrazione con altri software come Octave o Sage ma non siamo sicuri di volerlo fare ancora (il team finanziario disprezza la sintassi Python e il team IT è preoccupato per l'overhead di Octave).
Esiste una libreria autonoma che chiunque utilizza per questo tipo di operazioni con matrice che ha tutte le operazioni di base ed è aggiornata?
Una porta PHP di JAMA è un altro so che ha certamente alcune di queste operazioni, ma probabilmente altrettanto datato. Michael Bommarito ha fatto un [polyfit add-on] (http://php.livejournal.com/270125.html) che potrebbe anche essere utile. Comunque, una di quelle vecchie librerie dovrebbe darti il coraggio della matematica –
Dal punto di vista di Octave/Sage, penso che sarebbe molto utile sapere esattamente quale tipo di matrici stai guardando. Presumo che siano di numeri in virgola mobile e che non saranno il tipo che sono mal condizionati per l'inversione numerica.Usare numpy (con o senza Sage) potrebbe essere un'opzione - ma ancora una volta, l'aggiornamento della domanda con un esempio specifico (forse un collegamento ad esso) sarebbe davvero utile. Naturalmente, R è un'altra opzione. – kcrisman
Non ho ancora una matrice campione da mostrare. Stiamo solo aumentando i requisiti/le soluzioni per il prossimo progetto =/Ma sì, sono sicuramente numeri float. – Jimmy