Ho rimosso la modalità sondaggio e, tanto per continuare la discussione, ho copiato qui tipo l'ultima quarantina di messaggi ora almeno non ci sarà più lo spettro degli esami che aleggia sull'autore originario del topic
Ho rimosso la modalità sondaggio e, tanto per continuare la discussione, ho copiato qui tipo l'ultima quarantina di messaggi ora almeno non ci sarà più lo spettro degli esami che aleggia sull'autore originario del topic
Ancora un sentito grazie a PinHead81 per aver messo apposto le cose e rimando tutti al primo post del topic per eventuali chiarimenti
Mi ci sono messo di impegno una pagina alla volta e ce li ho spostati tuttiCome potete notare il topic è stato notevolmente sfoltito per questioni tecniche ma se avete richieste di post precedenti che per voi sono di vitale importanza (), inoltrate richieste ai mod e saranno felici, nel limite del possibile, di esaudire le vostre richieste.
Mi inviterai alla festa di laurea
Pure io devo dare ancora la I e la II e anche Geometria I
Non mi faccio mancare nulla
Welcome to Dipartimento di Fisica
Cmq dicono tutti che An. III è meglio di II, solo che a me è capitato un prof. (tra l'altro sarà stato sul piave nel 15-18 ) che la fa anche al dip. di mate (da noi è il primo anno che la fa) ed ha una pessima reputazione.
Del tipo che il suo esame è l'ostacolo ultimo da superare per laurearsi
Ultima modifica di EddieTheHead; 21-10-10 alle 21:28:56
Capiti a pennello Eddie, devo implementare un modello fisico in Java .
Un chiodo con attaccato una molla con attaccata una massa, una volta avviato questa massa orbita intorno al chiodo in base alla costante elastica della molla.
Dammi una dritta su che formule usare.
Non son sicuro di aver capito. Cioè la massa gira intorno al chiodo di moto circolare?
EDIT: cmq, se ho capito bene, la molla esercita una forza di richiamo F=-kx, dove x è la coordinata radiale della massa rispetto al chiodo e lo 0 è posto nella posizione di equilibrio della molla (cioè dove non è ne compressa nè estesa). Quindi quando è estesa la molla genera una forza <0 (di richiamo verso l'interno) e quando è compressa una forza >0 verso l'esterno . Chiaro no?
Durante il moto, la forza centripeta necessaria alla massa per percorrere la circonferenza ad una data velocità è Fc= (m*v^2) / R , m è la massa, v la velocità tangenziale e R la distanza dal chiodo. Devi eguagliare la forza centripeta con la forza di richiamo esercitata dalla molla. Tieni anche conto che R varia in base a quanto la molla è estesa.
R = R°+x (R° è la lunghezza della molla a riposo).
F = Fc
kx = (m*v^2) / (R° + x) (ho tolto il segno negativo a -kx solo per una questione di sistema di riferimento).
x^2 + R°x - (m*v^2)/k = 0 <--eq. di secondo grado da cui tiri fuori di quanto si allunga la molla
Ultima modifica di EddieTheHead; 21-10-10 alle 22:18:52
Si, credo, neanchio ho capito molto
Comunque il docente ci ha mostrato l'applet finale e si vede un pallino fermo con attaccato una linea (che sarebbe la molla) con all'altro capo un altro pallino (l'altra massa), la massa ruotava intorno al punto fermo e la linea si estendeva e contraeva, più che moto circolare mi sembra che la massa viene lanciata, poi quando la linea raggiunge la sua massima estensione la massa torna indietro.
Quindi, se lancio la massa diciamo perdendicolarmente ad uno degli assi del punto fermo viaggia di moto rettilineo, se invece la lancio che passa ad una determinata distanza dal punto prende questa specie di moto orbitale. E' più facile da capire se vedi l'applet, appena lo trovo posto il link.
EDIT:
Letto il tuo edit, si, piu o meno ci siamo, domani lo rileggo con calma e provo a buttare giu qualcosa per sperimentare.
La parte difficile sarà implementare l'algoritmo
Ultima modifica di ZioYuri78; 21-10-10 alle 22:21:41
Credo di aver capito. Da quello che dici tu però più che una molla mi sembra un'elastico, cioè non oppone resistenza alla compressione ma solo alla trazione (altrimenti non potrebbe passare "attraverso" il chiodo se lanciata verso il centro).
Cmq quello che dovresti fare è, credo, dare all'oggetto un vettore velocità in due coordinate, e uno accellerazione. In ogni istante verificare se la distanza fra massa e chiodo è maggiore della lunghezza a riposo dell'elastico, solo se lo è, usare la formula F=kx dove x è l'estensione rispetto alla lunghezza a riposo dell'elastico e F è sempre rivolta verso il chiodo, poi calcoli le componenti di F rispetto alle coordinate scelte, calcoli l'accellerazione e "aggiorni" la velocità. Quindi ripeti ad libitum...
..chiaro?
Copia e basta
Sisi, è più un elastico che una molla, ora mi è molto più chiaro, non dovrei avere troppe difficoltà ad implementarlo. Prima mi faccio qualche schizzo su carta e relativi calcoli e poi provo a buttarlo su codiceCredo di aver capito. Da quello che dici tu però più che una molla mi sembra un'elastico, cioè non oppone resistenza alla compressione ma solo alla trazione (altrimenti non potrebbe passare "attraverso" il chiodo se lanciata verso il centro).
Cmq quello che dovresti fare è, credo, dare all'oggetto un vettore velocità in due coordinate, e uno accellerazione. In ogni istante verificare se la distanza fra massa e chiodo è maggiore della lunghezza a riposo dell'elastico, solo se lo è, usare la formula F=kx dove x è l'estensione rispetto alla lunghezza a riposo dell'elastico e F è sempre rivolta verso il chiodo, poi calcoli le componenti di F rispetto alle coordinate scelte, calcoli l'accellerazione e "aggiorni" la velocità. Quindi ripeti ad libitum...
..chiaro?
Grazie Eddie
See, nono, ci prendo gusto io a scervellarmi in queste cose, per questo amo Ing
Se domani sera sono giunto a qualcosa di non troppo schifoso pubblico i miei risultati.
Ecco, ora ho un problema io. Devo fare un programmino del cacchio, vi copio la richiesta:
Ora questo è il risultato "bruto":Valutare la funzione f(x) quando x è una potenza di 10, da x = 1E0 a x = 1E18
f(x) = sqrt(x+1) - sqrt(x) e trovare un modo per valutare f con un errore più piccolo (le somme sono meno problematiche delle sottrazioni...).
0 0.414214
1 0.154347
2 0.0498756
3 0.0158074
4 0.00499988
5 0.00158113
6 0.0005
7 0.000158114
8 5e-05
9 1.58114e-05
10 4.99999e-06
11 1.58115e-06
12 5.00004e-07
13 1.57859e-07
14 5.02914e-08
15 1.86265e-08
16 0
17 0
18 0
Diciamo che sono giusti anche se troncati fino a 10^15, da 10^16 in poi si perde la risoluzione dell'unità e il computer interpeta i due numeri come uguali, quindi dà zero. Il succo è che dovrei trovare un modo per far venire fuori anche la differenza di 10^16,17 e 18 credo. Ora, a parte usare longdouble ecc.., c'è qualche altro modo? Non ho capito la frase
cosa c'entra? Per quanto rigiri l'espressione alla fine una sottrazione la dovrò sempre fare..le somme sono meno problematiche delle sottrazioni..
..l'unica cosa che mi è venuta in mente è che, siccome ci han detto
di provare a fare tipo f(x)= (1000*sqrt(x+1)-1000*sqrt(x))/1000; in questo modo quando faccio la sottrazione i valori sono + dissimili.. ..però non viene, o meglio, i risultati cambiano ma in peggio (per dire al posto di zero mi viene -blahblahe08 ).Questo vuol dire che in generale con le operazioni (somme, differenze, ..., radici, ...) sui numeri floating point è presente un errore. L'operazione che soffre maggiormente di questo problema è la sottrazione di valori molto simili tra di loro
Qualche idea?
Sono fuori forma di C (lo devi fare in C almeno?) ma so che per numeri del genere devi recuperarti delle librerie apposite con precisione maggiore perchè le standard di C son sempre state una rogna in questi casi
Appena trovo qualcosa ti dico, per il problema in se invece devo rifletterci su appena ho tempo.
C++.
Ma il problema non è di programmazione, è proprio a livello logico..
..cioè potrei benissimo fare i calcoli usando un array di interi per rappresentare le cifre (già fatto), in questo modo potrei avere numeri lunghi quanto voglio e bon. Ma il punto è che credo che la soluzione sia molto più semplice, sia banale, sia ovvia, solo che io non ci sono ancora arrivato
In conpenso io il mio esercizio devo usare una molla e non un elastico, come al solito non ho capito una virgola
Sono un coglione patentato
Bastava razionalizzarla e viene f(x) = 1/(sqrt(x+1)+sqrt(x)) senza sottrazioni
Il mio programmino della pallina + molla + chiodo funziona
Appena ho tempo lo carico sul server dell'uni
inb4 megabug
Barzelletta per Adam Li:
e^x va ad una festa, si mette in disparte e si guarda in giro, c'è sinx che balla con cosx, x^2 che limona con radice e ad un certo punto gli si avvicina logaritmo e gli dice: "Ei e^x, cosa ci fai lì in disparte, dai fai qualcosa, integrati!" ed e^x risponde: "Si ma guarda che anche se mi integro non cambia niente".
Barzelletta per Adam Li:
e^x va ad una festa, si mette in disparte e si guarda in giro, c'è sinx che balla con cosx, x^2 che limona con radice e ad un certo punto gli si avvicina logaritmo e gli dice: "Ei e^x, cosa ci fai lì in disparte, dai fai qualcosa, integrati!" ed e^x risponde: "Si ma guarda che anche se mi integro non cambia niente".
Di là avevi messo solo "e^x va ad una festa", pensavo che la battuta fosse lì.