Da matlab a c++
Ciao a tutti...
sto cercando di tradurre un programma da matlab in c++, esiste un'analogo in c++ del linsolve di matlab???
grazie 1000 per l'aiuto ::))
sto cercando di tradurre un programma da matlab in c++, esiste un'analogo in c++ del linsolve di matlab???
grazie 1000 per l'aiuto ::))
Risposte
ecco ho scaricato lapackpp
ma ora come si usa?scusami...
cioè ho visto che devo aggiungere una libreria al mio programma ma non riesco a capire quale..
grazie davvero

cioè ho visto che devo aggiungere una libreria al mio programma ma non riesco a capire quale..
grazie davvero

bhe basta vedere i doc con tutto l'iter:
http://lapackpp.sourceforge.net/
sezione Documentation (con le funzioni) e Library Usage per compilare.
http://lapackpp.sourceforge.net/
sezione Documentation (con le funzioni) e Library Usage per compilare.

alla fine armata di santa pazienza ho fatto io il programma per risolvere un sistema 
sembrava tutto idilliaco ma ad un tratto non funziona più...cioè visto che lo uso iterativamente funziona le prime due volte e poi mi da risultati sballati...Mah...ahhrgggg
grazie comunque per la pazienza, grazie grazie

sembrava tutto idilliaco ma ad un tratto non funziona più...cioè visto che lo uso iterativamente funziona le prime due volte e poi mi da risultati sballati...Mah...ahhrgggg

grazie comunque per la pazienza, grazie grazie

guarda che è un problema di programmazione se non ti funziona più, se posti il codice ti do una mano volentieri, già una versione "iterativa" non è il massimo in questi casi

Per risolvere un sistema se il sistema è MOLTO grosso (non meno di $1000\times 1000$) direi che usare lapack, PLASMA o, se hai una scheda grafica nvidia abbastanza recente, MAGMA (tutte e tre sono state sviluppate dalle stesse persone per architetture differenti) sia l'ideale. Se la matrice è più piccola puoi anche usare ublas (è detro boost numeric) che ha il vantaggio che spesso la libreria boost ce l'hai già nel sistema per altre ragioni. Se hai voglia di spendere soldi esiste anche la libreria intel (quella amd forse non è a pagamento) ma te lo sconsiglio perché le altre non le devi pagare. Lapack è in generale una buona scelta. Esistono comunque alternative se cerchi in giro.
Per matrici sparse ci sono più alternative. Se cerchi "sparse linear solver" con google ne trovi un po'. In generale se la matrice è sparsa conviene usare un'algoritmo che ne tiene conto.
Io attualmente sto implementando il pivoting nella decomposizione LU di ViennaCL ma attualmente penso che la libreria non sia ancora sufficientemente stabile per progetti seri, almeno la parte sulle matrici dense.
Per matrici sparse ci sono più alternative. Se cerchi "sparse linear solver" con google ne trovi un po'. In generale se la matrice è sparsa conviene usare un'algoritmo che ne tiene conto.
Io attualmente sto implementando il pivoting nella decomposizione LU di ViennaCL ma attualmente penso che la libreria non sia ancora sufficientemente stabile per progetti seri, almeno la parte sulle matrici dense.