NEWS 22.1 KB
Newer Older
Olaf Lenz's avatar
Olaf Lenz committed
1 2 3
=================
= ESPRESSO NEWS =
=================
4

Rudolf Weeber's avatar
Rudolf Weeber committed
5
ESPResSo 4.0
6 7
============

Rudolf Weeber's avatar
Rudolf Weeber committed
8 9
ESPResSo 4.0 is the first release of ESPResSo with a Python interface.
I.e., the language in which simulation scripts are written is now Python,
10
and support for the TCL-interface has been dropped.
Rudolf Weeber's avatar
Rudolf Weeber committed
11 12
We recommend all users switch to ESPResSo 4.0, there will be no more fixes to
TCL-based versions.
13

Rudolf Weeber's avatar
Rudolf Weeber committed
14 15 16 17 18
Transitioning from TCL-based versions
-------------------------------------

The following can serve as a starting point for the new interface: 
* The "Introduction" chapter in the user's guide
Rudolf Weeber's avatar
Rudolf Weeber committed
19 20
* The tutorials provided with ESPResSo
Both can be found at http://espressomd.org/wordpress/documentation
Rudolf Weeber's avatar
Rudolf Weeber committed
21

22
Please note that, starting from ESPResSo 4.0, enabling additional features in myconfig.hpp no longer changes the behavior of a simulation scripts. Features such as particle rotation and virtual sites have to be activated explicitly in the simulation scripts.
Rudolf Weeber's avatar
Rudolf Weeber committed
23 24 25

New features:
-------------
Rudolf Weeber's avatar
Rudolf Weeber committed
26
* Reaction ensemble methods for the modelling of chemical reactions, including constant pH and Wang-Landau schemes
Rudolf Weeber's avatar
Rudolf Weeber committed
27 28 29
* Polarisable particles via the Drude-oscillator scheme
* Steepest-descent energy minimization scheme 
* Methods for active particles (swimmer_reaction, dipolar swimmers)
30
* GPU-accelerated P3M method for electrostatic interactions
Rudolf Weeber's avatar
Rudolf Weeber committed
31
* GPU-accelerated direct summation and Barnes-Hutt schemes for dipolar interactions under open boundary conditions
32
* Support for the electrostatic and magnetostatics method provided by the ScaFaCoS library
Rudolf Weeber's avatar
Rudolf Weeber committed
33 34
* Immersed boundary method for soft immersed objects in an LB fluid
* Virtual sites acting as inertialess tracers in an LB fluid usable as part of the immersed boundary method or independently
Rudolf Weeber's avatar
Rudolf Weeber committed
35
* Online cluster analysis based on criteria for pairs of particles
Rudolf Weeber's avatar
Rudolf Weeber committed
36 37 38 39
* New bonded quartic and Coulomb interactions
* Possibility to tune the skin parameter 
* Support for saving to the h5md file format for molecular dynamics data.
* Connection to the MD Analysis Python package
40
* A rotate_system command was added, which rotates the particle positions around the system's center of mass
Rudolf Weeber's avatar
Rudolf Weeber committed
41 42 43 44 45

Visualisation
-------------
Espresso contains two online visualizers, one based on Mayavi, one on the OpenGl Python module.
Support for online visualization in VMD has been dropped, but particle data can be stored in file formats which VMD can read (vcf/vtf, h5md).
46 47 48 49

User-visible changes
--------------------

Rudolf Weeber's avatar
Rudolf Weeber committed
50 51 52 53 54 55
* When the ROTATION feature is compiled in, the rotation of a particle around each of its Cartesian axes in the body-fixed frame can be enabled
* The rotational degrees of freedom of virtual sites is now integrated. Virtual sites no longer use the quaternion attributes to store their relative orientation
* Alternatively, the orientation of the virtual site can be specified relative to that of the particle it is derived from.
* The random number generator was changed to Mersenne Twister as implemented by C++11.
* Espresso now depends on the Boost library including Boost-Mpi and a C++11 capable compiler
* The build system is now based on CMake.
56

