jaxdem.domains.free#
Unbounded (free) simulation domain.
Classes
|
A Domain implementation representing an unbounded, "free" space. |
- class jaxdem.domains.free.FreeDomain(box_size: Array, anchor: Array)[source]#
Bases:
Domain
A Domain implementation representing an unbounded, “free” space.
In a FreeDomain, there are no explicit boundary conditions applied to particles. Particles can move indefinitely in any direction, and the concept of a “simulation box” is only used to define the bounding box of the system.
Notes
The box_size and anchor attributes are dynamically updated in the shift method to encompass all particles. Some hashing tools require the domain size.
- static displacement(ri: jax.Array, rj: jax.Array, _: System) jax.Array [source][source]#
Computes the displacement vector between two particles.
In a free domain, the displacement is simply the direct vector difference between the particle positions.
- Parameters:
ri (jax.Array) – Position vector of the first particle \(r_i\).
rj (jax.Array) – Position vector of the second particle \(r_j\).
_ (System) – The system object.
- Returns:
The direct displacement vector \(r_i - r_j\).
- Return type:
jax.Array