Luminosità delle stelle vicine al Sistema Solare. Magnitudine assoluta e apparente.

La magnitudo misura la luminosità dei corpi celesti, in questo caso particolare delle stelle. La magnitudine assoluta è la magnitudine apparente che una stella avrebbe se osservata da una distanza di 10 Parsec (≈32,5 a.l.). Più la magnitudine di una stella è bassa più questa sarà luminosa.

stelle-magnitudine-assoluta

Rappresentazione delle stelle lontane massimo 15 Parsec, all’incirca 50 anni luce. Il Sole ha una magnitudine assoluta uguale all’incirca alla media delle stelle vicine.

Nane brune, non considerate nel grafico, possono essere trovate per valori superiori a 10 di magnitudine.

magnitudine-apparente

L’asse verticale è centrato in basso a sinistra sul Sole con una magnitudine apparente di ≈-26. L’asse orizzontale indica il limite per l’osservazione a occhio nudo pari a ≈6.

Come mai le stelle sono così poche nelle vicinanze del Sole? In realtà la densità delle stelle non varia di molto. E’ normale che la distribuzione cresca esponenzialmente. Immaginando una sfera all’aumentare del suo raggio il volume a disposizione delle stelle varia con il cubo della distanza percorsa.

magnitudine-apparente-vs-assoluta

Non considerando il Sole, per il campione di stelle osservato si nota una discreta proporzionalità tra i due tipi di magnitudine. Linearità che non vale per stelle molto luminose e lontane.

 

La radiazione durante un volo ed eventuali rischi per l’uomo

Magnetosfera e Atmosfera terrestre sono in grado di bloccare la maggior parte delle particelle cosmiche. Nel caso di alcune estremamente energetiche a seguito dell’interazione con le molecole di O2 e N2  dell’atmosfera si generano reazioni a catena in grado di raggiungere anche quote basse interessate da attività umane.

La Stazione Spaziale Internazionale ma anche i futuri viaggi interplanetari dovranno tenere conto della radiazione solare e cosmica. In questi casi gli astronauti, in assenza della protezione atmosferica, sono esposti per mesi alla radiazione per cui bisogna ricreare scudi artificiali in sostituzione dell’atmosfera terrestre.

Nell’ambito dell’aviazione l’influenza negativa di questa radiazione è limitata. Si osserva un massimo all’incirca a 18000 metri (massimo di Pfotzer) per poi scendere rapidamente per quote più basse. Un aereo di linea vola all’incirca a 10.000-11.000 metri.

La radiazione interessa maggiormente le regioni polari e aumenta con la quota. Radiazione quote 5000, 1000 e 15000 metri. MicroSievert per ora di esposizione:

Per un passeggero che vola solo occasionalmente il rischio di avere un danno legato a questo tipo di radiazione è molto basso. Diventa invece un problema per piloti e personale di bordo che trascorrono molte più ore in quota.

Bisognerà quindi monitorare l’esposizione del personale di bordo e limitare questo rischio. Al momento l’unica cosa che si può fare consiste nel monitorare zone a più alto rischio di esposizione vietando in particolari casi il transito degli aerei. Si studiano per il futuro strumenti (ispirati al TEPC Tissue Equivalent Proportional Counter) da montare a bordo degli aerei in grado di misurare le dosi assorbite dagli esseri umani. Le due soluzioni studiate dalla NASA sono rispettivamente: RaySure detector e Teledyne TID detector.

***

Approfondimenti:
https://www.nasa.gov/feature/goddard/2017/nasa-studies-cosmic-radiation-to-protect-high-altitude-travelers

C++ generare password casuali

Codice C++ per un generatore di password casuali. Non ho trovato un modo più facile per incollarlo tramite codice HTML per evidenziare le parole chiave.

Le opzioni prevedono lunghezza libera e password con e senza caratteri speciali.

#include <iostream>
#include <cstdlib>
#include <ctime>

using namespace std;

static const char alphanum[] =
"0123456789"
"ABCDEFGHIJKLMNOPQRSTUVWXYZ"
"abcdefghijklmnopqrstuvwxyz"
"!@#$%^&*";

static const char carattere_speciale[]=
"!@#$%^&*";

int size = sizeof(alphanum) - 1;

int main()
{
    //stabilire la lunghezza della password
    int lunghezza;
    cout << "Quanti caratteri deve avere la password?" << endl;    
    cin >> lunghezza;

 
    //utilizzo di caratteri speciali
    char scelta = 's';
    do{
        cout << "Usa caratteri speciali? (s/n)" << endl;         cin >> scelta;
    }
    while ((scelta != 's') && (scelta != 'n'));
    
    //genera la password
    bool f_special = false;
    char c = 'a';
    
    switch (scelta){
        case ('s'):
            srand(time(0));
            for(int i = 0; i < lunghezza; i++)
            {
                c = alphanum[rand() % (size)];

                if(c =='!' || c=='@' || c=='#' || c=='$' || c=='%' || c=='^' || c=='&' || c=='*')
                    f_special = true;

                if((i == lunghezza-1) && (f_special == false))
                {
                    c = carattere_speciale[rand() % 7];
                    cout << c;
                }
                    else
                    cout << c;
            }
            break;
        
        case ('n'):   
            srand(time(0));
            for(int i = 0; i < lunghezza; i++)
        {
            cout << alphanum[rand() % (size-8)];
        }
            break;
        default:
            cout << "ERRORE" << endl;   
    }
    
    //evitare la scomparsa della console
    cout << endl;
    cin.get();
    cin.get();
    return 0;
}


Ipotesi sull’organizzazione schematica di un’azienda

Tra Natale e Capodanno ci si può dedicare a qualche passatempo molto interessante. Così ho preso un programma per creare strutture schematiche e analizzarne il contenuto. Ho considerato l’ipotetica organizzazione elementare di una grande azienda per la produzione di un oggetto fisico (es. auto).

azienda_schema

Alcuni componenti vengono realizzati presso più stabilimenti. Si potrebbe complicare lo schema per esempio dicendo che lo Stabilimento 3 sia punto di arrivo di materiali oppure sottoprodotti provenienti dallo Stabilimento 2. 

I componenti F, E e B devono passare attraverso lavorazioni intermedie affidate a terzi. Siccome i tempi di lavorazione potrebbero non coincidere con la richiesta per la produzione finale è utile che i componenti vengano ordinati in anticipo e

azienda_schema_2

Il componente B viene prodotto da più stabilimenti e necessità di lavorazioni aggiuntive svolte da terzi.

Alcuni componenti sono più economici se prodotti in quantità maggiori. Se il componente B rientra in tale categoria la produzione potrebbe alternarsi tra i 3 stabilimenti che lo producono.

Necessitando di più passaggi intermedi e essendo soggetto a tempi di realizzazione variabili è opportuno che venga assicurata la sua disponibilità affidandosi ad un magazzino.

azienda_schema_3

Ora immaginate la stessa cosa con centinaia di componenti e decine di stabilimenti. Ovviamente la capacità di isolare identificare e quantificare ogni passaggio in pochi click è molto interessante e forse molto utile a chi deve ottimizzare e tenere basso il prezzo del prodotto finale.