Equazioni differenziali a coefficienti non costanti

di il
473 risposte

473 Risposte - Pagina 22

  • Re: Equazioni differenziali a coefficienti non costanti

    giug ha scritto:


    ma la distribuzione è random sia che usi 1 valore, sia che ne usi 10000. Solo che per "vederla" con un istogramma devi usare tanti dati.
    Matlab di default usa 10 bin per fare l'istogramma. Quindi se usi 100 dati vuol dire che per ogni barretta hai mediamente 10 valori, che sono un pò pochini per fare statistica.
    Puoi vederlo abbastanza bene passandogli anche il numero di bin. Anche se fai una distribuzione con 10000 dati, se usi 100 bin (devi mettere 100 come secondo argomento della funzione hist) vedrai che è molto meno uniforme rispetto al caso in cui ne usi 10. Ma i dati sono gli stessi... è solo una questione di rappresentazione...
    ecco, difendolo sempre...
    siete tutti e due contro di me
  • Re: Equazioni differenziali a coefficienti non costanti

    È una congiura...
  • Re: Equazioni differenziali a coefficienti non costanti

    giug ha scritto:


    è una congiura...
    lo so, ma tanto anche io vi odio

    a sproposito, non mi ricordo più se hai risposto alla mia domanda di prima, quindi te la rifaccio:
    per verficare che cambia se cambio algoritmo di risoluzione posso usare la stessa procedura che hai usato tu prima?
  • Re: Equazioni differenziali a coefficienti non costanti

    1keenan ha scritto:


    giug ha scritto:


    ma la distribuzione è random sia che usi 1 valore, sia che ne usi 10000. Solo che per "vederla" con un istogramma devi usare tanti dati.
    Matlab di default usa 10 bin per fare l'istogramma. Quindi se usi 100 dati vuol dire che per ogni barretta hai mediamente 10 valori, che sono un pò pochini per fare statistica.
    Puoi vederlo abbastanza bene passandogli anche il numero di bin. Anche se fai una distribuzione con 10000 dati, se usi 100 bin (devi mettere 100 come secondo argomento della funzione hist) vedrai che è molto meno uniforme rispetto al caso in cui ne usi 10. Ma i dati sono gli stessi... è solo una questione di rappresentazione...
    ecco, difendolo sempre...
    siete tutti e due contro di me
    Rispondo al colpo:

    su 10000 particelle per stato di carica, con 6 stati, almeno una che viene prodotta con angolo nullo e stato 5+ ci dovrà essere, no?
  • Re: Equazioni differenziali a coefficienti non costanti

    1keenan ha scritto:


    a sproposito, non mi ricordo più se hai risposto alla mia domanda di prima, quindi te la rifaccio:
    per verficare che cambia se cambio algoritmo di risoluzione posso usare la stessa procedura che hai usato tu prima?
    Non credo di aver risposto...
    Puoi usare quel metodo... ma puoi anche farti venire idee migliori... quella è stata il primo modo che mi è venuto in mente appena sveglia...
  • Re: Equazioni differenziali a coefficienti non costanti

    giug ha scritto:


    1keenan ha scritto:


    a sproposito, non mi ricordo più se hai risposto alla mia domanda di prima, quindi te la rifaccio:
    per verficare che cambia se cambio algoritmo di risoluzione posso usare la stessa procedura che hai usato tu prima?
    Non credo di aver risposto...
    Puoi usare quel metodo... ma puoi anche farti venire idee migliori... quella è stata il primo modo che mi è venuto in mente appena sveglia...
    le idee tue in questo campo sono sicuramente migliori delle mie...
    Comunque io sto facendo i plot di Prarticella.traiettoria(2,1)-(2,2)-(2,3) calcolate con ode23t e con ode45
    stessa cosa per le velocità.
    che sono le soluzioni delle equazioni, è inutile che plotto la prima riga... o no?
  • Re: Equazioni differenziali a coefficienti non costanti

    Fai prima il controllo con il ciclo, tanto per essere sicuri.
    Se pensi che debbano essere tutti 0, controlla isequal(Particella(i).traiettoria(1,:),[0 0 0]), allo stesso modo, se non vuoi fare il plot della prima riga perché dovrebbe essere uguale alla seconda, fai prima il controllo. Meglio non tralasciare niente... Se il find del vettore dà 0 in qualche punto, controlla cosa c'è di diverso.
  • Re: Equazioni differenziali a coefficienti non costanti

    1keenan ha scritto:



    a sproposito, non mi ricordo più se hai risposto alla mia domanda di prima, quindi te la rifaccio:
    per verficare che cambia se cambio algoritmo di risoluzione posso usare la stessa procedura che hai usato tu prima?
    ho fatto il plot delle traiettorie con il metodo che mi hai spiegato prima e mi viene sta cosa che allego plottando:
    
    >> for i = 1:191
    plot(Particella1(i).traiettoria(2,3),Particella(i).traiettoria(2,3),'*m');hold on;
    end
    
    >> for i = 1:191
    plot(Particella1(i).traiettoria(2,2),Particella(i).traiettoria(2,2),'*m');hold on;
    end
    
    >> for i = 1:191
    plot(Particella1(i).traiettoria(2,1),Particella(i).traiettoria(2,1),'*m');hold on;
    end
    
    (2,2) e (2,1) sono uguali...
    Allegati:
    traiettorie(2,3).jpg
    traiettorie(2,3).jpg

    traiettorie(2,1).jpg
    traiettorie(2,1).jpg
  • Re: Equazioni differenziali a coefficienti non costanti

    giug ha scritto:


    fai prima il controllo con il ciclo, tanto per essere sicuri.
    la viene tutto 0


    ora ci penso con la calma... sigaretta.
  • Re: Equazioni differenziali a coefficienti non costanti

    Una splendida rappresentazione della non-correlazione...
  • Re: Equazioni differenziali a coefficienti non costanti

    giug ha scritto:


    una splendida rappresentazione della non-correlazione...
    Buon giorno.
    Sono stato in eremitaggio sul pizzo della montagna ed ho riflettuto:
    intanto la condizione di selezione delle particelle è sbagliata perchè noi abbiamo messo:
    
     if (abs(ys(end,1)) <=r_pin1 || abs(ys(end,2))<=r_pin1)
    ....
    
    mentre in realtà dovrebbe essere &&, giusto? (volendo selezionare le particelle che passano dal diaframma devo prendere quelle le cui coordinare ys(end,1) e ys(end,2) sono entrambe minori del raggio del buco, non basta che solo una sia minore... quindi serve and invece di or)

    Poi se gli angoli li prendo uguali il fascio, visto di fronte (come se mettessi l'occhio sul diaframma) è una retta. questo non va bene perchè gli angoli effettivamente devono essere indimendento, quindi gli dico:
    
    angolo1 = A_ang + (B_ang-A_ang) * rand(1); %random number in [A,B]
             angolo2 = A_ang + (B_ang-A_ang) * rand(1);
             
             teta=angolo1; %angolo nel piano zy
             fi=angolo2; %angolo con l'asse x 
    da un lato la cosa migliora, ma dall'altro fa una cosa strana che mi fa pensare che questa estrazione angolare non è fatta bene.
    La sezione del fascio sembra il simbolo "fiori" delle carte francesi con un pò di fantasia, mentre io me la aspetto tonda, ti allego l'immagine.

    Volevo provare a plottare sti angoli su una superfice sferica perchè secondo me si addensano da qualche parte in questo modo o comunque su una sfera non sono uniformi...
    Allegati:
    9724_9a1850b17a8ed5043876575a9d7f7ec7.jpg
    9724_9a1850b17a8ed5043876575a9d7f7ec7.jpg
  • Re: Equazioni differenziali a coefficienti non costanti


    qual'è la domanda?
  • Re: Equazioni differenziali a coefficienti non costanti

    La prima è sulla condizione, è giusto correggerla con &&?

    poi "indimendento" vorrebbe dire "indipendenti", non so perchè ho scritto sta parola che non esiste.

    L'altra domanda è: come faccio a plottare gli angoli che estraggo su una superfice sferica, come se fossero puntini, per vedere se c'è un addensamento?
    Ho provato varie cose, ma con risultati terribili....
  • Re: Equazioni differenziali a coefficienti non costanti

    Devi sostituirla con && se entrambe le condizioni devono essere verificate contemporaneamente e non "o una o l'altra".
    Plottare su una superficie sferica... devi trasformare le coordinate? tipo con cart2sph?
    Cos'hai provato?
  • Re: Equazioni differenziali a coefficienti non costanti

    Ma niente, fesserie perchè non sapevo di cart2sph...

    comunque ho fatto questa cosa:
    
    n=1000;
    for i=1:n 
    A_ang=-0.08; B_ang=0.08;
     angolo1 = A_ang + (B_ang-A_ang) * rand(1); %random number in [A,B]
     angolo2 = A_ang + (B_ang-A_ang) * rand(1);
              teta(i)=angolo1; %angolo nel piano zy
             fi(i)=angolo2;
    end
    
    r=[0:0.001:(1-1.000e-3)];
    [THETA,PHI,R] = cart2sph(teta,fi,r)
    
    plot3(THETA,PHI,R)
    
    Quello che esce è questa porcheria allegata
    Allegati:
    9724_334a09785892b45133631405bd60e078.jpg
    9724_334a09785892b45133631405bd60e078.jpg
Devi accedere o registrarti per scrivere nel forum
473 risposte