API Reference

AcquaCalda.everyMethod
every(n_steps) do sys ... end

create a callback that fires every n_steps timesteps.

source
AcquaCalda.heat_fluxMethod
heat_flux(model, p_i, p_j, p_j_data, contact, dt) -> Float64

return the heat energy transferred across the contact this timestep [J]. positive = heat flows from i to j.

source
AcquaCalda.heat_fluxMethod
heat_flux(::FourierContact, p_i, p_j, p_j_data, contact, dt) -> Float64

steady-state conduction across a circular contact area. returns heat transferred this timestep [J].

source
AcquaCalda.normal_forceMethod
normal_force(model, p_i, p_j, p_j_data, overlap, overlap_dot) -> Float64

return the scalar normal force magnitude (positive = repulsive). p_j_data is nothing for particle-wall contacts.

source
AcquaCalda.run!Method
run!(system; t_end=1.0, callbacks=Callback[]) -> system

run the simulation from system.time to t_end.

source
AcquaCalda.step!Method
step!(system, integrator, dt)

update particle positions, velocities, and angular velocities for one timestep. forces must be computed before calling this.

source
AcquaCalda.tangential_forceMethod
tangential_force(model, p_i, p_j, p_j_data, contact) -> SVector{3,Float64}

return the tangential force vector at the contact. defaults to zero (frictionless).

source
AcquaCalda.update!Method
update!(system, neighbor_search)

rebuild the neighbor list and populate system.contacts with all particle-particle and particle-wall overlaps found this timestep.

source