geometricmd.geometry_pbc.
Curve
(start_point, end_point, number_of_nodes, energy)[source]¶The purpose of this object is to provide a Curve object that has similar behaviour to that described in [Sutton2013].
start_point
¶numpy.array
A NumPy array describing the first point in the curve.
end_point
¶numpy.array
A NumPy array describing the last point in the curve.
number_of_nodes
¶int
The total number of nodes that the curve is to consist of, including the start and end points.
energy
¶float
The total Hamiltonian energy to be used in the simulation.
tangent
¶numpy.array
The tangent of the straight line segment joining the start_point to the end_point, rescaled according to [Sutton2013].
points
¶numpy.array
An NumPy array containing all the points of the curve.
default_initial_state
¶numpy.array
A NumPy array consisting of flags that indicate which nodes are movable initially.
movement
¶float
A variable which records the total movement of the curve as calculated in [Sutton2013].
nodes_moved
¶numpy.array
A binary NumPy array indicating whether a node has been moved. Used to determine when all the nodes in the curve have been moved.
node_movable
¶numpy.array
A binary NumPy array indicating whether a node is movable.
number_of_distinct_nodes_moved
¶int
A counter recording the total number of nodes that have moved.
configuration
¶dict
A dictionary containing the information from the configuration file.
cells
¶list
A list of NumPy arrays describing the unit cell in each configuration.
__init__
(start_point, end_point, number_of_nodes, energy)[source]¶The constructor for the Curve class.
Note
This class is intended to be used by the SimulationServer module.
Parameters: |
|
---|
all_nodes_moved
()[source]¶This method determines whether every node in the global curve has been tested for length reduction.
Returns: | True if all of the nodes have been tested, False otherwise. |
---|---|
Return type: | bool |
get_points
()[source]¶Accessor method for the points attribute.
Returns: | An array containing all of the points of the curve. |
---|---|
Return type: | numpy.array |
next
()[source]¶Returns: | The node number of the next movable node. If no such node exists then it returns None. |
---|---|
Return type: | int |
set_node_movable
()[source]¶Resets all of the flags in the curve to indicate that the current iteration of the Birkhoff algorithm is over.
set_node_position
(node_number, new_position, new_cell)[source]¶Update the position of the node at node_number to new_position. This processes the logic for releasing neighbouring nodes for further computation.
Parameters: |
|
---|