Newsgroup: it.comp.lang.visual-basic
Titolo: derivate VB6

ciao a tutti
sapete mica se si possono fare le derivate in VB6?
ne avrei bisogno per creare l'apprendimento di una rete neurale
ciao
                           Arbore

 ha scritto nel messaggio
news:jmamb.2488$gA....@tornado.fastwebnet.it...

In vb si può fare quasi tutto, il problema è cosa intendi
per derivata.
Vuoi fare un grafico della derivata?
Vuoi una funzione che riceva in input
sin(x) e ti restituisca cos(x)?
Vuoi un modulo o una funzione per il calcolo
delle derivate numericamente?
                            danilo

 delle derivate numericamente?
Venghino siore e siorrri.... qui abbiamo di tutto!!!!!
Mo venite a vedere la donna baffuta, perfino! (da leggersi in romagnolo).
Buhauhauha Scusate ma non resistevo...
-- 
Nella vita una sola cosa è certa: se la storia ci ha insegnato qualcosa, 
è che si può uccidere chiunque.
(Michael Corleone)

 ha scritto nel messaggio
news:bnbdou$v14fp$1...@ID-111402.news.uni-berlin.de...


 ha scritto nel
messaggio news:hecmb.62930$vO5.2...@twister1.libero.it...


 modo da trovare il minimo della funzione :)
Ma la funzione ovviamente non è sempre la stessa, vero? Cioè a quanto ho 
capito l'utente digiterà la fuzione (una stringa) e tu dovrai farti la 
derivata prima (eventualmente anche la secondoa, e la terza... e così 
via) per ricavarti il minimo?
Lasciati dire che è una cosa piuttosto complicata.
A parte che dovrai costruirti un parser, cioè una funzione che ti 
scandisce la stringa alla ricerca di operatori, costanti e tutto il 
resto (ma ce ne sono di pronti in giro, se non erro), poi ovviamente 
riconosciute tutte le componenti dovrai applicare delle regole per 
calcolarne la derivata.
Es. F="cos(x)+5sin(2x)"
Dovrai scomporla in Cos(X) e 5sin(2x)
Da qui calcolare la derivata di Cos(x) che se non vado errato è Sin(x)
poi 5sin(x) rientra nella categoria del prodotto di una costante per una 
funzione e quindi:
	Derivata(costante*funzione)=costante*Derivata(funzione)
ma funzione = sin(5x) = sin(f(x))
	quindi diventa Derivata(sin(fx)) * Derivata (f(x))
Come vedi è una catena abbastanza lunga, si potrebbe applicare la 
ricorsività in alcuni punti... ma è piuttosto complicato.
Ripeto, ti conviene anzitutto costruirti un parser per somporti la 
funzione generica in tante sottofunzioni e poi capire se le sottofuzioni 
ottenute sono casi noti, funzioni di funzioni o funzioni composte (ecc. 
ecc.)
Spero di essere stato chiaro.



Per il parser considerando i campioni è un po' più semplice costruirlo.
                                danilo

 ne avrei bisogno per creare l'apprendimento di una rete neurale
http://www.library.cornell.edu/nr/bookcpdf/c5-7.pdf
E' in c, ma facilmente traducibile.
ciao
	maxx
-- 
NOSPAM: Rimuovere i trattini dallo username!
Cut hyphens from my username!

...


 ha scritto nel
messaggio news:Yiemb.64992$e6.22...@twister2.libero.it...


 ha scritto nel messaggio
news:jmamb.2488$gA....@tornado.fastwebnet.it...


 
Non ringraziare i tuoi professori di italiano.
:-(


Non ringraziare i tuoi professori di italiano.
  Al nostro ingegnere latinista sara' venuto un mezzo collasso a
leggerlo! ;-D
  Ciao :-)
  Massimo
  Nell'indirizzo, sostituire "micio" con "mc"


1)Preparati ad un'ardua lotta allora
non è semplice quello che stai cercando di fare.
Quello che ti posso consigliare è vedere se riesci a
far interfacciare VB con Matlab o Maple.
                danilo
p.s.
Quota meglio se ti riesce


Per carità è stato un piacere, però rileggi la frase che hai scritto!!!
            danilo

 Può effettuare una derivata numerica.
Si vabbè ma se io in VB creo una casella di testo in cui digito una 
qualsiasi funzione in run-time, e il programma deve farmi la derivata, 
che io usi un metodo numerico o un qualsiasi altro metodo, dovrò in 
qualche modo capire quali sono gli operatori e come è composta la 
funzione no? Quindi un parser dovrò costruirmelo (dico _io_ per fare un 
esmpio)...


 
Esiste quello di Zanna:
http://www.neodatatype.net
ciao


Arbore wrote:

Se devi fare derivate per via numerica puoi utilizzare la definizione stessa
di derivata, discretizzando la tua funzione e facendo il rapporto tra la
(y(n+1)-y(n))/dx per ogni punto.
Se la vuoi in formato letterale, prova a costruirti una libreria a partire
dalle derivate "principale" (potenze, esponenti, logaritmi).
-- 
Ciao,
        Fabrizio
<=- 
http://www.negusweb.it
 -=>

 esmpio)...
Il Parser lo deve costruire per ricavare i campioni da derivare,
questo si ma è sicuramente molto più facile che fare la derivata
poi di quella funzione.
Come qualcuno suggerisce esiste poi il parser di Zanna.
                        danilo

 poi di quella funzione.
Ma e' sempre bello reinventare la ruota ogni volta che si accende il pc ...
:-(
	maxx
P.S. per Vegeta: il parser serve solo per passare da una funzione 
complicata alle funzioni base per eseguire i calcoli. Tieni pero' 
presente che calcolare la derivata simbolica non e' la stessa cosa che 
trovare la derivata ( _in un punto_ ) con metodi numerici. Nel primo 
caso trovi un'altra funzione, nel secondo trovi il valore della derivata 
della funzione in un punto.


 della funzione in un punto.
Si lo so, ma io rispondevo al post di danilo_NO... e si discuteva se 
fare o meno il parser e in che modo risolvere la derivata.
Io infatti ho affermato (forse inutilmente dato che rileggendo il post 
mi pare che danilo_NO negasse un altro pezzo del mio discorso e non il 
dover creare un parser) che il parser andasse comunque scritto a 
prescindere da cosa il nostro problema ci chiedesse... che si trattasse 
di derivata o altro...
