| Autore |
Discussione  |
|
|
Daniele22
Nuovo Utente
|
Inserito il - 05/06/2004 : 20:11:36
|
Ciao a tutti ragazzi!Sono uno studente di Roma e navigando su internet ho scoperto questo forum,bellissima iniziativa!!! Vorrei chiedervi un favore:non è che per caso qualcuno di voi avrebbe a disposizione un codice in linguaccio C dell'algoritmo di Gauss-Siedel per la risoluzione dei sistemi lieari?Ho provato a cercare in rete,ma finora nessun risultato  Vi sarei enormemente grato!!!
|
|
|
genius
dott. ing. cav. ...FN
    

Regione: Puglia
Prov.: Bari
Città: Molfetta - Caput Mundi
|
Inserito il - 06/06/2004 : 09:51:55
|
| Daniele, innanzitutto grazie per i complimenti, ma purtoppo devo darti una notizia bruttina... è possibile ke molti abbiamo quell'algoritmo, ma è difficilissimo ke lo abbiano in c... qui a Bari x la materia in cui si studia quell'argomento si usa il matlab...al max potresti tradurlo tu dal matlab, no? |
"...e se non hai morale e se non hai passione se nessun dubbio ti assale perché la sola ragione che ti interessa avere è una ragione sociale soprattutto se hai qualche dannata guerra da fare non farla nel mio nome non farla nel mio nome che non hai mai domandato la mia autorizzazione se ti difenderai non farlo nel mio nome che non hai mai domandato la mia opinione..."
Un blog farlocco |
 |
|
|
Chilavert
admin
    

Regione: Puglia
Prov.: BA
Città: Bari
|
Inserito il - 06/06/2004 : 10:40:35
|
Il metodo di Gauss Siedel "Rilassato" in matlab è questo:
%*********************************** % File: GAUSERI.M % % Scopo: Metodo di Gauss Seidel RILASSATO per sist. lin. % % Uso: [xv,iter]=gauseri(a,f,xin,nmax,toll,omega) % % Input: A mat. sistema, F vet. termini noti, XIN vet. iniziale % NMAX numero max iterazioni, TOLL precisione richiesta. % OMEGA fattore di rilassamento % % Output: XV vettore soluzione, ITER numero iterazioni % Richiami: % % Commenti: Non si controllano le condizioni di convergenza. % Attenzione: il ciclo for j=1:n .... e' indispensabile % per la corretta eseguzione dell'algoritmo. % %***********************************
function [xv,iter]=gauseri(a,f,xin,nmax,toll,omega) % Costruzione matrici d'iterazione [n,m]=size(a); d=diag(a); dm1=ones(n,1)./d; dm1=diag(dm1); b=eye(a)-dm1*a; g=dm1*f; bu=triu(b); bl=tril(b); % Iterazioni xv=xin; xn=xv; i=0; while i < nmax, for j=1:n; xn(j)=(1-omega)*xv(j)+omega*(bu(j,:)*xv+bl(j,:)*xn+g(j)) end; if abs(xn-xv)>toll, iter=i; i=nmax+1; else xv=xn; i=i+1; end, end if i==nmax, disp(' *** ERROR *** non converge '), end
convertirlo in C non è poi così difficile... il Matlab è alquanto una cazzata... se ti servono aiuti, non esitare a chiedere...
ciaux |
E' un bene per il Prof. Xxxxxxx che sappia con chi ha a che fare. Pensa a studiare e non agli esempi, o ad altre strade per così dire, che questa volta mi sa che non attacca. [cit.]
Tutti professori dall'esterno, e poi parlano persone che per prendere un voto decente ripetono l'esame 30 volte e poi fanno i sapientoni con chi segue la prima volta vedi chilavert [cit.] |
 |
|
| |
Discussione  |
|
|
|