PeriDEM 0.3.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
Loading...
Searching...
No Matches
prenotch.cpp File Reference
#include "prenotch.h"
#include <stdexcept>
Include dependency graph for prenotch.cpp:

Go to the source code of this file.

Namespaces

namespace  anonymous_namespace{prenotch.cpp}
 
namespace  geometry
 Collection of methods and data related to geometry.
 

Functions

template<typename Predicate >
std::size_t anonymous_namespace{prenotch.cpp}::breakBondsIf (geometry::Fracture &fracture, const std::vector< util::Point > &xRef, const std::vector< std::vector< std::size_t > > &neighbors, const std::vector< std::size_t > &nodeParticleId, std::size_t particleId, Predicate crosses)
 
bool geometry::segmentCrossesVerticalLine (double x0, double y0, double x1, double y1, double xLine, double yLo, double yHi)
 Pre-notch by breaking peridynamic bonds.
 
bool geometry::segmentEntersSlot (double x0, double y0, double x1, double y1, double xCenter, double halfWidth, double yLo, double yHi, int nSamples=8)
 Checks whether the segment enters the open slot centred on xCenter.
 
std::size_t geometry::breakBondsCrossingVerticalLines (Fracture &fracture, const std::vector< util::Point > &xRef, const std::vector< std::vector< std::size_t > > &neighbors, const std::vector< std::size_t > &nodeParticleId, std::size_t particleId, const std::vector< double > &xLines, double yLo, double yHi)
 Break the bonds of one particle that cross vertical cut lines.
 
std::size_t geometry::breakBondsInSlots (Fracture &fracture, const std::vector< util::Point > &xRef, const std::vector< std::vector< std::size_t > > &neighbors, const std::vector< std::size_t > &nodeParticleId, std::size_t particleId, const std::vector< double > &xCenters, double width, double yLo, double yHi)
 Break the bonds of one particle that enter open notch slots.