Acqua: come utilizzarla, generarla e sfruttarla
ram pump theory ,teoria esimulazioni

VISUALIZZA L'ALBUM

Pag: (6)   [1]   2   3   4   5   6    (Ultimo)


FinePagina

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 20:09:30

l'acqua ha un modulo elastico di 2,2GPa

se consideriamo un tubo tuttavia l'elasticità del tubo si somma a quella del fluido generando un modulo elastico B non ben noto a priori ma misurabile

in pratica la colonna d'acqua ha una costante elastica direttamente proporzionale alla sezione ed inversamente alla lunghezza





Immagine Allegata: BK.png
 
ForumEA/C/BK.png



Modificato da qqcreafis - 23/01/2015, 22:14:40


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 23:01:12

considerando un tubo di acqua

(errata: tra le F c'è il +, na il risultato è giusto)



Immagine Allegata: modulo2.png
 
ForumEA/C/modulo2.png



Modificato da qqcreafis - 23/01/2015, 23:25:59


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 23:04:09

ii



Immagine Allegata: modulo3.png
 
ForumEA/C/modulo3_1.png



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 23:08:56

la cosa più importante di questo modello è l'ultima riga in quanto permette di calcolare il modulo elastico reale B quello dovuto alla compressibilità dell'acqua e all'elasticità del tubo

B=v^2*densità

ma densità di che? forse solo acqua in quanto solo questa si sposta



Modificato da qqcreafis - 23/01/2015, 00:12:03


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 23:23:55

tubo acqua suddiviso in masserelle (0,1,2, N) con velocità iniziale V0 urta contro una pressione al tempo t=0 che genera forza F

http://www.energialternativa.info/Public/NewForum/ForumEA/C/colonna.PNG

passiamo alla simulazione numerica notare le due masse estreme sono differenti in quanto a forze.


evoluzione del primo punto n=0
http://www.energialternativa.info/public/newforum/ForumEA/C/modulo4.png

evoluzione di un punto intermedio

http://www.energialternativa.info/public/newforum/ForumEA/C/modulocentrale.png

evoluzione ultimo punto n = N

http://www.energialternativa.info/public/newforum/ForumEA/C/nn.png




Immagine Allegata: colonna.PNG
 
ForumEA/C/colonna.PNG



Modificato da qqcreafis - 23/01/2015, 23:24:24


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 22/01/2015 23:37:31

ammettiamo che la "colonna" di acqua orizzontale viaggi compatta a v=5.5M/s verso sinistra
fissato L0 ad es 1mm
0

0+L0

0+2L0

0+3L0

ecc ecc


io fisso lo spostamento ad es 0,00001m

e di conseguenza è fissato deltaT=0,00001m/5,5m/s




la seconda colonna


0 -0,00001

0+L0 -0,00001

0+2L0-0,00001

0+3L0-0,00001

ecc ecc


nella terza colonna si fanno evolvere tutte le coordinate secondo le leggi sopra

attenzione si possono fare prove semplicemente mettendo la pressione a zero, in questo modo la colonna deve marciare indisturbata



Modificato da qqcreafis - 25/01/2015, 19:36:48


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

NonSoloBolleDiA...

Avatar
PetaWatt


AMMINISTRATORE
Msg:13786

Stato:



Inviato il: 22/01/2015 23:58:10

CITAZIONE (qqcreafis, 22/01/2015 23:37:31 ) Discussione.php?212316&1#MSG7


in pseudocodice

qualsiasi pseudocodice scriverai si capirà perfettamente ma okkio....non mi sembra che nessuno sia andato oltre le formule...fermati ora, sei ancora in tempo, non la senti la vocina che dice di fermarti?



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripet...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 23/01/2015 00:06:58

hic sunt leones



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

NonSoloBolleDiA...

Avatar
PetaWatt


AMMINISTRATORE
Msg:13786

Stato:



Inviato il: 23/01/2015 00:19:12

cavolo, hai proprio ragione...parlando di acqua oggi una bella doccia fredda: LINK



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripet...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 31/01/2015 00:26:19


CITAZIONE

Sub Main()

Dim Doc As Object
Dim Sheet As Object
Dim Cell As Object

Dim psi(999, 9999) As Double ' matricetempo lunghezza

Dim Rho As Double ' densità fluido

Dim V0 As Double ' velocità iniziale colonna

Dim deltat As Double ' intervallo di tempo

Dim N As Integer ' numero di interazioni tra due visualizzazioni

Dim tot As Double 'tempo totale simulazione

Dim tintermedio As Double 'tempo N*deltat

Dim ltot As Double ' lunghezza ariete

Dim L0 As Double ' distanza tra segmenti L0=ltot/10000

Dim B As Double ' compressibilità

Dim Vfase As Double ' velocità sperimentale

Dim D As Double ' diametro ariete

Dim P As Double ' pressione contraria

Dim F As Double ' forza contraria

Dim A As Double ' area sezione

Dim I, J, K As Integer ' contatori



'Valori

'Rho=1000 'densità kg/m^3

'ltot = 2 'lunghezza ariete metri

'Vfase = 30 'velocita fase onda sperimentale m/s

'V0 = 5.5 'velocità ariete m/s



Doc = StarDesktop.CurrentComponent
Sheet = Doc.Sheets(0)

Cell = Sheet.getCellByPosition(0, 1)
Rho = Cell.Value

Cell = Sheet.getCellByPosition(2, 1)
Vfase = Cell.Value

Cell = Sheet.getCellByPosition(4, 1)
V0 = Cell.Value

Cell = Sheet.getCellByPosition(6, 1)
ltot = Cell.Value

Cell = Sheet.getCellByPosition(7, 1)
D = Cell.Value

Cell = Sheet.getCellByPosition(9, 1)
deltat = Cell.Value

Cell = Sheet.getCellByPosition(10, 1)
N = Cell.Value

Cell = Sheet.getCellByPosition(11, 1)
P = Cell.Value

A = 3.14 * D ^ 2 / 4
F = P * A

Cell = Sheet.getCellByPosition(15, 1)
Cell.Value = F

tot = deltat * N * 999

Cell = Sheet.getCellByPosition(12, 1)
Cell.Value = tot

B = Vfase * Vfase * Rho

Cell = Sheet.getCellByPosition(14, 1)
Cell.Value = B

L0 = ltot / 10000

Cell = Sheet.getCellByPosition(13, 1)
Cell.Value = L0

'inizializzazione
Cell = Sheet.getCellByPosition(3, 3)
Cell.String = "inizio"
psi(0, 0) = 0

For I = 1 To 9999

psi(0, I) = L0 + psi(0, I - 1)

Next I

'primo spostamento V0*deltat +psi precedente



For I = 0 To 9999

psi(1, I) = psi(0, I) - V0 * deltat

Next I

For J = 2 To 999

psi(J, 0) = 2 * psi(J - 1, 0) - psi(J - 2, 0) + 1 / Rho * (deltat / L0) ^ 2 * (P * L0 + B * (psi(J - 1, 1) - psi(J - 1, 0) - L0))
For I = 1 To 9998
psi(J, I) = 2 * psi(J - 1, I) - psi(J - 2, I) + B / Rho * (deltat / L0) ^ 2 * (psi(J - 1, I + 1) - 2 * psi(J - 1, I) + psi(J - 1, I - 1))
Next I
psi(J, 9999) = 2 * psi(J - 1, 9999) - psi(J - 2, 9999) + B / Rho * (deltat / L0) ^ 2 * (psi(J - 1, 9999) - psi(J - 1, 9998) - L0)



Cell = Sheet.getCellByPosition(5, 6)
Cell.Value = J

Cell = Sheet.getCellByPosition(J, 10)
Cell.Value = psi(J, 0)
'Cell = Sheet.getCellByPosition(j,11)
'Cell.Value =psi(j,1)
'Cell = Sheet.getCellByPosition(j,12)
'Cell.Value =psi(j,2)
'Cell = Sheet.getCellByPosition(j,13)
'Cell.Value =psi(j,3)


Next J





For I = 0 To 999

Cell = Sheet.getCellByPosition(I, 10)
Cell.Value = psi(I, 0)

Next I







'Cell = Sheet.getCellByPosition(5, 5)
'Cell.String = "o"

'for I=0 to 9999

'Cell = Sheet.getCellByPosition(0, I+10)
'Cell.Value =psi(0,I)

'next I

'for I=0 to 9999

'Cell = Sheet.getCellByPosition(1, I+10)
'Cell.Value =psi(1,I)

'next I

'for I=0 to 9999

'Cell = Sheet.getCellByPosition(2, I+10)
'Cell.Value =psi(2,I)

'next I


Cell = Sheet.getCellByPosition(6, 6)
Cell.String = "fine"
'Doc = StarDesktop.CurrentComponent
'Sheet = Doc.Sheets(0)

'Cell = Sheet.getCellByPosition(2, 0)
'Cell.String = "Test"

MsgBox Cell.Value



End Sub




è in basic di open office calc e si interfaccia con un foglio cal ma... è pietosamente lento mi alloca 1,5 GB di memoria insomma non va


le macro di vba in excel vanno meglio si possono compilare?

come si fa a leggere le celle di un foglio in vba e a scriverle????????




Modificato da qqcreafis - 31/01/2015, 00:31:50


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

NonSoloBolleDiA...

Avatar
PetaWatt


AMMINISTRATORE
Msg:13786

Stato:



Inviato il: 31/01/2015 06:31:34

miiii....scappo vado a lavoro...poi rispondo a tutto!!!



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripet...

 

NonSoloBolleDiA...

Avatar
PetaWatt


AMMINISTRATORE
Msg:13786

Stato:



Inviato il: 31/01/2015 14:50:16

CITAZIONE (qqcreafis, 31/01/2015 06:31:34 ) Discussione.php?212316&1#MSG11

è in basic di open office calc e si interfaccia con un foglio cal ma... è pietosamente lento mi alloca 1,5 GB di memoria insomma non va

ci sarà un motivo se ce l'ho con bill

CITAZIONE (qqcreafis, 31/01/2015 06:31:34 ) Discussione.php?212316&1#MSG11

le macro di vba in excel vanno meglio si possono compilare?

si, ma occorre portare il codice in vb6 e diventa tutto estremamente più veloce oltre che stand-alone...se non dovesse bastare si possono fare delle dll in altri linguaggi ( c ).

CITAZIONE (qqcreafis, 31/01/2015 06:31:34 ) Discussione.php?212316&1#MSG11

come si fa a leggere le celle di un foglio in vba e a scriverle????????

visto che sei tu che lo chiedi...non penso di aver capito la domanda...

inizio a vedere il codice...



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripet...

 

NonSoloBolleDiA...

Avatar
PetaWatt


AMMINISTRATORE
Msg:13786

Stato:



Inviato il: 31/01/2015 16:31:05

CITAZIONE (qqcreafis, 24/01/2015 19:25:39 ) Discussione.php?211974&6#MSG78

maledizione la precisione numerica di excel fa schifo ci vorrebbero almeno dei double dopo pochissime iterazioni diverge tutto causa errore di calcolo

toh...ora ho capito quello che dicevi...overflow error all'iterazione J=24

Scarica allegato

RamPumpTheory.zip ( Numero download: 215 )



---------------
Chi sa raccontare bene le bugie ha la verità in pugno (by PinoTux).
Un risultato se non è ripet...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 31/01/2015 17:16:58

hem... potrei vedere il listato ..


mi interfacciavo a un foglio di calcolo per vedere il risultato che è la matrice psi(1000,10000) = 10 milioni di double (80MB solo di matrice (...si lo so è una roba da ciccioni) ma questo non giustifica 1,5GB di foglio di calcolo)

ovvero plottavo almeno una riga della matrice sul foglio per fare il grafico



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 

qqcreafis

Avatar
PetaWatt


Utente
Msg:10029

Stato:



Inviato il: 31/01/2015 17:30:12

come faccio a scaricarmi vb6 ?????????



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere ...

 
 InizioPagina
 

Pag: (6)   [1]   2   3   4   5   6    (Ultimo)

Versione Completa!

Home page     TOP100-SOLAR    Home page forum