Modeling Natural Shapes: Seashells

O conchiglia marina, figlia
della pietra e del mare biancheggiante,
tu meravigli la mente dei fanciulli.

La conchiglia Marina di Alceo. (Traduzione di Salvatore Quasimodo, da Lirici greci, 1940) 

Continue reading

Retro Programming II: the Amiga and the Computational Beauty of the Leaf

In my archaeological exploration of old computer files, I came across another simple but exciting Amiga Basic program I programmed in 1989. It is named “Foglie”, the Italian name for leaves. It was an attempt to explore some ideas of functional plant morphology modelling. The stimulus comes after the reading of the paper by Karl J. Niklas on issue 213 of Le Science (the Italian edition of the Scientific American magazine [1]). The article titled “Computer-simulated plant evolution” described the modelling of plants to study their interaction with the environment. It was a fascinating paper; still, simple and primitive graphics caught my imagination. Nowadays, the field of digital morphology has come to an age (just to mention one, Avatar), and we can have an idea of this progress in the level of realism in movies, video games, and TV programs. However, the organism’s form and shape have always caught my curiosity and interest. The structure of leaf nervation was an intriguing pattern related to my acquaintance with the fascinating fractals objects, another recurrent topic in the pages of scientific magazines of the period.

Continue reading

Bioinformatics Tools for Protein Engineering​: The MAP server

Mutagenesis Assistant Program (MAP) is a free accessible statistical tool which can be used for the benchmarking of random mutagenesis methods on the protein level. 

Continue reading

La programmazione in Awk II: Life in a Shell

Il gioco Life fu inventato negli anni ’70 dal prolifico matematico John H. Conway (vedi [5] per la sua biografia) ed è diventato famoso dopo la pubblicazione di Martin Gardner nella sua rubrica di matematica amatoriale sulla rivista Scientific American [1,2]. Il gioco è basato sugli automi cellulari concepiti da Konrad Zuse e Stanislaw M. Ulam all’inizio degli anni ’50, e poi adottati da John von Neumann per il suo studio sugli automi auto-replicanti [2,3]. Un automa cellulare è composto da unità (celle) interagenti disposte in una griglia quadrataIl sistema si evolve in cicli di vita in cui ogni cella cambia stato e nuove celle possono nascere e altre possono sopravvivere o, eventualmente, morire. Lo stato di ogni cella nel ciclo successivo è definito dall’interazione con le celle adiacenti in base a delle regole. L’interazione avviene con i primi vicini di ciascuna cella. Come mostrato nella Figura 1, è possibile utilizzare due tipi di intorni (cerchi) della cella centrale. Il gioco Life usa il tipo di proposto da Moore. 

Continue reading

Awk Programming II: Life in a Shell

The game of Life was invented in the ’70 by the prolific mathematician John H. Conway (on the 11/4/2020 sadly J.H. Conway passed away at the age of 82 after having contracted the COVID-19, see [5] for his biography). The game becomes popular after Martin Gardner described it in his famous column in the Scientific American magazine [1,2].  The game is based on cellular automata conceived by Konrad Zuse and Stanislaw M. Ulam at beginning of the ’50 and then adopted by John von Neumann for his study on self-replicating automata [2,3]. A cellular automaton is composed of interacting units (cells) arranged in a square grid. The system evolves in life cycles where each cell change status and new cells can be born, and others can survive or eventually die. The status of each cell in the next cycle is defined by the interaction with their neighbor cells according to a given set of rules. The interaction occurs with the first neighbors of each cell. As shown in Figure 1, two type of neighbor’s cells (circles) can be used, the game of Life uses the Moore type neighborhood.

Continue reading

PERL Programming III: Modelling DNA Thermodynamics

After a long pause, the adventure in the PERL programming language series continues with another example of biophysics and molecular biology science application.This time, we are going to make a program to model the effect of the temperature on DNA stability in solution.

The effect of temperature DNA structure integrity plays an important role in molecular biology applications. For example, the DNA amplification method based on polymerase (the PCR method) is based on a series of temperature cycles to separate the two strand of DNA to replicate. DNA primers are used to initiate the process and the knowledge of their melting temperature (Tm) play an important role in optimizing the DNA amplification process.

The first attempts to create a model of DNA thermodynamics date back to the beginnings of 1960. Studies pionered by the groups of Zimm [1] and Tinoco [2], have shown that the relative stability of a double-stranded DNA molecule depends primarily on the nature of the nearest-neighbor bases along the sequence. This finding brought to the formulation of a simple mathematical model (called the nearest-neighbor (NN) model) to predict relative stabilities of double stranded DNA according to the nucleotide sequence [see Cantor]. Subseguently, the NN model was further improved by the contribution of several research groups. In particular, Santalucia and co-workers. proposed a set of parameters for the NN model that provides an excellent prediction of the thermodynamic properties of short DNA homo oligonucleotides and are commonly used to calculate the stability of DNA primers used for PCR applications.

In this third article on PERL programming, I will give some indication on how to implement a simple version of the NN model. To make more fancy the programming task, we are also going to provide the program with a simple Graphical user interface using PERL/Tk.

Continue reading

Retro Programming Nostalgia: il Commodore Amiga e la Visualizzazione Molecolare

Italia anno 1989, era l’era del Commodore Amiga con la sua demo di BOING, la pallina bianca e rossa che rimbalzando ha conquistato il cuore di milioni di giovani che hanno vissuto la rivoluzionaria invenzione del personal computer.

Continue reading

La Programmazione della Unix Shell

Questo blog contiene  una breve introduzione alla programmazione della Unix shell csh/tcsh. Per altri tipi di shells, il lettore può consultare manuali dedicati a questo argomento riportati nella bibliografia alla fine di questa questo blog. Continue reading

Introduzione alla Dinamica Molecolare

img_20171019_174056.jpg


  • Lex. I. Corpus omne perseverare in statu suo quiescendi vel movendi uniformiter in directum, nili quatenus a viribus impressis cogitur statum illum mutare.

  • Lex. II. Muationem motus proportionalem esse vi motrici impressae, et fieri fecundum lineam rectam qua vis illa imprimitur.
  • Lex. III. Actioni contrariam semper et equalem esse reactionem: sive corporum duorum actiones in se mutuo semper esse aequales et in partes contrarias dirigi.

 

Isaac Newton.
Philosophiae Naturalis Principia Mathematica.
London, 1686.


 

Nel 1648 Isaac Newton diede alle stampe la sua prima edizione dei Principia Mathematica, uno dei più grandi capolavori scientifici di tutti i tempi.  Nelle prime pagine di questa  summa scientifica si trovano enunciate le famose tre leggi che portano il suo nome, dalle quali ha avuto inizio la fisica-matematica classica. Continue reading