Torna indietro   Hardware Upgrade Forum > Software > Programmazione

NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT
Nelle ultime settimane abbiamo provato tre delle proposte top di gamma di NZXT nelle categorie case, dissipatori e ventole. Rispettivamente, parliamo dell'H9 Flow RGB+, Kraken Elite 420 e F140X. Si tratta, chiaramente, di prodotti di fascia alta che si rivolgono agli utenti DIY che desiderano il massimo per la propria build. Tuttavia, mentre i primi due dispositivi mantengono questa direzione, le ventole purtroppo hanno mostrato qualche tallone d'Achille di troppo
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz
ASUS ROG Swift OLED PG34WCDN è il primo monitor gaming con pannello QD-OLED Gen 5 a layout RGB Stripe Pixel e 360 Hz su 34 pollici: lo abbiamo misurato con sonde colorimetriche e NVIDIA LDAT. Ecco tutti i dati
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico
Nothing Phone (4a) Pro cambia pelle: l'alluminio unibody sostituisce la trasparenza integrale, portando una solidità inedita. Sotto il cofano troviamo uno Snapdragon 7 Gen 4 che spinge forte, mentre il display è quasi da top dig amma. Con un teleobiettivo 3.5x e la Glyph Matrix evoluta, è la prova di maturità di Carl Pei. C'è qualche compromesso, ma a 499EUR la sostanza hardware e la sua unicità lo rendono un buon "flagship killer" in salsa 2026
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-06-2009, 15:57   #1
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
Miglior approccio per risolvere sistema associato a matrice pentadiagonale

Ciao,
mi ritrovo a dover scrivere un programma in grado di risolvere una matrice penta o eptadiagonale ed ero alla ricerca di un metodo di risoluzione.
Ovviamente come requisiti richiesti sono di avere un basso costo computazionale, bassa occupazione di memoria e limitare per quanto possibile la propagazione degli errori

Cercando in rete ho trovato poco per non dire nulla, a parte qualche subrourtine fortran poco commentate....

Prendendo esempio dalla risoluzione delle matrici tridiagonali è un buon approccio utilizzare una versione modificata dell'algoritmo di Thomas?
Ossia applicando una forward substitution->back substitution (algoritmo di Thomas) e aggiungendo una nuova forward substitution?

Ci sono altre vie per ottenere lo stesso/migliore risultato?

Ultima modifica di Dânêl : 30-06-2009 alle 17:40.
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 30-06-2009, 16:09   #2
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
ehmm...
che intendi con risoluzione di una matrice?
la risoluzione delle equazioni lineari associate o qualcos'altro?
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 30-06-2009, 17:37   #3
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
si scusate ho scritto una cosa per un altra...
ovviamente si tratta di risolverei un sistema di equazioni lineari associate ad una matrice
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 30-06-2009, 18:57   #4
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
credo che meglio di quest'algoritmo non puoi ottenere dato che ha complessità O(n).
Al massimo puoi migliorare l'occupazione di memoria nel caso tu non l'abbia già fatto memorizzando le diagonali in un oggetto che mantiene in memoria un vettore per ogni diagonale e fornisce le opportune trasformazioni di coordinate quando accedi ad un elemento della matrice.....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 30-06-2009, 19:24   #5
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
grazie della risposta.
Si le diagonali sono già memorizzate in vettori, anche perchè viene richiesto nella traccia

Quello che mi ha fatto sorgere qualche dubbio su questo metodo è che non viene utilizzato...
Se devo essere sincero non l'ho provato ancora non avendo a portata di mano un sistema pentadiagonale con relative soluzioni per fare il confronto. Però pensandoci non vedo il motivo per il quale non debba funzionare

Ho girato parecchio sulla rete prima di scrivere qui. Quello che ho trovato è stato un sito dove prima di applicare Thomas procedeva all'eliminazione opportuna di alcuni termini e una libreria (su netlib) che applica, anche se non vorrei sbagliarmi, il metodo di eliminazione di gauss (ovviamente senza pivot)

Dato i vantaggi di questo metodo (semplicità e velocità) non vorrei che applicando gauss ci fossero dei vantaggi tali da giustificare un O[ (n^3)/3+n^2-n/3)], come per esempio una limitata propagazione degli errori

PS ma il costo di 3 sostituzioni (backward forward) non dovrebbe essere O( 3n(n+1)/2)?
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2009, 00:19   #6
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da Dânêl Guarda i messaggi
grazie della risposta.
Si le diagonali sono già memorizzate in vettori, anche perchè viene richiesto nella traccia

Quello che mi ha fatto sorgere qualche dubbio su questo metodo è che non viene utilizzato...
Se devo essere sincero non l'ho provato ancora non avendo a portata di mano un sistema pentadiagonale con relative soluzioni per fare il confronto. Però pensandoci non vedo il motivo per il quale non debba funzionare

Ho girato parecchio sulla rete prima di scrivere qui. Quello che ho trovato è stato un sito dove prima di applicare Thomas procedeva all'eliminazione opportuna di alcuni termini e una libreria (su netlib) che applica, anche se non vorrei sbagliarmi, il metodo di eliminazione di gauss (ovviamente senza pivot)

Dato i vantaggi di questo metodo (semplicità e velocità) non vorrei che applicando gauss ci fossero dei vantaggi tali da giustificare un O[ (n^3)/3+n^2-n/3)], come per esempio una limitata propagazione degli errori

PS ma il costo di 3 sostituzioni (backward forward) non dovrebbe essere O( 3n(n+1)/2)?
mmm...no.
Perchè dovrebbe essere 3n(n+1)?
L'implementazione che ho visto su wikipedia di thomas è O(n), se fosse come dici tu sarebbe quadratico...
invece la complessità di gauss che hai riportato è corretta dato che è O(n^3).
Ovviamente la propagazione potrebbe essere un problema, ma in generale non si può sapere dato che dipende dal problema specifico (in particolare dalla dimensione dei dati) e dai requisiti che hai....
__________________