57 58 59
Removed features
----------------
The following features are not part of the ESPResSo 4.0 release, but support is expected to be re-added in a subsequent release.
60 61 62 63
* Generalized hybrid Monte Carlo thermostat
* Virtual sites located at the center of mass of a group of particles
* Metadynamics, umbrella sampling and parallel tempering
* Non-equilibrium molecular dynamics (shear boundary conditions implemented by moving slabs of particles at the boundaries)
Rudolf Weeber's avatar
Rudolf Weeber committed
64
* The memd/maggs electrostatic solver
65
* The com_force feature
Rudolf Weeber's avatar
Rudolf Weeber committed
66
* The Shan Chen lattice Boltzmann extension
Rudolf Weeber's avatar
Rudolf Weeber committed
67
* Lees-Edwards (shear) boundary conditions
68
* The chain rdf analysis 
69 70 71 72

The following functionality is removed permanently:
* Blockfile support, which is replaced by support for the h5md format as well as checkpointing based on the pickle Python module.
* Some of the convenience functions for particle creation such as salt and counterions, as these can be replaced by a very few lines of Python in the simulation script.
Rudolf Weeber's avatar
Rudolf Weeber committed
73
* The lj_angle and angledist (not-quite)-pair potentials
74
* The following analysis methods:
Rudolf Weeber's avatar
Rudolf Weeber committed
75
  diffusion_profile, cwvac, p_inst, ..._mol, cel_gpb, dipmom_normal, MSD, angularmomentum, cluster_size_dist, mol, lipid_orient_order, get_lipid_orients, current, wall_stuff,
76
  necklace, bilayer, modes2d
77
* The uwerr error estimator
78 79


Rudolf Weeber's avatar
Rudolf Weeber committed
80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103

