mindspore.ops.BondForce
- class mindspore.ops.BondForce(bond_numbers, atom_numbers)[source]
Calculate the force exerted by the simple harmonic bond on the corresponding atoms. Assume the number of harmonic bonds is m and the number of atoms is n.
Because there is a large amount of inputs and each of them are related, there is no way to construct Examples using random methods. For details, refer the webpage SPONGE in MindSpore.
\[dr = (x_1-x_2, y_1-y_2, z_1-z_2)\]\[F = (F_x, F_y, F_z) = 2*k*(1 - r_0/|dr|)*dr\]- Parameters
atom_numbers (int32) – the number of atoms n.
bond_numbers (int32) – the number of harmonic bonds m.
- Inputs:
uint_crd_f (Tensor) - The unsigned int coordinate value of each atom. The data type is uint32 and the shape is \((n, 3)\).
scaler_f (Tensor) - The 3-D scale factor (x, y, z), between the real space float coordinates and the unsigned int coordinates. The data type is float32 and the shape is \((3,)\).
atom_a (Tensor) - The first atom index of each bond. The data type is int32 and the shape is \((m,)\).
atom_b (Tensor) - The second atom index of each bond. The data type is int32 and the shape is \((m,)\).
bond_k (Tensor) - The force constant of each bond. The data type is float32 and the shape is \((m,)\).
bond_r0 (Tensor) - The equlibrium length of each bond. The data type is float32 and the shape is \((m,)\).
- Outputs:
frc_f (Tensor) - The force felt by each atom. The data type is float32 and the shape is \((n, 3)\).
- Supported Platforms:
GPU