src/links/intri-points.jl

MEDYAN.make_in_tri_point!

make_in_tri_point!(c::Context; tri, bary, memb_idx=nothing, memb_id=nothing, state=Int64(0), gamma=0.0)::Tag{InTriPointIdx}

Create a new in-triangle point on a membrane and return a tag for it.

The membrane is identified by exactly one of memb_idx or memb_id.

Keyword Arguments

  • memb_idx::Union{Integer, Nothing}=nothing: Index of the membrane in the context.
  • memb_id::Union{MembId, Nothing}=nothing: Stable id of the membrane.
  • tri::Integer: 1-based index of the triangle on that membrane.
  • bary::SVector{2, Float64}: Barycentric coordinates (λ₂, λ₃) of the point inside the triangle. λ₁ = 1 − λ₂ − λ₃.
  • state::Int64=Int64(0): User-defined state value for chemical reactions.
  • gamma::Float64=0.0: Friction coefficient (pN·s/nm).

See also: remove_in_tri_point!, update_in_tri_point!.

MEDYAN.remove_in_tri_point!

remove_in_tri_point!(c::Context, p::Union{InTriPointIdx, Tag{InTriPointIdx}})

Remove an in-triangle point from the simulation and unlink all connected links.

See also: make_in_tri_point!, update_in_tri_point!.

MEDYAN.update_in_tri_point!

update_in_tri_point!(c::Context, p::Union{InTriPointIdx, Tag{InTriPointIdx}}; kwargs...)

Update properties of an existing in-triangle point. Unspecified properties remain unchanged.

Keyword Arguments

  • tri::Union{Nothing, Integer}=nothing: 1-based triangle index on the same membrane.
  • bary::Union{Nothing, SVector{2, Float64}}=nothing: New barycentric coordinates (λ₂, λ₃) of the point inside the (possibly new) triangle. λ₁ = 1 − λ₂ − λ₃.
  • state::Union{Nothing, Int64}=nothing: New user-defined state.
  • gamma::Union{Nothing, Float64}=nothing: New friction coefficient (pN·s/nm).

See also: make_in_tri_point!, remove_in_tri_point!.