sponge.function.GetVector
- class sponge.function.GetVector(use_pbc: bool = None)[source]
The class to get vector with or without PBC box
- Parameters
use_pbc (bool) – Whether to calculate vector under periodic boundary condition. If
None
is given, it will determine whether to use periodic boundary conditions based on whether thepbc_box
is provided. Default:None
.
Examples
>>> import mindspore as ms >>> import numpy as np >>> from sponge.function import GetVector >>> from mindspore import Tensor >>> crd = Tensor(np.random.random((4, 3)), ms.float32) >>> pbc_box = Tensor([[0.5, 0.5, 0.5]], ms.float32) >>> gd = GetVector(use_pbc=True) >>> gd(crd[0], crd[1], pbc_box) Tensor(shape=[1, 3], dtype=Float32, value= [[ 5.14909625e-02, -4.62748706e-02, -1.20763242e-01]]) >>> gd = GetVector(use_pbc=False) >>> gd(crd[0], crd[1]) Tensor(shape=[3], dtype=Float32, value= [ 5.14909625e-02, 4.53725129e-01, -1.20763242e-01])
- calc_vector_default(initial: Tensor, terminal: Tensor, pbc_box: Tensor = None)[source]
get vector.
- Parameters
initial (Tensor) – Tensor of shape \((B, ..., D)\) . B means batchsize, i.e. number of walkers in simulation. D means spatial dimension of the simulation system. Usually is 3. Data type is float. Coordinate of initial point
terminal (Tensor) – Tensor of shape \((B, ..., D)\) . Data type is float. Coordinate of terminal point
pbc_box (Tensor) – Tensor of shape \((B, D)\) . Data type is float. Default:
None
.
- calc_vector_nopbc(initial: Tensor, terminal: Tensor, pbc_box: Tensor = None)[source]
get vector without perodic bundary condition.
- Parameters
initial (Tensor) – Tensor of shape \((B, ..., D)\) . B means batchsize, i.e. number of walkers in simulation. D means spatial dimension of the simulation system. Usually is 3. Data type is float. Coordinate of initial point
terminal (Tensor) – Tensor of shape \((B, ..., D)\) . Data type is float. Coordinate of terminal point
pbc_box (Tensor) – Tensor of shape \((B, D)\) . Data type is float. Default:
None
.
- calc_vector_pbc(initial: Tensor, terminal: Tensor, pbc_box: Tensor = None)[source]
get vector with perodic bundary condition.
- Parameters
initial (Tensor) – Tensor of shape \((B, ..., D)\) . B means batchsize, i.e. number of walkers in simulation. D means spatial dimension of the simulation system. Usually is 3. Data type is float. Coordinate of initial point
terminal (Tensor) – Tensor of shape \((B, ..., D)\) . Data type is float. Coordinate of terminal point
pbc_box (Tensor) – Tensor of shape \((B, D)\) . Data type is float. Default:
None
.