Se sei già registrato           oppure    

Orario: 07/05/2024 15:14:43  

 

Energia Alternativa ed Energia Fai Da Te > Acqua: come utilizzarla, generarla e sfruttarla

VISUALIZZA L'ALBUM

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


ram pump theory, teoria esimulazioni
FinePagina

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 07/02/2015 08:48:06

il setup non l'ho ancora provato in quanto sono impegnato nel test


che mi da filo da torcere.


Il cad (purtroppo e ho rimandato fino a quando che ho potuto ) mi serve 2d ma anche 3d per la stampante , insomma la stampante è il detonatore



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 07/02/2015 09:36:10

Se ti serve un cad 2d ti conviene usare AutoCad, se ti serve il 3d ti consiglio SketchUp...se devi fare tutto solo per la rampump ti conviene farlo fare ad altri ... eccoci pronti



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

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 07/02/2015 21:39:41



comunque ho trovato un errore nel sw , è un semplice errore di segno che fin'ora mi era sfuggito, un errore proprio sul calcolo dell'ultima particella, comunque sto ancora testando



Modificato da NonSoloBolleDiAcqua - 07/02/2015, 22:57:10


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 07/02/2015 22:13:02

REM ***** BASIC *****

Sub Main

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

dim AAA(9999) As Double ' buffer
dim BBB(9999) As Double ' buffer
dim CCC(9999) As Double ' buffer

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 pl0dtlo2 As Double ' faster

dim brodtl02 As Double ' faster

dim I,J,K,nitertemp As Integer ' contatori

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

'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 =10000*Cell.Value

Cell = Sheet.getCellByPosition(16, 1)
nitertemp=Cell.Value

Cell = Sheet.getCellByPosition(9, 6)
Cell.Value =nitertemp

Cell = Sheet.getCellByPosition(17, 1)
nparticelle=Cell.Value -1


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

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

tot = deltat*nitertemp

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

B=Vfase*Vfase*Rho

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

L0=ltot/(nparticelle+1)

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

'inizializzazione
Cell = Sheet.getCellByPosition(3, 3)
Cell.String = "inizio"
psi(0,0)= 0
AAA(0)=psi(0,0)
for I=1 to nparticelle

psi(0,I)= L0+psi(0,I-1) 'prima colonna nel foglio "A"
AAA(I)=psi(0,I)
next I



'primo spostamento V0*deltat +psi precedente
pl0dtlo2=1/Rho*(deltat/L0)^2*P*L0
brodtl02=B/Rho*(deltat/L0)^2


for I=0 to nparticelle

' psi(1,I)= psi(0,I)-V0*deltat ' seconda colonna "B"

BBB(I)= AAA(I)-V0*deltat

next I




'girotondo 0


'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))

CCC(0) = 2*BBB(0)-AAA(0)+1/Rho*(deltat/L0)^2*(P*L0+B*(BBB(1)-BBB(0)-L0))

