SAMSON
| |
| |
Developer(s) | NANO-D - INRIA |
---|---|
Preview release | 0.4.0 |
Written in | C++ (Qt) |
Operating system | Windows, OS X, Linux |
Website |
www |
SAMSON (Software for Adaptive Modeling and Simulation Of Nanosystems) is a software platform for computational nanoscience being developed by the NANO-D group at the French Institute for Research in Computer Science and Automation (INRIA).[1]
SAMSON has a modular architecture that makes it suitable for different domains of nanoscience, including material science, life science, physics, electronics, chemistry, and education.[2]
SAMSON Elements
SAMSON Elements are modules for SAMSON, developed with the SAMSON Software Development Kit (SDK). SAMSON Elements help users perform tasks in SAMSON, including building new models, performing calculations, running interactive or offline simulations, and visualizing and interpreting results.
SAMSON Elements may contain different class types, including for example:
- Apps – generic classes with a graphical user interface that extend the functions of SAMSON
- Editors – classes that receive user interaction events to provide editing functions (e.g., model generation, structure deformation, etc.)
- Models – classes that describe properties of nanosystems (see below)
- Parsers – classes that may parse files to add content to SAMSON's data graph (see below)
SAMSON Elements expose their functions to SAMSON and other Elements through an introspection mechanism, and may thus be integrated and pipelined.
Modeling and simulation
SAMSON represents nanosystems using five categories of models:
- Structural models – describe geometry and topology
- Visual models – provide graphical representations
- Dynamical models – describe dynamical degrees of freedom
- Interaction models – describe energies and forces
- Property models – describe traits that do not enter in the first four model categories
Simulators (potentially interactive ones) are used to build physically-based models, and predict properties.
Data graph
All models and simulators are integrated into a hierarchical, layered structure that form the SAMSON data graph. SAMSON Elements interact with each other and with the data graph to perform modeling and simulation tasks. A signals and slots mechanism makes it possible for data graph nodes to send events when they are updated, which makes it possible to develop e.g., adaptive simulation algorithms.[3][4][5]
Features
SAMSON is developed in C++ and implements many features to ease development of SAMSON Elements, including:
- Managed memory
- Signals and slots
- Serialization
- Multilevel undo-redo
- Introspection
- Referencing
- Unit system
- SAMSON Element source code generators
SAMSON Connect
SAMSON, SAMSON Elements and the SAMSON Software Development Kit are distributed via the SAMSON Connect website.[6] The site acts as a repository for the SAMSON Elements being uploaded by developers, and users of SAMSON choose and add Elements from SAMSON Connect.
See also
- Gabedit
- Jmol
- Molden
- Molekel
- PyMol
- RasMol
- UCSF Chimera
- Visual Molecular Dynamics (VMD)
- Molecular design software
- List of software for molecular mechanics modeling
References
- ↑ NANO-D group at INRIA
- ↑ SAMSON Connect
- ↑ Artemova, Svetlana; Redon, Stephane (2012). "Adaptively Restrained Particle Simulations". Physical Review Letters 109 (19): 190201:1–5. Bibcode:2012PhRvL.109s0201A. doi:10.1103/PhysRevLett.109.190201.
- ↑ Bosson, Mael; Grudinin, Sergei; Bouju, Xavier; Redon, Stephane (2012). "Interactive physically-based structural modeling of hydrocarbon systems". Journal of Computational Physics 231 (6): 2581–2598. Bibcode:2012JCoPh.231.2581B. doi:10.1016/j.jcp.2011.12.006.
- ↑ Bosson, Mael; Grudinin, Sergei; Redon, Stephane (2013). "Block-Adaptive Quantum Mechanics: An Adaptive Divide-and-Conquer Approach to Interactive Quantum Chemistry". Journal of Computational Chemistry 34 (6): 492–504. doi:10.1002/jcc.23157. PMID 23108532.
- ↑ SAMSON Connect