mindspore.ops.BondForce

class mindspore.ops.BondForce(*args, **kwargs)[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.

dr=(x1x2,y1y2,z1z2)
F=(Fx,Fy,Fz)=2k(1r0/|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, uint32 ) - [n, 3], the unsigned int coordinate value of each atom.

  • scaler_f (Tensor, float32) - [3,], the 3-D scale factor (x, y, z), between the real space float coordinates and the unsigned int coordinates.

  • atom_a (Tensor, int32) - [m,], the first atom index of each bond.

  • atom_b (Tensor, int32) - [m,], the second atom index of each bond.

  • bond_k (Tensor, float32) - [m,], the force constant of each bond.

  • bond_r0 (Tensor, float32) - [m,], the equlibrium length of each bond.

Outputs:
  • frc_f (float32 Tensor) - [n, 3], the force felt by each atom.

Supported Platforms:

GPU