Utility functions
GeometryBasics.Rect
— TypeGeometryBasics.Rect(model::Model{T, Triangle{T}})
Creates and returns a bounding box for the given model.
Supported keyword arguments
padding::T = 0
Addspadding
to each side of the (otherwise flush) bounding box, effectively increasing its size by 2 ⋅padding
in each direction.
Return type
GeometryBasics.mesh
— FunctionGeometryBasics.mesh(model::Model{T, Triangle{T}})
Converts the given model into a GeometryBasics.jl-compatible mesh, e.g., for visualization through Makie.jl.
Return type
NESSie.guess_domain
— Functionguess_domain(ξ::Vector{T}, model::Model{T, Triangle{T}})
Make an educated guess whether the given observation point ξ
is located in the protein domain Ω
, the solvent domain Σ
, or the surface domain Γ
.
The domain is determined based on the relative position to the triangle with the closest centroid.
Supported keyword arguments
surface_margin::T = 1e-3
maximum |cos| ⋅ norm allowed between the vector from the closest triangle's centroid to ξ and the triangle's unit normal vector before ξ is no longer considered to be part of the Γ domain.
Return type
Symbol
(:Ω
, :Σ
, or :Γ
)
Alias
guess_domain(Ξ::Vector{Vector{T}}, model::Model{T, Triangle{T}})
Determines the domain of each observation point ξ
∈ Ξ
.
NESSie.meshunion
— Functionmeshunion(
model1::Model{T, Tetrahedron{T}},
model2::Model{T, Tetrahedron{T}}
)
Merges two volume models, e.g., the models of a protein and the solvent. Duplicate nodes (e.g., the nodes on the protein surface) are merged into a single node, duplicate elements and charges (if any) are retained as well as the system constants of the first model.
Return type
NESSie.obspoints_plane
— Functionobspoints_plane(
a ::AbstractVector{T},
b ::AbstractVector{T},
c ::AbstractVector{T},
nba::Int,
nbc::Int
)
Generates nba
⋅ nbc
evenly distributed observation points on the parallelogram with the sides $\overline{BA}$ and $\overline{BC}$ and a
, b
, c
being the location vectors to the points $A$, $B$, and $C$, respectively.
Arguments
nba
Number of observation points along $\overline{BA}$nbc
Number of observation points along $\overline{BC}$
Return type
Generator -> Vector{T}
Example
for Ξ in obspoints_plane(...)
for ξ in Ξ
...
end
end