Fick può ricevere in ingresso alcuni parametri, alcuni di
essi sono obbligatori, tutti gli altri non obbligatori sono stati
implementati per rendere il simulatore il più flessibile possibile.
Tra i parametri obbligatori di input cè un file immagine che
rappresenta la concentrazione del fluido. Di questa immagine viene
considerato solo la gradazione del colore blu che definisce la
concentrazione della materia. Maggiore è l' intensità del blu,
maggiore è la concentrazione della materia in quel punto. Il
programma, oltre al file immagine, dovrà necessariamente ricevere i
valori ,
e
che indicano
rispettivamente il passo di integrazione temporale e quelli spaziali
necessari per la discretizzazione del tempo e dello spazio. Il
programma può accettare anche delle opzioni non obbligatorie, tra le
più importanti citiamo la possibilità di dare in pasto al
simulatore un ulteriore file immagine che descrive il coefficiente di
diffusione sull' area in esame, di questa immagine viene considerato
il colore rosso. Questo ci da la possibilità di utilizzare una
sola immagine sia per definire la concentrazione, sia i coefficienti
di diffusione. Se la seconda immagine non viene specificata il
simulatore considera i coefficienti di diffusione costanti su tutta l'
area in esame. Un' altra opzione interessante è quella che permette al
simulatore di stabilire la modalità in cui dovrà operare,
implicita oppure esplicita.
Il programma Fick elabora le informazioni in ingresso e stampa a
video prima la concentrazione iniziale e poi di volta in volta la
concentrazione stimata dopo un tempo dalla precedente. Le
immagini si sovrappongono in modo da rendere visibile il movimento
della materia.
La memoria utilizzata dal simulatore è direttamente proporzionale al
quadrato del numero dei campioni della concentrazione considerati. Se
il simulatore non ha abbastanza memoria disponibile è necessario
diminuire le dimensioni dell' immagine oppure aumentare i fattori
e
. L' aumento di quest' ultimi richiede l'
utilizzo da parte del programma di un passo di integrazione più
ampio comportando una diminuzione della precisione.
Se l' immagine della concentrazione e quella dei coefficienti di
diffusione differiscono nelle dimensioni, la zona presa in
considerazione sarà quella che avrà sia come altezza, sia come
larghezza la più piccola (partendo dall' angolo in alto a sinistra)
tra le due (Figura ).
Il sistema mette anche a disposizione di una modalità in tre
dimensioni per poter visualizzare in maniera più chiara l' output del
programma(Figura ). Essa è implementata nel file 3d.c che comprende due funzioni line() e matrix2image3d(). La funzione line
si occupa semplicemente di disegnare una linea tra due punti. La
funzione matrix2image3d
riceve in input la matrice contenente la concentrazione della materia
e stampa un grafico in assonometria cavaliera dove il piano tra gli
assi X e Y rappresenta la zona in esame e la coordinata Z indica la
concentrazione. Dato che comunque l' immagine da stampare è piatta,
è necessaria una funzione
che trasforma
le tre coordinate dell' assonometria cavaliera in quelle della
superficie. La funzione stamperà per ogni elemento
della
matrice della concentrazione
due linee rispettivamente
line(
,
),
line(
,
)
e un punto in
.