Pierre de Buyl's homepage - scipyhttp://pdebuyl.be/2017-04-18T10:00:00+02:00A concise derivation of the Wiener-Khinchin theorem2017-04-18T10:00:00+02:00Pierre de Buyltag:pdebuyl.be,2017-04-18:/blog/2017/wiener-khinchin.html/
<p>While teaching a class on statistical physics, I found myself unhappy with textbook
derivations of the Wiener-Khinchin theorem. I worked my way to a very short derivation that
is free of integral bounds manipulations and of holes, or so I believe.</p>
<p>In either the books by Balakrishnan (<em>Elements of Nonequilibrium Statistical Mechanics</em>, Ane
Books, 2008), Risken (<em>The Fokker-Planck Equation</em>, 2nd edition, Springer-Verlag, 1989),
Coffey-Kalmykov-Waldron (<em>The Langevin Equation</em>, 2nd edition, World Scientific, 2004) or
<a href="http://mathworld.wolfram.com/Wiener-KhinchinTheorem.html">MathWorld</a>, I could not find a
short derivation that would cleanly take into account the averaging procedure or that would
not resort to splittings of the domain of integration. I present here one derivation and a
numerical illustration with Python.
Correlators for molecular and stochastic dynamics2016-09-08T12:00:00+02:00Pierre de Buyltag:pdebuyl.be,2016-09-08:/blog/2016/correlators.html/<p><strong>License:</strong> <a href="https://creativecommons.org/licenses/by/3.0/">CC-BY</a></p>
<p>Time correlations represent one of the most important data that one can obtain from doing
molecular and stochastic dynamics. The two common methods to obtain them is via either
post-processing or on-line analysis.
Here I review several algorithms to compute correlation from numerical data: naive, Fourier
transform and blocking scheme with illustrations from Langevin dynamics, using Python.
ActivePapers: hello, world2016-06-09T14:00:00+02:00Pierre de Buyltag:pdebuyl.be,2016-06-09:/blog/2016/activepapers-hello-world.html/<p><strong>License:</strong> <a href="https://creativecommons.org/licenses/by/3.0/">CC-BY</a></p>
<p><a href="http://www.activepapers.org/">ActivePapers</a> is a technology developed by <a href="http://khinsen.net/">Konrad Hinsen</a> to store
code, data and documentation with several benefits: storage in a single
<a href="https://www.hdfgroup.org/HDF5/">HDF5</a> file, internal <em>provenance</em> tracking (what code
created what data/figure, with a <em>Make</em>-like conditional execution) and a containerized
execution environment.</p>
<p>Implementations for the JVM and for Python are provided by the author. In this article, I go
over the first steps of creating an ActivePaper. Being a regular user of Python, I cover
only this language.
Code as a paper2016-02-18T11:00:00+01:00Pierre de Buyltag:pdebuyl.be,2016-02-18:/blog/2016/code-paper.html/<p>Publishing scientific software is a nontrivial problem. I present here, and ask feedback, on
the idea to upload the software to arXiv with a presentation paper and use it as an evolving
reference.
The threefry random number generator2016-01-12T11:00:00+01:00Pierre de Buyltag:pdebuyl.be,2016-01-12:/blog/2016/threefry-rng.html/<p>Pseudo-random number generation has many applications in computing. The use of random number
in parallel is becoming necessary and a recent solution is the use of so-called block cipher
algorithms.
In this post, I review the mechanism being the Threefry random number generator that is
based on the the Threefish block cipher.
Compiling a Fortran library for Python2015-10-30T11:00:00+01:00Pierre de Buyltag:pdebuyl.be,2015-10-30:/blog/2015/compiling-fortran-python.html/<p>The ability to call Fortran code from Python has been and still is essential to several
scientific packages, including the widely used
<a href="http://docs.scipy.org/doc/scipy/reference/">SciPy</a> library. One widely used tool to make
the Fortran code accessible to Python is the f2py library that is bundled with
<a href="http://docs.scipy.org/doc/numpy/reference/">NumPy</a>.</p>
<p>Here, I review how one can write portable and easy to compile Fortran routines.
Understanding the Hilbert curve2015-06-08T11:00:00+02:00Pierre de Buyltag:pdebuyl.be,2015-06-08:/blog/2015/hilbert-curve.html/<p>The Hilbert curve fills space with good properties for sorting N-dimensional
data in a linear fashion. I present an IPython notebook with the complete code
to follow the algorithm of C. Hamilton
<a href="http://www.cs.dal.ca/research/techreports/2006/CS-2006-07.shtml">CS-2006-07</a>.
Using PMI and h5py2014-06-23T14:00:00+02:00Pierre de Buyltag:pdebuyl.be,2014-06-23:/blog/2014/pmi-and-h5py.html/<p>Writing data in a parallel environment is not an easy task. Using available
Python packages, I present a solution to write a HDF5 in parallel with the use
of the <a href="http://conference.scipy.org/proceedings/scipy2009/paper_7/" title="O. Lenz, PMI - Parallel Method Invocation in Proceedings of the 8th Python in Science conference (SciPy 2009), G Varoquaux, S van der Walt, J Millman (Eds.), pp. 48-50">Parallel Method Invocation</a>.
Publishing conference proceedings on arXiv2014-05-06T22:00:00+02:00Pierre de Buyltag:pdebuyl.be,2014-05-06:/blog/2014/proceedings-on-arxiv.html/<p>EuroSciPy published for the first time conference proceedings, following the
model of the US-based SciPy conference for the organization. Nelle Varoquaux and
me had the pleasure of being the editors.