Known issues and limitations
----------------------------
The numbers refer to issue numbers at http://github.com/espressomd/espresso
* Lattice Boltzmann interpolated velocities are only accurate up to one 
  lattice cell next to a boundary (#1865)
* Adding boundaries in the electrokinetics method resets species densities
  to their initial values (#1899)
* The collision detection feature does not support checkpointing (#1943)
* Changing interaction parameters does not automatically update the value of 
  the force property stored on the particles. Forces are re-calculated in
  the next integration step. (#1973)
* The domain decomposition cell system does not always choose the node grid
  yielding the best performance in parallel simulations (#1970)
* The dipolar P3M method can only be tuned once in a simulation script,
  unless method parameters are explicitly reset to 0 before the second tuning 
  (#1937)
* In rare cases, P3M produces an rs mesh overflow warning (#2067)
* The H5MD file writer cannot handle bounds that involve more than two bond 
  partners (#1715)
* Pickle checkpoints are not guaranteed to be compatible between 
  different ESPResSo versions (#1181)
* Switching from the GPU-Based MMM1D and MMM2D methods to a different 
  electrostatic method within a single simulation script may not work (#396)
Rudolf Weeber's avatar
Rudolf Weeber committed
104 105
* The membrane_collision interaction of the object in fluid framework may
  use an outward direction which is outdated by one time step (#2214)
Rudolf Weeber's avatar
Rudolf Weeber committed
106

Olaf Lenz's avatar
Olaf Lenz committed
107 108 109 110 111 112
ESPResSo 3.3
============

New user-visible features
-------------------------

113 114 115
* SHANCHEN: a bicomponent lattice Boltzmann fluid, with support for rigid 
  boundaries and coupling to particle dynamics.

116 117 118
* ELECTROKINETICS: An algorithm to treat species of ions on a mean-field
  level. Implementation takes advantage of a GPU.

119
* MMM1DGPU: The mmm1d electrostatics algorithm is now available as GPU version.
Olaf Lenz's avatar
Olaf Lenz committed
120

Olaf Lenz's avatar
Olaf Lenz committed
121 122
* Support of P3M on GPU.

123 124 125
* Provide the preliminary Python interface. Configure with
  --with-python-interface.

Olaf Lenz's avatar
Olaf Lenz committed
126
* Allow the p3m to dump the mesh in x, y, and z (before it only dumped
Olaf Lenz's avatar
Olaf Lenz committed
127 128 129
  the mesh in x). This allows for the dumping of the p3m in blockfile
  format in the case of non-cubic boxes. It will also now be possible
  to tune the settings of a non-cubic mesh.
Olaf Lenz's avatar
Olaf Lenz committed
130 131 132 133 134 135

* Stomatocyte lb-boundary and constraint implemented.

* MEMD electrostatics can now handle spatially varying dielectrc
  constants.

Olaf Lenz's avatar
Olaf Lenz committed
136
* Pore constraint / lbboundary can have a two outer radii now to create nozzles.
137

Olaf Lenz's avatar
Olaf Lenz committed
138
* Slitpore constraint and dielectric for IL based supercaps implemented.
139

Olaf Lenz's avatar
Olaf Lenz committed
140 141
* New command time_integration to get the runtime of the integration
  loop.
Olaf Lenz's avatar
Olaf Lenz committed
142

Olaf Lenz's avatar
Olaf Lenz committed
143
* New harmonic well that runs on the GPU.
144

145 146 147 148 149 150
Known bugs
----------

* The implementation of dielectric contrasts in conjunction with ELC
  seems to have an error. Please do not use it if you do not know
  exactly what you are doing until we have fixe the problem.
Florian Weik's avatar
Florian Weik committed
151

Olaf Lenz's avatar
Olaf Lenz committed
152 153
User-visible changes
--------------------
154

Olaf Lenz's avatar
Olaf Lenz committed
155 156 157 158 159 160 161 162
* Added new arguments "recalc_forces" and "reuse_forces" to the
  command "integrate". These arguments can be used to enforce or
  suppress the recalculation of the forces at the beginning of the
  call to "integrate". This is important for doing checkpoints, where
  the forces have to be stored and reloaded.

* Removed command "invalidate_system".

163
* Comfixed now works with periodic boundary conditions.
Axel Arnold's avatar
Axel Arnold committed
164

165 166
* The pressure contribution due to rigid bodies constructed by means of the 
  virtual sites relative mechanism is included, both for pressure and stress 
167 168
  tensor. Note that the corresponding contribution for rigid bonds is still 
  not implemented.
169
 
Olaf Lenz's avatar
Olaf Lenz committed
170 171 172 173
* The configure option "--with-myconfig" has been removed. Instead,
  the configure variable "MYCONFIG" can be set to give the name of a
  myconfig file.

174
* Generic LJ can now be turned into a soft potential.
Olaf Lenz's avatar
Olaf Lenz committed
175 176 177 178 179

* Renamed torque to torque_{lab,body}, improved torque handling in
  blockfiles.  Clearer distinction between the reference frames for
  torque and angular momentum.

Florian Weik's avatar
Florian Weik committed
180 181
* Lattice-Boltzmann now has a additional 3-point coupling scheme.

182
* The noise type in thermalized Lattice-Boltzmann is now selectable via Tcl.
Florian Weik's avatar
Florian Weik committed
183

184
* Interaction with a wall can be restricted to the outside.
Florian Weik's avatar
Florian Weik committed
185

186 187
* Removed compiler switch GRANDCANONICAL.

188 189
* Removed outdated ADRESS code.

Olaf Lenz's avatar
Olaf Lenz committed
190 191
* external_potential tabulated to include arbitrary potentials applied to all 
  particles.
Stefan Kesselheim's avatar
Stefan Kesselheim committed
192

Olaf Lenz's avatar
Olaf Lenz committed
193 194
* thermostat inter_dpd ignore_fixed_particles 1 allows the user to swith on DPD 
  with fixed particles.
Stefan Kesselheim's avatar
Stefan Kesselheim committed
195 196 197 198 199

* New Observable concept that includes running averages and other observables 
  with history


Olaf Lenz's avatar
Olaf Lenz committed
200 201 202
Changes visible for developers
------------------------------

203 204
* Feature GHOSTS_HAVE_BONDS allows for ghost particles to also store the bonds.

Olaf Lenz's avatar
Olaf Lenz committed
205
* The code has been switched to using a C++ compiler.
206

Olaf Lenz's avatar
Olaf Lenz committed
207 208
* Introduced object-oriented interfaces for forces/constraints/external fields: 
  SystemInterface and Actor. 
Olaf Lenz's avatar
Olaf Lenz committed
209

Olaf Lenz's avatar
Olaf Lenz committed
210
* Improved Lattice structure
Stefan Kesselheim's avatar
Stefan Kesselheim committed
211 212 213

* Generic TclAppend function

Olaf Lenz's avatar
Olaf Lenz committed
214 215 216 217 218 219
ESPResSo 3.2
============

New user-visible features
-------------------------

Olaf Lenz's avatar
Olaf Lenz committed
220 221 222
* Added a new immersed boundaries code that allows to simulate
  extended, flexible objects in conjunction with the LB code.  This is
  described in the UG in the new chapter "Object-in-fluid".
Axel Arnold's avatar
Axel Arnold committed
223

Olaf Lenz's avatar
Olaf Lenz committed
224 225 226 227 228 229 230 231 232
* The script tools/blockfile2vtf.tcl can be used to convert ESPResSo
  blockfiles into VTF files.

* Two new short-ranged nonbonded potentials have been added:

  * HAT: the classical conservative DPD interaction, a simple force
    ramp.

  * GAUSSIAN: A Gaussian potential.
Olaf Lenz's avatar
Olaf Lenz committed
233

Olaf Lenz's avatar
Olaf Lenz committed
234 235 236 237
* The feature CATALYTIC_REACTIONS and the command "reaction" model a
  simple chemical reaction: when a particle of the reactant type comes
  into the vincinity of a particle of the catalysator type, the
  reactant is transformed into a particle of the product type.
Olaf Lenz's avatar
Olaf Lenz committed
238

Olaf Lenz's avatar
Olaf Lenz committed
239 240 241
* The feature GHMC implements a generalized hybrid Monte-Carlo
  thermostat.

242 243 244 245
* The feature GRANDCANONICAL provided functions to simplify grandcanonical
  simulations in espresso. To that end it provides functions to find and
  delete random particles of a certain type.

246 247
* Added new feature ROTATION_PER_PARTICLE that allows to choose
  whether a particle has rotational degrees of freedom or not.
248

Olaf Lenz's avatar
Olaf Lenz committed
249 250 251
User-visible changes
--------------------

Olaf Lenz's avatar
Olaf Lenz committed
252 253
* Removed non-working tools and samples.

254 255 256 257 258 259
* Bond angle potentials are now defined on the Tcl-level instead of on
  the feature-level, i.e. to choose the type of the bond-angle
  potential, you should use the corresponding Tcl command instead of a
  feature. To allow for any bond angle potential, activate the feature
  BOND_ANGLE.

Olaf Lenz's avatar
Olaf Lenz committed
260 261 262 263
* We have removed the forcecaps for the different interaction
  types. Instead, there is now a single global forcecap, plus it is
  possible to define individual forcecaps on a particle pair level.

264
* By default, CUDA is now automatically detected and activated when it
Olaf Lenz's avatar
Olaf Lenz committed
265 266
  is there and usable.

Olaf Lenz's avatar
Olaf Lenz committed
267 268 269 270 271 272
* The functions for galilei transformations have been overhauled and
  renamed. The old functions are deprecated.

* DPD (as thermostat) now works without any other interaction, so a pure
  DPD fluid is possible.

Olaf Lenz's avatar
Olaf Lenz committed
273 274 275
ESPResSo 3.1.2
==============

Olaf Lenz's avatar
Olaf Lenz committed
276 277
* Fixed bugs #38475, #37725, #36434.

Olaf Lenz's avatar
Olaf Lenz committed
278 279 280
* Added workaround for bug in VTF reader plugin of VMD 1.9.1 that made
  all particles look the same when ELECTROSTATICS is turned on.

281 282
* Added Tcl-scripts of the tutorials to the distribution.

Olaf Lenz's avatar
Olaf Lenz committed
283 284 285 286 287 288 289
* Added forgotten part of the UG on the correlators.

* Removed buggy readline code tclline.tcl. Fixes #36432.

* Removed Ewald code from ESPResSo that never worked and was never
  documented.

290 291 292
ESPResSo 3.1.1
==============

293 294
* The Espresso binary now outputs the header to STDERR instead of STDOUT.

Olaf Lenz's avatar
Olaf Lenz committed
295
* Fixed bugs #36431, #37120, #37214, #37374, #37306, #35767.
296

297 298
* Fixed generation of myconfig-sample.h.

Olaf Lenz's avatar
Olaf Lenz committed
299 300 301
* Fixed AdResS example.

* Added new logo.
302 303 304

* The documentation sources are now left out of the distribution
  package, only the PDF files are included. This fixes problems when
Olaf Lenz's avatar
Olaf Lenz committed
305
  calling "make doc" in a distribution package (#35958).
306 307 308

ESPResSo 3.1.0
==============
309

Olaf Lenz's avatar
Olaf Lenz committed
310 311
New user-visible features
-------------------------
Olaf Lenz's avatar
Olaf Lenz committed
312

Olaf Lenz's avatar
Olaf Lenz committed
313 314 315 316 317 318 319 320 321
* While so far, observables were typically computed and stored on the
  Tcl-level after a call to "integrate", a new observable concept now
  allows to compute observables while the C-core is running. This is
  particularly useful for observables that have to be computed very
  frequently, as for example in the case of time-correlations
  (e.g. the RMSD of particles).
  The new concept is documented in the User's Guide in Section 8.4
  ("Correlations and observables").

Olaf Lenz's avatar
Olaf Lenz committed
322 323
* The new feature COLLISION_DETECTION allows to dynamically add new
  bonds between colliding particles.
Olaf Lenz's avatar
Olaf Lenz committed
324

325 326
* Added new feature LANGEVIN_PER_PARTICLE that allows to set the
  Langevin parameters temperature and gamma per particle.
Olaf Lenz's avatar
Olaf Lenz committed
327

Olaf Lenz's avatar
Olaf Lenz committed
328
* Added new constraint and LB boundary condition "rhomboid".
Olaf Lenz's avatar
Olaf Lenz committed
329

330
* Lattice-Boltzmann:
Olaf Lenz's avatar
Olaf Lenz committed
331

332
  * nonzero velocity boundary conditions are available
Olaf Lenz's avatar
Olaf Lenz committed
333

334 335
  * forces on boundaries can be calculated

Olaf Lenz's avatar
Olaf Lenz committed
336 337 338 339 340
  * wall constraints work

* Added basic tutorial on Lennard-Jones liquid, made second tutorial
  (simple charged systems) better available (all in doc/tutorials/)

341 342 343 344
* The ICC* algorithm is now ready to use. It is used with the command
  "iccp3m" and allows to take into account dielectric boundaries of
  arbitrary shape. The command "dielectric" allows to create the
  boundaries in a similar fashion as constraints and lbboundaries.
Stefan Kesselheim's avatar
Stefan Kesselheim committed
345

Olaf Lenz's avatar
Olaf Lenz committed
346 347 348
User-visible changes
--------------------

Olaf Lenz's avatar
Olaf Lenz committed
349 350 351 352 353
* The blockfile C-library has been removed. In theory, there was a
  library usable from C that could be used to read and write
  blockfiles. Since several years, it was broken, so apparently it
  wasn't used anyway.

Olaf Lenz's avatar
Olaf Lenz committed
354 355 356
* The NPT barostat now works in many more combinations of
  algorithms than so far (e.g. MMM2D, ELC, ...)

Olaf Lenz's avatar
Olaf Lenz committed
357 358
* The Lattice-Boltzmann CPU implementation now works when Verlet lists
  are used.
Olaf Lenz's avatar
Olaf Lenz committed
359 360 361 362 363 364 365 366 367 368 369 370 371 372 373

* Removed unneccessary overhead of neutral particles in simulations
  with P3M.

* Removed unneccessary overhead of activated but ununsed interaction
  features.

* Some changes in the Verlet list construction yield a performance
  gain of up to 90% in systems where the interaction ranges differ
  significantly, or where some particle types do not interact at all
  (phantom particles).

* Renamed Coulomb method maggs to MEMD (inter coulomb maggs => inter
  coulomb memd).

Olaf Lenz's avatar
Olaf Lenz committed
374 375 376
Changes visible for developers
------------------------------

Olaf Lenz's avatar
Olaf Lenz committed
377 378 379 380
* code_info does now not only show the main package version, but also
  the exact git commit id and whether or not the code was modified
  ("dirty"). Also, the distribution package provides this information.

381 382 383 384 385
* The various features are now defined in the file
  src/features.def. From this file, a couple of Python scripts
  automatically generate myconfig-sample.h and what was config.h and
  config.c. Also, this allows to check whether all features are
  documented, tested and defined.
Olaf Lenz's avatar
Olaf Lenz committed
386 387
  Note that due to this change, ESPResSo development now requires
  Python.
388

Olaf Lenz's avatar
Olaf Lenz committed
389 390 391 392 393 394
* The domain decomposition, P3M, LB and MEMD now use MPI cartesian
  communicators. This will hopefully speed up the simulations on some
  platforms.

* Split interaction code into .c and .h files.

Olaf Lenz's avatar
Olaf Lenz committed
395 396
* Split off the Tcl interface (into src/tcl/) from the C core code (in
  src/)
Olaf Lenz's avatar
Olaf Lenz committed
397 398 399

* Added ESPResSo logos, cover issue images, and some other material to
  the repo (doc/).
Olaf Lenz's avatar
Olaf Lenz committed
400

Olaf Lenz's avatar
Olaf Lenz committed
401 402 403
* Started new LaTeX-Developer's Guide (DG), and moved all "Related
  pages" from the doxygen docs. The doxygen stuff still exists and is
  available via doc/doxygen/.
Olaf Lenz's avatar
Olaf Lenz committed
404

Olaf Lenz's avatar
Olaf Lenz committed
405 406 407
ESPResSo 3.0.2
==============

408 409
* Fixed features ADRESS and VIRTUAL_SITES_COM that did not work for a while.

410
* Fixed bugs #33489, #34238.
Olaf Lenz's avatar
Olaf Lenz committed
411 412 413 414

* Fixed a few bugs that were never reported via the bug tracker,
  mainly in the documentation.

Olaf Lenz's avatar
Olaf Lenz committed
415 416
ESPResSo 3.0.1
==============
417

418
* Fixed bugs #33375,#33376,#32005
Olaf Lenz's avatar
Olaf Lenz committed
419

Olaf Lenz's avatar
Olaf Lenz committed
420
* Fixed a few bugs that were never reported via the bug tracker.
Olaf Lenz's avatar
Olaf Lenz committed
421 422 423

ESPResSo 3.0.0
===============
424

Olaf Lenz's avatar
Olaf Lenz committed
425 426
User-visible changes
--------------------
427

Olaf Lenz's avatar
Olaf Lenz committed
428 429 430 431
* The Lattice-Boltzmann implementation in ESPResSo has been
  significantly overhauled and it has been documented for the first
  time.

Olaf Lenz's avatar
Olaf Lenz committed
432 433 434
* A CUDA implementation for NVIDIA GPUs of the Lattice-Boltzmann
  algorithm is included.

Olaf Lenz's avatar
Olaf Lenz committed
435 436 437 438 439
* The Maggs algorithm (or Maxwell Equation Molecular Dynamics, MEMD)
  for computing electrostatic interactions has been included and
  documented. The algorithm is a fast and scalable alternative for P3M
  or other such algorithms.

Olaf Lenz's avatar
Olaf Lenz committed
440 441
* The P3M algorithm for electrostatic and dipolar (magnetostatic)
  interactions has been extended.
442

Olaf Lenz's avatar
Olaf Lenz committed
443 444
  * Electrostatic P3M allows for non-cubic boxes.

Olaf Lenz's avatar
Olaf Lenz committed
445
  * The electrostatic P3M pressure tensor is computed correctly now.
Olaf Lenz's avatar
Olaf Lenz committed
446 447 448 449 450 451

  * Dipolar P3M has been parallelized (electrostatics P3M was
    parallelized already!)

  * The MDLC method (magnetic dipolar layer correction) has been
    parallelized.
452 453 454 455 456 457 458 459 460 461

* The virtual sites feature has been significantly extended and
  documented.  Virtual sites are particles that can interact with
  other particles but whose positions are not integrated via the
  normal integrator.  Instead, the positions are determined by the
  positions of other, "real" particles.  Virtual sites can either be
  set into the center of mass of a set of real particles (feature
  VIRTUAL_SITES_COM), or it can be set to an arbitrary location
  relative to another particle (VIRTUAL_SITES_RELATIVE).  This allows
  to create rigid structures within ESPResSo.
Olaf Lenz's avatar
Olaf Lenz committed
462

Olaf Lenz's avatar
Olaf Lenz committed
463 464
* The User's Guide has been significantly updated and extended.

Olaf Lenz's avatar
Olaf Lenz committed
465
* Some constraints can now be made penetrable and reflecting.
Olaf Lenz's avatar
Olaf Lenz committed
466

Olaf Lenz's avatar
Olaf Lenz committed
467 468 469 470
* "Espresso" is now the actual binary instead of a wrapper shell
  script that automatically calls MPI. This means that it is necessary
  to call "mpiexec" or "mpirun" youself to run ESPResSo in an MPI
  environment.
Olaf Lenz's avatar
Olaf Lenz committed
471

Olaf Lenz's avatar
Olaf Lenz committed
472 473 474 475
* The directory where the scripts are installed is now compiled into
  the binary, i.e. it is not necessary anymore to set the environment
  variable ESPRESSO_SCRIPTS. Still, it will heed the environment
  variable if it is set.
Olaf Lenz's avatar
Olaf Lenz committed
476

Olaf Lenz's avatar
Olaf Lenz committed
477
* The build system has been overhauled and simplified.
Olaf Lenz's avatar
Olaf Lenz committed
478 479 480 481 482 483 484 485 486 487 488 489 490

  * Running "make check" will run the testsuite with a single number
    of processors, which gives a significant speedup. "configure" will
    try to determine the available number of CPUs/cores. If it can't,
    it will use 1 by default.

  * MPI recognition has changed. The build system first needs to find
    out how to compile an MPI binary. If it doesn't find out
    automatically, you can help it by setting the variable MPICC or
    LDFLAGS correctly.  Furthermore, it needs to know how to run an MPI
    binary.  If "mpiexec" is available, everything is fine.  If it is
    not, you can provide a script "mympiexec.sh" that behaves like
    mpiexec.
Olaf Lenz's avatar
Olaf Lenz committed
491

Olaf Lenz's avatar
Olaf Lenz committed
492 493 494 495 496 497 498 499
  * So far, when you built in the source directory, all files ended up
    in a subdirectory "obj.XXX", where XXX was some description of the
    processor you used.  This non-standard behavior has been removed.
    Instead, the files are generated directly in the source directory
    when compiling there.
    If you want to compile several binaries from a single source
    directory, you can use build directories as described in the
    User's Guide.
Olaf Lenz's avatar
Olaf Lenz committed
500

501 502 503 504 505 506
* A number of functions have been deprecated, as they are not
  maintained anymore. Plase do not use them in your code and replace
  them with appropriate alternatives if you use them in your code!
  The following functions are deprecated:
  checkpoint_*, polyBlock*, calcOb*, calcObs*, plot*, polyConf*

507 508
* FFTW2 is no longer supported.

Olaf Lenz's avatar
Olaf Lenz committed
509 510 511
Organizational changes
----------------------

Olaf Lenz's avatar
Olaf Lenz committed
512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543
* The home page of ESPReSso has been relocated to

    http://espressomd.org

* The mailing list and source code repository have been moved to GNU
  Savannah. Furthermore, we have a bugtracker now. The development
  homepage is 

    https://savannah.nongnu.org/projects/espressomd

* The maintenance of ESPResSo has been relocated from Torsten Stühn
  from the Max-Planck-Institute for Polymer Research at Mainz to 

    Olaf Lenz <olenz@icp.uni-stuttgart.de>

  from the Institute for Computational Physics at Stuttgart University.

* The old "ESPResSo license" was removed, as it was not really a
  license, but only contained additions that were either non-binding
  or already contained in the GPL.

* The license was upgraded to GPLv3.

* The package was adapted to GNU standards. RELEASE_NOTES was moved
  aside to old/RELEASE_NOTES, instead, we will have the files
  ChangeLog and NEWS. NEWS will contain a description of the most
  noteworthy changes since the last release.

Changes visible for developers
------------------------------

* The source code repository has been moved from CVS to git, and it
Olaf Lenz's avatar
Olaf Lenz committed
544 545 546 547 548 549 550 551 552 553 554 555
  has moved to GNU Savannah (see above) and github. The main
  development code repository is

    https://github.com/espressomd/espresso

* We have an automated build server (Jenkins) at 

    http://espressomd.org/jenkins/ 

  that automatically builds and checks the ESPResSo package whenever
  new code is pushed to the main development repository.  Every night,
  a number of additional tests are performed
Olaf Lenz's avatar
Olaf Lenz committed
556

557
* The .c/.h/.cu source files have been moved to the subdirectory
558 559 560
  src/. The Espresso binary is still placed in the top-level build
  directory. myconfig.h may be placed eitther in the src/ or top-level
  dirs.
561 562 563 564 565 566

* The automatically generated files configure and Makefile.in are not
  part of the repository anymore.  A developer can generate them using
  the command "bootstrap.sh", which requires the GNU autotools
  (autoconf and automake).

Olaf Lenz's avatar
Olaf Lenz committed
567 568 569 570
* All functions that represent the interface to Tcl should follow the
  same naming conventions. These are described here:

    git log 3d4d6f31655a8d96e47c8f80e10f27f6b764f8df
571

Olaf Lenz's avatar
Olaf Lenz committed
572 573 574 575
* Adding a new MPI function to communication.c has been significantly
  simplified. It is enough to add the function in the C file at a
  single location.

576 577 578 579
========================================================================
For older changes to ESPResSo, see ./old/RELEASE_NOTES.

========================================================================
580
Copyright (C) 2010,2011,2012,2013,2014 The ESPResSo project
581

582 583 584 585
Copying and distribution of this file, with or without modification,
are permitted in any medium without royalty provided the copyright
notice and this notice are preserved.  This file is offered as-is,
without any warranty.