for I=1 to nparticelle-1
CCC(I) = 2*BBB(I)-AAA(I)+B/Rho*(deltat/L0)^2*(BBB(I+1)-2*BBB(I)+BBB(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)

XCCC(nparticelle) = 2*BBB(nparticelle)-AAA(nparticelle)+B/Rho*(deltat/L0)^2*(-BBB(nparticelle)+BBB(nparticelle-1)+L0)

Cell = Sheet.getCellByPosition(8, 6)
Cell.Value =nitertemp

for j=1 to nitertemp
'girotondo 1 vv

For K = 0 to N-2
'Cell = Sheet.getCellByPosition(6, 6)
'Cell.Value = k
AAA(0) = 2*CCC(0)-BBB(0)+1/Rho*(deltat/L0)^2*(P*L0+B*(CCC(1)-CCC(0)-L0))

for I=1 to nparticelle-1
AAA(I) = 2*CCC(I)-BBB(I)+brodtl02*(CCC(I+1)-2*CCC(I)+CCC(I-1))
next I

XAAA(nparticelle) = 2*CCC(nparticelle)-BBB(nparticelle)+brodtl02*(-CCC(nparticelle)+CCC(nparticelle-1)+L0)

'girotondo 2

BBB(0) = 2*AAA(0)-CCC(0)+1/Rho*(deltat/L0)^2*(P*L0+B*(AAA(1)-AAA(0)-L0))

for I=1 to nparticelle-1
BBB(I) = 2*AAA(I)-CCC(I)+brodtl02*(AAA(I+1)-2*AAA(I)+AAA(I-1))
next I
'girotondo extra
X BBB(nparticelle) = 2*AAA(nparticelle)-CCC(nparticelle)+brodtl02*(-AAA(nparticelle)+AAA(nparticelle-1)+L0)

CCC(0) = 2*BBB(0)-AAA(0)+1/Rho*(deltat/L0)^2*(P*L0+B*(BBB(1)-BBB(0)-L0))

for I=1 to nparticelle-1
CCC(I) = 2*BBB(I)-AAA(I)+brodtl02*(BBB(I+1)-2*BBB(I)+BBB(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)

X CCC(nparticelle) = 2*BBB(nparticelle)-AAA(nparticelle)+brodtl02*(-BBB(nparticelle)+BBB(nparticelle-1)+L0)


next k

for I=0 to nparticelle


psi(j,I)=CCC(I)

next I

If j=1 Then N=N+1





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

for I=0 to nparticelle
Cell = Sheet.getCellByPosition(j,10 +I)
Cell.Value =psi(j,I)
next I

'Cell = Sheet.getCellByPosition(j,14)
'Cell.Value =psi(j,nparticelle)

'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

Sub Macro1

End Sub



Modificato da qqcreafis - 07/02/2015, 22:16:36


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 07/02/2015 22:22:36

quelli con la X hanno i segni dell'ultima parentesi cambiati

mea culpa

per velocizzare ho compattato delle moltiplicazioni, e poi ho messo variabile il numero delle particelle prima era 10000 fisso , ora per le prove ho messo dal foglio 100



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 07/02/2015 22:58:45

Ho rimbellettato qualche messaggio di sopra...non si sa mai...



CITAZIONE (qqcreafis, 07/02/2015 22:22:36 ) Discussione.php?212316&5#MSG70

mea culpa

faccio finta di non aver letto...



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

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 00:02:19

altra siocchezza ho preso il bar =10000Pa ma non è vero è 100000Pa


me ne sono accorto in quanto veniva una accelerazione 1/10

sbagliato
CITAZIONE

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


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

comunque verificato per V=0 e per P<>0



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 08/02/2015 11:24:06

Ok, dovrei aver allineato tutte le varianti che hai fatto V1.9...compresa l'ottimizzazione pl0dtlo2=1/Rho*(deltat/L0)^2 che avevi sicuramente pensato di fare ma non mi sembra che tu abbia implementato ...eliminando però l'ultimi due fattori P*L0...ma considera che la velocità (che è sicuramente migliorata) la miglioreremo ancora includendo la dll realizzata in c (dovremmo recuperare ancora almeno un fattore 10...spero ).


All'interno dell'exe c'è il codice .bas

Scarica allegato

RamPumpV1.9.zip ( Numero download: 174 )



Modificato da NonSoloBolleDiAcqua - 08/02/2015, 11:33:01


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

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 11:43:42

si si per paura di cacciarci dentro un errore banale non ho fatto proprio tutti i prodotti ma devono essere fatti


poi anche il file in uscita dovrebbe essere tutta la matrice


si dovrebbero poter vedere delle onde di pressione



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 08/02/2015 12:40:09

CITAZIONE (qqcreafis, 08/02/2015 11:43:42 ) Discussione.php?212316&5#MSG74

si si per paura di cacciarci dentro un errore banale non ho fatto proprio tutti i prodotti ma devono essere fatti

io 'opero' sotto interrupt non mascherabili...quindi la possibilità di errori da parte mia sono elevati!

CITAZIONE (qqcreafis, 08/02/2015 11:43:42 ) Discussione.php?212316&5#MSG74

poi anche il file in uscita dovrebbe essere tutta la matrice

ok...ma non conviene se verifichi se esce il file excel...almeno te lo trovi per eventuali controlli/operazioni/grafici...ma in effetti se lo importi in modo testo è lo stesso...vanno bene gli spazi come separatori?

CITAZIONE (qqcreafis, 08/02/2015 11:43:42 ) Discussione.php?212316&5#MSG74

si dovrebbero poter vedere delle onde di pressione

se funzica con una 'buona affidabilità'...vabbè lasciamo stare



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

 

NonSoloBolleDiAcqua

Avatar
PetaWatt


Gruppo:AMMINISTRATORE
Messaggi:13786

Stato:



Inviato il: 08/02/2015 13:00:44

V1.10 stampa, sotto opzione,tutta la matrice...ma conviene armarsi di panino per compensare l'attesa...non è ottimizzata la stampa su file, stampo valore dopo valore mentre andrebbe fatto a fine elaborazione...ora altro interrupt

http://www.energialternativa.info/public/newforum/ForumEA/D/RamPumpV1.10.jpg



Scarica allegato

RamPumpV1.10.zip ( Numero download: 184 )



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

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 22:53:55

sembra funzionare.....quasi incredibile (si sfrutta solo le leggi delle forze elastiche e il II della dinamica)

per la matrice alla fine dei calcoli sarebbe bene scriverla su excel


comunque la importo facilmente dal txt con gli spazi come separatori.


sarebbe bene fare stampare come intestazione le condizione di simulazione sul txt (oppure sul xls)


nella versione 1.9 non riesco a creare l'xls



Modificato da qqcreafis - 08/02/2015, 23:04:20


---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 23:08:38

il test fondamentale è verificare che il centro di massa si muova sotto la forza esterna ed ha funzionato sulla mia che era a 100 particelle

e con 3/4 d'ora di simulazione ho tutta la matrice e quindi riesco facilmente a calcolare la posizione del CM (media aritmetica delle posizioni delle particelle)



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 23:14:44

ma per curiosità chi dovrebbe guardare l'articolo...

la nostra è una simulazione spartana stiamo usando pura forza bruta di calcolo (ed infatti le macchime sbuffamo, cpu al 100% per ore )


Ma ciò non toglie che esperti di calcolo potrebbero trovare metodi di integrazioone più elaborati ed efficienti


comunque il vero passo in avanti si puo fare solo modellizzando meglio quello che si trova oltre la valvola , però prima occorre essere strasicuri che sia corretto l'attuale



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 

qqcreafis

Avatar
PetaWatt


Gruppo:Utente
Messaggi:10029

Stato:



Inviato il: 08/02/2015 23:53:28

òa ver 1.10 nel txt non stampa la matrice e xls mi da errore



---------------
ODE AD UNO STUDENTE MERITEVOLE (Sermone)
Allora Xyz è stato bravo! noi dobbiamo riconoscere che è stato molto bravo, bisogna dirlo !
In un mondo dove tutto SEMBRA uguale a tutto.
In un mondo dove chi abbruttisce la dignità dell’intelligenza umana si arroga meriti.
In un mondo in cui si dice che i giovani non hanno speranza perché “tanto non troveranno lavoro” perché tanto non “non avranno la pensione”.
Xyz è stato bravo! ha capito tutto, ha fatto un compito perfetto.
Xyz ci da una SPERANZA.
Xyz non ha seguito le falsità che ci circondano.
Xyz si è impegnato ed è riuscito nel suo intento.

 
 InizioPagina
 

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

Versione Mobile!

Home page       TOP100-SOLAR      Home page forum