Ultima modifica di ^TiGeRShArK^ : 01-07-2009 alle 00:21.
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2009, 09:47   #7
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
quel valore l'avevo tirato fuori tenendo conto del costo computazionale delle sostituzioni che venivano ripetute 3 volte.
Evidentemente non è il metodo corretto per calcolarlo

Vorrà dire che ci dovrò riflettere meglio....
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2009, 12:35   #8
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
Quote:
Originariamente inviato da Dânêl Guarda i messaggi
quel valore l'avevo tirato fuori tenendo conto del costo computazionale delle sostituzioni che venivano ripetute 3 volte.
Evidentemente non è il metodo corretto per calcolarlo

Vorrà dire che ci dovrò riflettere meglio....
appunto, ma è 3(n +1), ovvero O(n) per tre sostituzioni, non O(N^2) che ti verrebbe fuori da 3n(n + 1)...
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2009, 12:57   #9
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485

Qualcosa non quadra

quell' n(n+1)/2 me lo sono ritrovato su alcune dispense.
Viene calcolato il costo computazionale del metodo di eliminazione di gauss e al costo della trasformazione del sistema lineare in triangolare superiore viene sommato quel valore, riportato come costo delle sostituzioni all'indietro.

Trattandosi di un sistema "particolare" risulta un valore diverso?
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 01-07-2009, 14:06   #10
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
non lo so a cosa si riferiva quel valore delle tue dispense...
ma vedendo da wikipedia questo codice per le tridiagonali:
Codice:
void TridiagonalSolve(const double *a, const double *b, double *c, double *d, double *x, unsigned int n){
	int i;
 
	/* Modify the coefficients. */
	c[0] /= b[0];				/* Division by zero risk. */
	d[0] /= b[0];				/* Division by zero would imply a singular matrix. */
	for(i = 1; i < n; i++){
		double id = (b[i] - c[i-1] * a[i]);	/* Division by zero risk. */
		c[i] /= id;				/* Last value calculated is redundant. */
		d[i] = (d[i] - d[i-1] * a[i])/id;
	}
 
	/* Now back substitute. */
	x[n - 1] = d[n - 1];
	for(i = n - 2; i >= 0; i--)
		x[i] = d[i] - c[i] * x[i + 1];
}
Si hanno due cicli separati e non annidati, e dunque la complessità è lineare e non quadratica.....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2009, 11:08   #11
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
Quote:
Originariamente inviato da ^TiGeRShArK^ Guarda i messaggi
non lo so a cosa si riferiva quel valore delle tue dispense...
esattamente a quello che avevo detto in precedenza .
Ti riporto il testo

Quote:
Inoltre il costo delle sostituzioni al'indietro è dato da n(n+1)/2 moltiplicazioni o divisioni
Non credo dipenda dal fatto che si stesse analizzando il metodo di Gauss perchè le sostituzioni all'indietro sono indipendenti da qualsiasi altro ciclo....e non credo di interpretare male il testo...
Dânêl è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2009, 11:38   #12
^TiGeRShArK^
Senior Member
 
L'Avatar di ^TiGeRShArK^
 
Iscritto dal: Jul 2002
Città: Reggio Calabria -> London
Messaggi: 12112
si, ma nel caso dell'algoritmo preso da wikipedia la back-sostituion è O(n), con n tra l'altro uguale a 5 nel caso di matrice pentadiagonale....
__________________
^TiGeRShArK^ è offline   Rispondi citando il messaggio o parte di esso
Old 04-07-2009, 18:34   #13
Dânêl
Senior Member
 
Iscritto dal: Jul 2008
Messaggi: 485
si non dico che hai torto....bho
comunque dato che questo sembra essere il metodo migliore per risolvere un sistema con matrice pentadiagonale, sbattere la testa su questa discrepanza di costo computazionale sarebbe solo questione di principio

La risposta fondamentale è già stata data
Dânêl è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abbiamo provato il tris d'assi di NZXT NZXT H9 Flow RGB+, Kraken Elite 420 e F140X: abb...
ASUS ROG Swift OLED PG34WCDN recensione: il primo QD-OLED RGB da 360 Hz ASUS ROG Swift OLED PG34WCDN recensione: il prim...
Recensione Nothing Phone (4a) Pro: finalmente in alluminio, ma dal design sempre unico Recensione Nothing Phone (4a) Pro: finalmente in...
WoW: Midnight, Blizzard mette il primo, storico mattone per l'housing e molto altro WoW: Midnight, Blizzard mette il primo, storico ...
Ecovacs Goat O1200 LiDAR Pro: la prova del robot tagliaerba con tagliabordi integrato Ecovacs Goat O1200 LiDAR Pro: la prova del robot...
Anthropic ha un'AI che trova falle in Wi...
I 10 migliori sconti Amazon del weekend:...
Con un coupon scendono ancora: le super ...
Minimo storico per Samsung Galaxy S26 Ul...
Si è conclusa la missione lunare ...
EK Waterblock si arrende agli aumenti, i...
Geekbench si aggiorna: tutti i test con ...
Per la prima volta un computer quantisti...
Telecamere Reolink 4K su Amazon: Wi-Fi 6...
Anthropic vuole farsi i chip da sola? Co...
Il fondatore di Framework: il personal c...
JBL Live Flex 3 a 129€ su Amazon: ANC ad...
Come un uomo ha costruito un'azienda da ...
Multe fino a 400 euro anche se hai pagat...
Tapo lancia una valanga di offerte su Am...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 11:44.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v