Introducing E-Cell 3.2
   Moriyoshi Koizumi <mozo@riken.jp>

       Biochemical Simulation Research Team,
            Adva...
Summary

• About E-Cell 3.2
 • 3.2.0 just got out of the door
 • What's new in 3.2?
• Towards E-Cell 4
E-Cell 3.2.0 released
E-Cell 3.2.0
• The very first release of 3.2 series
• Many major and minor bugs have been
  fixed since 3.1.107

• New featu...
Bugfixes
• Through overhaul of DM facility
 • There were major design issues that
    had caused instability.

 • Lots of A...
Bugfixes
• A Long-standing differential stepper
  problem

 • Velocity was not correctly calculated
     right after (re)in...
Bugfixes
• Reimplementation of session manager
 • Much more stability
   • especially used on the local
     machine

 • Su...
t=0

before                   stop
 3.2.0         restart



3.2.0                    stop

               restart
Other changes
• Many API functions are now
  deprecated.

 • VariableReference::getValue() etc.
• libemc is declared obsol...
Other changes
• Python code was updated to use
  modern library functions

• Improvements on Python binding
 • Optimizatio...
from ecell.ecs import Process, Variable

class MyProcess(Process):
    IsContinuous = True
    def initialize(self):
     ...
Other changes

• Official support for the following
  platforms:

 • Mac OS X
 • 64bit Windows
• Removed dependency on glad...
Towards E-Cell 4
• E-Cell 4 will be highly rule-based and
  also highly scriptable

• Script-based modeling is already
  c...
rootSystem = sim.getEntity('System::/')
S = sim.createVariable('Variable')
P = sim.createVariable('Variable')
E = sim.crea...
Acknowledgements
• JST CREST
• KEIO University
  Masaru Tomita, Takeshi Sakurada, Kazunari Kaizu, Taiko Nishino, Ayako
  "...
Upcoming SlideShare
Loading in...5
×

Introducing E-Cell 3.2

967

Published on

Slides used in my talk at E-Cell Workshop 2010

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
967
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Introducing E-Cell 3.2

  1. 1. Introducing E-Cell 3.2 Moriyoshi Koizumi <mozo@riken.jp> Biochemical Simulation Research Team, Advanced Science Institute, RIKEN
  2. 2. Summary • About E-Cell 3.2 • 3.2.0 just got out of the door • What's new in 3.2? • Towards E-Cell 4
  3. 3. E-Cell 3.2.0 released
  4. 4. E-Cell 3.2.0 • The very first release of 3.2 series • Many major and minor bugs have been fixed since 3.1.107 • New features that may draw some attention • All users are encouraged to upgrade to 3.2.0
  5. 5. Bugfixes • Through overhaul of DM facility • There were major design issues that had caused instability. • Lots of API change involved. • Binary compatibility has been lost! • You need to recompile DM's.
  6. 6. Bugfixes • A Long-standing differential stepper problem • Velocity was not correctly calculated right after (re)initialization • DifferentialStepper API has been changed • StepInterval ➡ NextTime • updateInternalState()
  7. 7. Bugfixes • Reimplementation of session manager • Much more stability • especially used on the local machine • Support for Globus 4 • LSF support (by Giuseppe Aprea)
  8. 8. t=0 before stop 3.2.0 restart 3.2.0 stop restart
  9. 9. Other changes • Many API functions are now deprecated. • VariableReference::getValue() etc. • libemc is declared obsolete • Polymorph class was refactored to be more efficient • Added Model::deleteEntity() to support dynamically generated reaction rules
  10. 10. Other changes • Python code was updated to use modern library functions • Improvements on Python binding • Optimization of Logger to NumPy interface • Providing interface to directly manipulate C++ objects • Now users can implement Processes, Variables and Systems in Python!
  11. 11. from ecell.ecs import Process, Variable class MyProcess(Process): IsContinuous = True def initialize(self): pass def fire(self): return 1 class MyVariable(Variable): def initialize(self): pass def onValueChanging(self, val): return val theSimulator.addPythonDM(MyProcess) theSimulator.addPythonDM(MyVariable) loadModel('mymodel.eml') run(100)
  12. 12. Other changes • Official support for the following platforms: • Mac OS X • 64bit Windows • Removed dependency on glade in favor of GtkBuilder
  13. 13. Towards E-Cell 4 • E-Cell 4 will be highly rule-based and also highly scriptable • Script-based modeling is already covered in 3.2 • migration from EmPy • Rule-based modeling will be supported in 3.3
  14. 14. rootSystem = sim.getEntity('System::/') S = sim.createVariable('Variable') P = sim.createVariable('Variable') E = sim.createProcess('MassActionFluxProcess') rootSystem.registerEntity(S) rootSystem.registerEntity(P) rootSystem.registerEntity(E) S.ID = 'S' P.ID = 'P' E.ID = 'E' E.k = .3 E.VariableReferences.add('S0', S, -1) E.VariableReferences.add('P0', P, 1) sim.run()
  15. 15. Acknowledgements • JST CREST • KEIO University Masaru Tomita, Takeshi Sakurada, Kazunari Kaizu, Taiko Nishino, Ayako "Kinoshita" Yachie and many kind students. • RIKEN Koichi Takahashi, Satya Nanda Vel Arjunan • Mitsubishi Space Software Sachio Nohara, Chihiro Okada, Yasuo Ohara, Gen Ishikawa and Takeshi Yuasa
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×