Changelog

Mostly changes in the Python Scripting API reflect the changes in SAMSON SDK.

Below is the list of changes for each version.

0.8.5

Issue fixes.

Modified the string representations (__repr__) for some nodes. Added a printDebugInfo function to some classes which prints some debug info from SAMSON to C++ standard output (stdout) that can be checked with the Log Viewer Element.

Below are listed the changes in the Python Scripting API per sub-module.

DataModel

DataModel.Quantity

Renamed str function to toString function.

DataModel.DataGraph

Node

Class: samson.DataModel.DataGraph.Node.

  • Added setColorScheme - a convenience function that directly sets the color scheme to a node.
  • Removed addMaterial in favor of setMaterial.
  • Modified DataModel.DataGraph.NodeIndexer.getRootNodes().

Group

Class: samson.DataModel.DataGraph.Group.

DataModel.Document

Document

Class: samson.DataModel.Document.Document.

Folder

Class: samson.DataModel.Document.Folder.

  • Fixed exposures for the following functions: getChildren, getFolderList, getModelList, getStructuralModelList, getVisualModelList, getDynamicalModelList, getInteractionModelList, getPropertyModelList, getSimulatorList, getControllerList, getNodeGroupList, getConformationList, getPathList, getLabelList, getCameraList.

Modeling

Modeling.Element

ElementTable

Class: samson.Modeling.Element.ElementTable.

  • Fixes in the class: all functions and properties are now static.

Element

Class: samson.Modeling.Element.Element.

Modeling.StructuralModel

StructuralModel

Class: samson.Modeling.StructuralModel.StructuralModel.

Conformation

Class: samson.Modeling.StructuralModel.Conformation.

Atom

Class: samson.Modeling.StructuralModel.Atom.

Grid

Class: samson.Modeling.StructuralModel.Grid.

  • Fixed exposure for samson.Modeling.StructuralModel.Conformation.getNeighborIndexer().

0.8.4

GUI

Class Action (samson.GUI.Action.Action) was moved from samson.GUI to samson.GUI.Action sub-module.

Modeling

Modeling.Model

Modeling.StructuralModel

Core

Core.Class

Core.Reference

0.8.3

No changes in public API.

0.8.2

Fixes in some docstrings.

No changes in public API.

0.8.1

DataModel

DataModel.Type

samson.DataModel.Type: fixed some issues with unit types.

DataModel.Quantity

samson.DataModel.Quantity: exposed mathematical functions for units, e.g.: fabs, floor, ceil, round, pow, sqrt, root, exp, log, sin, asin, …

0.8.0

Major changes according to changes in SAMSON SDK 0.8.0. The SAMSON 0.8.0 release brings major changes in SAMSON and SAMSON SDK. It also improves stability and fixes known issues.

Below are listed the changes in the Python Scripting API per sub-module.

Facade

Facade.SAMSON

The getActiveModel function has been renamed to getActiveStructuralModel (samson.Facade.SAMSON.getActiveStructuralModel).

New/updated functions:

DataModel

DataModel.Type

samson.DataModel.Type: small changes and issue fixes.

DataModel.Document

Folder

Class: samson.DataModel.Document.Folder

samson.DataModel.Document.Layer has been changed to samson.DataModel.Document.Folder.

Layer has been changed to a more general Folder (samson.DataModel.Document.Folder). A Folder object can contain almost any node types, including other folders. Any usage of an active layer (samson.Facade.SAMSON.getActiveLayer()) should be modified to e.g. an active document (samson.Facade.SAMSON.getActiveDocument()). Any other usages of an Layer should be modified to use either a Folder or an active document.

Folder (samson.DataModel.Document.Folder) has parts of the Layer functionality and some new functionality e.g. get lists of nodes of different types.

Document

Class: samson.DataModel.Document.Document.

New functionality:

  • getActiveCamera
  • setActiveCamera
  • getActiveStructuralModel
  • setActiveStructuralModel
  • createGroup
  • groupSelection
  • selectGroupNodes
  • addGroupNodesToSelection
  • removeGroupNodesFromSelection
  • intersectGroupNodesWithSelection

Camera

Class: samson.DataModel.Document.Camera.

New/updated functionality:

DataModel.DataGraph

Node

Class: samson.DataModel.DataGraph.Node.

New/updated functionality:

  • getNextNode
  • getPreviousNode
  • getDocument
  • canAddChild
  • canAddChildType
  • isOneOf
  • isType
  • isModel
  • isStructuralModel
  • isVisualModel
  • isDynamicalModel
  • isInteractionModel
  • isPropertyModel
  • isSimulator
  • isStructuralParticle

