|
|
|
|
Strumenti |
24-06-2003, 20:31 | #1 |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
#include "matutils.h"
ho trovato un codice sorgente che richiede questa libreria....qlc di voi la conosce oppure ce l'ha?
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
24-06-2003, 20:58 | #2 |
Senior Member
Iscritto dal: Feb 2003
Città: Biella
Messaggi: 843
|
io ce l ho...vuoi ke te passo via mail?
__________________
Ubl~Team Rulez ^_^ |
24-06-2003, 21:22 | #3 | |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
Quote:
mappazzo@email.it
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
|
24-06-2003, 21:24 | #4 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
ma non è un header per mac? che ne devi fare?(sono curioso)
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
24-06-2003, 21:25 | #5 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
e poi...non si chiama macutils?
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
24-06-2003, 21:28 | #6 | |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
Quote:
se nn riesco a far andare questo devo mettermi di santa pazienza e rifarmene uno per conto mio, ma sinceramente nn mi va visto che ho da preparare altri 2 esami oltre a questo
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
|
24-06-2003, 21:35 | #7 |
Senior Member
Iscritto dal: Feb 2003
Città: Biella
Messaggi: 843
|
Una tesina simile l ho dovuta fare anke io al primo periodo didattico...però o non con C, ma con Matlab
__________________
Ubl~Team Rulez ^_^ |
24-06-2003, 21:39 | #8 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
#include <stdio.h>
#include <stdlib.h> #include <math.h> #include <matutils.h> int JacobiSolve(int n, const matrice a, const double *b, double *x); int GaussSeidelSolve(int n, const matrice a, const double *b, double *x); /* #################### */ int MAXITER; double EPS; int JacobiSolve(int n, const matrice a, const double *b, double *x) { int i,j, niter=0; double sum, *oldx, diff=100.0; oldx = calloc(n,sizeof *oldx); for (i=0; i<n; i++) oldx[i]=x[i]; while (diff>EPS && ++niter<MAXITER) { diff = 0.0; for (i=0; i<n; i++) { sum = b[i]; for (j=0; j<n; j++) if (j!=i) sum -= a[i][j]*x[j]; oldx[i] = sum / a[i][i]; diff += fabs(x[i]-oldx[i]); } printf("\n------------------------------"); printf("\nITERATA N= %d\n",niter); printf("\nVettore suluzioni di PARTENZA "); StampaVet(n,x); printf("\nVettore suluzioni al passo %d ",niter); StampaVet(n,oldx); printf("DIFFERENZA N= %3.10f\n",diff); for (i=0; i<n; i++) x[i] = oldx[i]; } free(oldx); if (niter==MAXITER) return 0; return niter; } int GaussSeidelSolve(int n, const matrice a, const double *b, double *x) { int i,j, niter=0; double sum, oldxi, diff=1.; while (diff>EPS && ++niter<MAXITER) { diff = 0.0; for (i=0; i<n; i++) { sum = b[i]; for (j=0; j<n; j++) if (j!=i) sum -= a[i][j]*x[j]; oldxi = x[i]; x[i] = sum / a[i][i]; diff += fabs(x[i]-oldxi); printf("\nSuluzione di x%d al passo %d= %3.10f",i,niter,x[i]); } printf("\n------------------------------"); printf("\nITERATA N= %d\n",niter); printf("\nVettore suluzioni: "); StampaVet(n,x); printf("DIFFERENZA N= %3.10f\n",diff); } if (niter==MAXITER) return 0; return niter; } int main(int argc, char *argv[]) { int i, n; matrice a, l; double *x1, *x2, *x3; FILE *in = stdin; if (argc!=2) { fprintf(stderr,"Uso:\n" "\t%s <nomefile> Legge matrice dal file (usare '-' per stdin)\n" ,argv[0]); return 1; } a = ReadFile(argv[1],&n); if (!n) {printf("\n\nAttenzione nome di file errato: %s\n",argv[1]); return 0;} l=alloca_matrice(n); printf("\n########################################################\n"); printf("\nMatrice iniziale caricata:\n"); printf("Di dimensione N= %d\n",n); Stampa(n,a); printf("\n\nInserisci il vettore dei termini noti (b) \n"); printf("\nElementi separati da spazio\n"); x1 = calloc(n, sizeof *x1); for (i=0; i<n; i++) fscanf(in,"%lf",&x1[i]); printf("\n\nInserisci il vettore con la soluzione iniziale"); printf("\nElementi separati da spazio\n"); x2 = calloc(n, sizeof *x2); for (i=0; i<n; i++) fscanf(in,"%lf",&x2[i]); x3 = calloc(n, sizeof *x3); for (i=0; i<n; i++) x3[i]=x2[i]; printf("\n\nInserisci il numero massimo di iterate\n"); fscanf(in,"%d",&MAXITER); printf("\n\nInserisci il criterio di troncamento \n"); fscanf(in,"%lf",&EPS); printf("\n########################################################\n"); printf("\nMatrice iniziale:\n"); printf("Di dimensione N= %d\n",n); Stampa(n,a); printf("\n--------------------------------------------------------\n"); printf("\nVettore dei termini noti trasposto. A.x = "); StampaVet(n,x1); printf("\n--------------------------------------------------------\n"); printf("\nVettare Soluzione di partenza trasposto. A.x = "); StampaVet(n,x2); printf("\n--------------------------------------------------------\n"); printf("Numero massimo di iterate consentite= %d\n",MAXITER); printf("Epsilon di troncamento= %6.10f\n",EPS); printf("\n########################################################\n"); printf("\n Soluzione del sistema con il metodo di Jacobi \n"); printf("\nVettore suluzioni di PARTENZA "); StampaVet(n,x2); i = JacobiSolve(n,a,x1,x2); if ( !i ) printf("\nJacobi non converge. Numero di Iterate superiore a quello consentito\n"); else { printf("\nSoluzione trovata: "); StampaVet(n,x2); printf("Numero di iterate eseguite: %d",i); } printf("\n########################################################\n"); printf("\n--------------------------------------------------------\n"); printf("\n########################################################\n"); printf("\n Soluzione del sistema con il metodo di Gauss-Seidel \n"); printf("\nVettore suluzioni di PARTENZA "); StampaVet(n,x3); i = GaussSeidelSolve(n,a,x1,x3); if ( !i ) printf("\nGauss-Seidel non converge. Numero di Iterate superiore a quello consentito\n"); else { printf("\nSoluzione trovata: "); StampaVet(n,x3); printf("Numero di iterate eseguite: %d",i); } printf("\n########################################################\n"); /* freemem */ free(x2); free(x1); libera_matrice(n,a); libera_matrice(n,l); return 0; } E' verooo , ma vaaa, ma LOL , anch'io mi guardai sta cosa, appena ho visto il codice che avevi postato mi si è accesa la lampadina!!!
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
24-06-2003, 21:41 | #9 | |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
Quote:
adesso che ho messo la libreria che mancava mi da anche gli altri errori in fase di compilazione...io c nn lo tocco da un anno!!! e l'ho stuudiato 3 giorni!!!!!! nn so che fare!!!!!!!!!
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
|
24-06-2003, 21:43 | #10 |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
ma allora na tesina del genere l'avete fatta tutti!!!!!!!!!!
a me servirebbe una tipo questa...basta fare al computer un programma che utilizzi un metodo iterativo...magari qlc anima pia mi manda il file word...
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
24-06-2003, 21:48 | #11 | |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
Quote:
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
|
24-06-2003, 21:54 | #12 |
Senior Member
Iscritto dal: Mar 2002
Città: Italy/Usa
Messaggi: 2815
|
scusa ma che errore ti dà in compilazione? e con che compilatore ed SO?
__________________
"Utilizzando atomi pentavalenti drogheremo il silicio di tipo n; Utilizzando atomi trivalenti drogheremo il silicio di tipo p; Utilizzando della cannabis ci drogheremo noi e vedremo il silicio fare cose impossibili" - DSDT-HowTo |
24-06-2003, 22:07 | #13 | |
Senior Member
Iscritto dal: May 2002
Città: Roma
Messaggi: 676
|
Quote:
ad esempio nella dichiarazione della funzione JacobiSolve mi da l'errore "parse error before a"...gli altri errori sono tipo questo
__________________
CERCO ELETTRONICA MAXTOR D740X-6L Aspire Timeline X 4820tg 5464g50mnks | Q6600+P5K Premium wi-fi @p+GTS 250 1GB+ 2x Hitachi 1,5 TB (Raid1) |
|
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 12:01.