These changes also affect all classes derived from the samson.DataModel.DataGraph.Node class i.e.: samson.DataModel.Document.Folder.html, samson.Modeling.StructuralModel.StructuralModel.html, samson.Modeling.StructuralModel.Group.html, samson.Modeling.StructuralModel.Molecule.html, samson.Modeling.StructuralModel.Residue.html, samson.Modeling.StructuralModel.Backbone.htm, samson.Modeling.StructuralModel.Particle.html, samson.Modeling.StructuralModel.Atom.html, etc.

NodeIndexer

Class: samson.DataModel.DataGraph.NodeIndexer.

New functionality:

Modeling

Modeling.StructuralModel

Root

Class: samson.Modeling.StructuralModel.Root.

The structural root (samson.Modeling.StructuralModel.Root) is now hidden and implicit. When creating a structural model (samson.Modeling.StructuralModel.StructuralModel) it is not necessary anymore to add it to the structural root of a Document (samson.DataModel.Document.Document), it will be done implicitly.

Path

Class: samson.Modeling.StructuralModel.Path.

Major changes in the samson.Modeling.StructuralModel.Path class:

Setter and getter functions for position, velocity, and force data have been changed from 1d arrays to 2d arrays; functions have been updated accordingly:

  • setPositionArray modified and renamed to setPositionData
  • getPositionArray modified and renamed to getPositionData
  • setVelocityArray modified and renamed to setVelocityData
  • getVelocityArray modified and renamed to getVelocityData
  • setForceArray modified and renamed to setForceData
  • getForceArray modified and renamed to getForceData
  • setEnergyArray modified and renamed to setEnergyData
  • getEnergyArray modified and renamed to getEnergyData
  • setTimeArray modified and renamed to setTimeData
  • getTimeArray modified and renamed to getTimeData

New functionality:

  • add, insert, and remove Particle (samson.Modeling.StructuralModel.Particle): addStructuralParticle, insertStructuralParticle, removeStructuralParticle;
  • add, insert, remove, and copy frames: add, insert, remove, copy;
  • create Conformation (class:samson.Modeling.StructuralModel.Conformation) from Path: createConformation, createConformations;
  • create StructuralModel (samson.Modeling.StructuralModel.StructuralModel) from Path: createStructuralModels;
  • change the stride of the Path animation: stride attribute.

Conformation

Class: samson.Modeling.StructuralModel.Conformation.

Renamings:

  • getNumberOfPositions renamed to getNumberOfStructuralParticles;
  • getAtomIndexer renamed to getStructuralParticleIndexer.

New/updated functionality:

  • createStructuralModels - create structural models from this conformation;
  • getter and setter functions for position data: getPositionData and setPositionData;
  • getter and setter functions for velocity data: getVelocityData and setVelocityData;
  • getter and setter functions for force data: getForceData and setForceData;
  • getter and setter functions for energy: getEnergy and setEnergy;
  • getter and setter functions for time: getTime and setTime ;
  • getter and setter functions for position of a structural particle: getPosition and setPosition;
  • getter and setter functions for velocity of a structural particle: getVelocity and setVelocity;
  • getter and setter functions for force of a structural particle: getForce and setForce.

Residue

Class: samson.Modeling.StructuralModel.Residue.

New functionality:

  • samson.Modeling.StructuralModel.setSecondaryStructureType() - allows you to set the secondary structure type.

0.7.5

Internal changes, no API changes. More checks added in the initialization of Python Scripting.

0.7.4

Bugfix: fixed bindings for constructors for specific types of Type.intervalVector3 (bindings for SBDTypePhysicalIAVector3 from SAMSON API).

0.7.3

New Python bindings for SAMSON API:

Some issue fixes.

0.7.2

Some issue fixes.

DataModel

DataModel.Type

Changes in samson.DataModel.Type:

DataModel.DataGraph

Node

Added samson.DataModel.DataGraph.Node.castToLabel() function.

0.7.1

New Python bindings for SAMSON API:

DataModel

DataModel.Type

Changes in samson.DataModel.Type:

Due to change in Types (samson.DataModel.Type) there were a few changes in samson.Modeling.StructuralModel.NodeParticle, which concerns samson.Modeling.StructuralModel.Atom. The following attributes position, x, y, z were changed to getter and setter functions: getPosition, setPosition, getX, setX, etc. The same changes with removing exposition of getter and setter functions as attributes for Types (samson.DataModel.Type) were done for the following classes: samson.DataModel.Document.Label, samson.DataModel.Document.Camera.

DataModel.DataGraph

Node