![]() |
PeriDEM 0.3.0
PeriDEM -- Peridynamics-based high-fidelity model for granular media
|
Data Structures | |
| class | ContactWitness |
| struct | CrackFit |
| struct | CrackMetrics |
| class | GrainContactProbe |
| struct | LawResult |
| struct | PackedBounds |
| struct | PackedParticle |
| struct | Probe |
Functions | |
| std::string | directoryPathWithTrailingSep (const std::filesystem::path &dir) |
| json | buildInputJson (const std::string &output_path, const std::filesystem::path &mesh_tri, const std::filesystem::path &mesh_ell, double final_time, size_t num_steps, double mesh_size, double horizon) |
| double | maxElem (const std::vector< double > &v) |
| bool | doesParticleIntersect (const PackedParticle &p, const std::vector< PackedParticle > &existing, const std::vector< double > &rect, double padding) |
| std::vector< PackedParticle > | generateParticleLocations (const std::vector< double > &in_rect, double max_y, double mesh_size, double R, int N_target, double padding, std::mt19937 &gen) |
| PackedBounds | packedAxisBounds (const std::vector< PackedParticle > &packed) |
| json | contactPairJson (double R_contact_factor, bool damping_on, bool friction_on, double Kn, double beta_n_eps, double friction_coeff, double Kn_factor, double beta_n_factor) |
| double | KnFromBulk (double Ka, double Kb, double horizon) |
| json | buildInputJson (const std::string &output_path_for_deck, const std::filesystem::path &inp_dir, int argc, char *argv[]) |
| std::vector< PackedParticle > | generateCircularGrid (int ncols, int nrows, double x_lo, double y_lo, double R, double gap) |
| json | buildInputJson (const std::string &output_path_for_deck, const std::filesystem::path &mesh_cir, const std::filesystem::path &mesh_fixed, const std::filesystem::path &mesh_moving, double final_time, size_t num_steps, bool file_mesh, bool write_meshes, size_t search_interval, int ncols, int nrows, const std::string &mpi_strategy="auto") |
| void | writeLocations (const std::filesystem::path &csv, const std::vector< PackedParticle > &packed) |
| double | maxAbsForceFromCsv (const std::filesystem::path &csv) |
| bool | ownsNode (const data::ModelData &data, size_t i) |
| void | dumpFinalNodal (const data::ModelData &data, const std::filesystem::path &out_dir) |
| json | buildInputJson (const std::string &output_path, const std::filesystem::path &mesh_cir, const std::filesystem::path &mesh_wall, const std::string &mpi_strategy, double final_time, size_t num_steps) |
| bool | segmentCrossesVertical (double x0, double y0, double x1, double y1, double x_line, double y_lo, double y_hi) |
| size_t | applyNotches (PeriDEMModel &dem, double x_left, double x_right, double y_lo, double y_hi) |
| size_t | applyNotchSlots (PeriDEMModel &dem, double notch_half, double notch_w, double y_lo, double y_hi) |
| size_t | applyNotchMidplanes (PeriDEMModel &dem, double notch_half, double y_tip, double y_top) |
| double | nodePhi (const PeriDEMModel &dem, size_t i) |
| double | nodeDamageForFit (const PeriDEMModel &dem, size_t i, bool use_bond_count) |
| CrackFit | fitCrackFromPhi (const PeriDEMModel &dem, double tip_x, double tip_y, double outward_sign, double phi_cut, double band_x, double band_y, double exclude_r, double bin_h, bool use_bond_count=false) |
| json | meshSetJson (const std::filesystem::path &f, double mesh_size) |
| json | uniformMeshSetJson (const std::filesystem::path &f, double mesh_size, const std::vector< std::vector< double > > &voids={}) |
| std::vector< std::vector< double > > | notchVoidBoxes (double H, double notch_half, double notch_w, double notch_depth, double z_lo, double z_hi) |
| geom::GeomData | sillingNotchedPlateGeom (double W, double H, double notch_half, double notch_w, double notch_depth) |
| geom::GeomData | bhatVNotchedPlateGeom (double W, double H, double notch_half, double notch_w, double notch_depth) |
| json | fixedTopOuterBC (double W, double H, double notch_half) |
| json | buildTraskInputJson (const std::string &output_path, const std::filesystem::path &mesh_plate, double W, double H, double notch_half, double notch_w, double notch_depth, double mesh_size, double horizon, double rho, double E, double K, double G, double Gc, double v_impact, double final_time, size_t num_steps) |
| json | buildImpactInputJson (const std::string &output_path, const std::filesystem::path &mesh_plate, const std::filesystem::path &mesh_impactor, double W, double H, double notch_half, double notch_w, double notch_depth, double Iw, double Ih, double gap, double mesh_size, double horizon, double Rc_factor, double Kn, double rho, double E, double K, double G, double Gc, double v_impact, double final_time, size_t num_steps, double thickness=0.) |
| json | buildBhatInputJson (const std::string &output_path, const std::filesystem::path &mesh_plate, const std::filesystem::path &mesh_impactor, double W, double H, double notch_half, double notch_w, double notch_depth, double Iw, double Ih, double gap, double mesh_size, double horizon, double Rc_factor, double rho, double E, double K, double G, double Gc, double v_impact, double final_time, size_t num_steps) |
| json | buildInputJson (const std::string &output_path, const std::filesystem::path &mesh_file, double L, double mesh_size, double horizon, double final_time, size_t num_steps, const std::string &self_contact) |
| size_t | applyPrecrack (PeriDEMModel &dem, double x_crack) |
| void | applyRigidOpenClose (PeriDEMModel &dem, double x_crack, double u_right) |
| CrackMetrics | measure (PeriDEMModel &dem, double x_crack, double band) |
| LawResult | runLaw (const std::string &self_contact, const std::filesystem::path &run_dir, double L, double mesh_size, double horizon, unsigned n_threads) |
| json | buildInputJson (const std::string &output_path_for_deck, const std::filesystem::path &mesh_file_1, const std::filesystem::path &mesh_file_2, double final_time, size_t num_steps, bool zero_ic, double mesh_size_in, double horizon_in, bool damping_on, double eps_n, bool two_particle_test, bool file_mesh, double beta_n_factor, const std::string &damping_law="com_and_node", const std::string &friction_law="coulomb_simple", bool friction_on=false, double friction_mu=-1., double ic_vx=0., bool bottom_patch_bc=false, const std::string &mpi_strategy="auto") |
| bool | is3DGeometry (const std::string &g) |
| bool | isAcceptableGeometryName (const std::string &g) |
| json | buildInputJson (const std::string &geomName, const std::string &output_path_for_deck, const std::filesystem::path &mesh_file_1, const std::filesystem::path &mesh_file_2) |
| json | buildInputJson (const std::string &output_path, const std::filesystem::path &mesh_cir, const std::filesystem::path &mesh_wall, double R, double mesh_size, double horizon, double Rc_factor, double Kn, double final_time, size_t num_steps, bool policy_combo=false) |
| Probe | checkWallSpringOnly (PeriDEMModel &dem, geom::GeomObject &wall_geom) |
| double | minGrainWallGap (PeriDEMModel &dem, geom::GeomObject &wall_geom) |
| bool | near (double a, double b, double tol=1.e-12) |
| size_t anonymous_namespace{main.cpp}::applyNotches | ( | PeriDEMModel & | dem, |
| double | x_left, | ||
| double | x_right, | ||
| double | y_lo, | ||
| double | y_hi | ||
| ) |
Definition at line 59 of file main.cpp.
References data::ModelData::d_fracture_p, data::ModelData::d_neighPd, data::ModelData::d_ptId, data::ModelData::d_xRef, and segmentCrossesVertical().
| size_t anonymous_namespace{main.cpp}::applyNotchMidplanes | ( | PeriDEMModel & | dem, |
| double | notch_half, | ||
| double | y_tip, | ||
| double | y_top | ||
| ) |
Definition at line 122 of file main.cpp.
References data::ModelData::d_fracture_p, data::ModelData::d_neighPd, data::ModelData::d_ptId, and data::ModelData::d_xRef.
Referenced by main().
| size_t anonymous_namespace{main.cpp}::applyNotchSlots | ( | PeriDEMModel & | dem, |
| double | notch_half, | ||
| double | notch_w, | ||
| double | y_lo, | ||
| double | y_hi | ||
| ) |
Definition at line 82 of file main.cpp.
References data::ModelData::d_fracture_p, data::ModelData::d_neighPd, data::ModelData::d_ptId, data::ModelData::d_xRef, and segmentCrossesVertical().
Referenced by main().
| size_t anonymous_namespace{main.cpp}::applyPrecrack | ( | PeriDEMModel & | dem, |
| double | x_crack | ||
| ) |
Definition at line 114 of file main.cpp.
References data::ModelData::d_fracture_p, data::ModelData::d_neighPd, and data::ModelData::d_xRef.
Referenced by runLaw().
| void anonymous_namespace{main.cpp}::applyRigidOpenClose | ( | PeriDEMModel & | dem, |
| double | x_crack, | ||
| double | u_right | ||
| ) |
Definition at line 130 of file main.cpp.
References data::ModelData::d_u, data::ModelData::d_v, data::ModelData::d_x, and data::ModelData::d_xRef.
Referenced by runLaw().
| geom::GeomData anonymous_namespace{main.cpp}::bhatVNotchedPlateGeom | ( | double | W, |
| double | H, | ||
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth | ||
| ) |
Definition at line 318 of file main.cpp.
References geom::GeomData::d_geomComplexInfo, geom::GeomData::d_geomName, and geom::GeomData::d_geomParams.
Referenced by buildBhatInputJson().
| json anonymous_namespace{main.cpp}::buildBhatInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_plate, | ||
| const std::filesystem::path & | mesh_impactor, | ||
| double | W, | ||
| double | H, | ||
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth, | ||
| double | Iw, | ||
| double | Ih, | ||
| double | gap, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| double | Rc_factor, | ||
| double | rho, | ||
| double | E, | ||
| double | K, | ||
| double | G, | ||
| double | Gc, | ||
| double | v_impact, | ||
| double | final_time, | ||
| size_t | num_steps | ||
| ) |
Definition at line 581 of file main.cpp.
References bhatVNotchedPlateGeom(), geom::GeomData::d_geomName, geom::GeomData::d_geomParams, fixedTopOuterBC(), inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), and meshSetJson().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildImpactInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_plate, | ||
| const std::filesystem::path & | mesh_impactor, | ||
| double | W, | ||
| double | H, | ||
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth, | ||
| double | Iw, | ||
| double | Ih, | ||
| double | gap, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| double | Rc_factor, | ||
| double | Kn, | ||
| double | rho, | ||
| double | E, | ||
| double | K, | ||
| double | G, | ||
| double | Gc, | ||
| double | v_impact, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| double | thickness = 0. |
||
| ) |
Definition at line 431 of file main.cpp.
References geom::GeomData::d_geomName, geom::GeomData::d_geomParams, inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), meshSetJson(), notchVoidBoxes(), and uniformMeshSetJson().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | geomName, |
| const std::string & | output_path_for_deck, | ||
| const std::filesystem::path & | mesh_file_1, | ||
| const std::filesystem::path & | mesh_file_2 | ||
| ) |
Definition at line 65 of file main.cpp.
References geom::exampleGeomParams(), inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), util::harmonicMean(), is3DGeometry(), material::toE(), and material::toGE().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_cir, | ||
| const std::filesystem::path & | mesh_wall, | ||
| const std::string & | mpi_strategy, | ||
| double | final_time, | ||
| size_t | num_steps | ||
| ) |
Definition at line 202 of file main.cpp.
References geom::GeomData::d_geomName, geom::GeomData::d_geomParams, inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), util::harmonicMean(), util::io::print(), material::toE(), and material::toGE().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_cir, | ||
| const std::filesystem::path & | mesh_wall, | ||
| double | R, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| double | Rc_factor, | ||
| double | Kn, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| bool | policy_combo = false |
||
| ) |
Definition at line 44 of file main.cpp.
References geom::GeomData::d_geomName, geom::GeomData::d_geomParams, inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), and inp::ParticleDeck::getParticleMaterialExampleJson().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_file, | ||
| double | L, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| const std::string & | self_contact | ||
| ) |
Definition at line 44 of file main.cpp.
References geom::GeomData::d_geomName, geom::GeomData::d_geomParams, inp::ModelDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), and inp::ParticleDeck::getParticleMaterialExampleJson().
Referenced by runLaw().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_tri, | ||
| const std::filesystem::path & | mesh_ell, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| double | mesh_size, | ||
| double | horizon | ||
| ) |
Definition at line 43 of file main.cpp.
References geom::createGeomObject(), util::Point::d_x, util::Point::d_y, inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), util::harmonicMean(), material::toE(), and material::toGE().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path_for_deck, |
| const std::filesystem::path & | inp_dir, | ||
| int | argc, | ||
| char * | argv[] | ||
| ) |
Definition at line 203 of file main.cpp.
References util::io::InputParser::cmdOptionExists(), contactPairJson(), geom::createGeomObject(), util::Point::d_x, util::Point::d_y, generateParticleLocations(), util::io::InputParser::getCmdOption(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::ContactDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), KnFromBulk(), anonymous_namespace{main.cpp}::PackedBounds::max_x, anonymous_namespace{main.cpp}::PackedBounds::max_y, anonymous_namespace{main.cpp}::PackedBounds::min_x, anonymous_namespace{main.cpp}::PackedBounds::min_y, packedAxisBounds(), util::io::print(), material::toE(), material::toGc(), and material::toGE().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path_for_deck, |
| const std::filesystem::path & | mesh_cir, | ||
| const std::filesystem::path & | mesh_fixed, | ||
| const std::filesystem::path & | mesh_moving, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| bool | file_mesh, | ||
| bool | write_meshes, | ||
| size_t | search_interval, | ||
| int | ncols, | ||
| int | nrows, | ||
| const std::string & | mpi_strategy = "auto" |
||
| ) |
Definition at line 83 of file main.cpp.
References geom::createGeomObject(), util::Point::d_x, util::Point::d_y, generateCircularGrid(), inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), util::harmonicMean(), util::io::print(), material::toE(), and material::toGE().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildInputJson | ( | const std::string & | output_path_for_deck, |
| const std::filesystem::path & | mesh_file_1, | ||
| const std::filesystem::path & | mesh_file_2, | ||
| double | final_time, | ||
| size_t | num_steps, | ||
| bool | zero_ic, | ||
| double | mesh_size_in, | ||
| double | horizon_in, | ||
| bool | damping_on, | ||
| double | eps_n, | ||
| bool | two_particle_test, | ||
| bool | file_mesh, | ||
| double | beta_n_factor, | ||
| const std::string & | damping_law = "com_and_node", |
||
| const std::string & | friction_law = "coulomb_simple", |
||
| bool | friction_on = false, |
||
| double | friction_mu = -1., |
||
| double | ic_vx = 0., |
||
| bool | bottom_patch_bc = false, |
||
| const std::string & | mpi_strategy = "auto" |
||
| ) |
Definition at line 91 of file main.cpp.
References geom::GeomData::d_geomName, geom::GeomData::d_geomParams, inp::ContactPairDeck::getExampleJson(), inp::ModelDeck::getExampleJson(), inp::BCDeck::getExampleJson(), inp::PGenDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::BCBaseDeck::getExampleJson(), inp::PNeighborDeck::getExampleJson(), inp::ParticleDeck::getParticleContactExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), util::harmonicMean(), material::toE(), material::toGE(), and geom::writeGeometry().
Referenced by main().
| json anonymous_namespace{main.cpp}::buildTraskInputJson | ( | const std::string & | output_path, |
| const std::filesystem::path & | mesh_plate, | ||
| double | W, | ||
| double | H, | ||
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| double | rho, | ||
| double | E, | ||
| double | K, | ||
| double | G, | ||
| double | Gc, | ||
| double | v_impact, | ||
| double | final_time, | ||
| size_t | num_steps | ||
| ) |
Definition at line 369 of file main.cpp.
References fixedTopOuterBC(), inp::ModelDeck::getExampleJson(), inp::MaterialDeck::getExampleJson(), inp::OutputDeck::getExampleJson(), inp::ParticleDeck::getParticleGeomExampleJson(), inp::ParticleDeck::getParticleMaterialExampleJson(), meshSetJson(), and sillingNotchedPlateGeom().
Referenced by main().
| Probe anonymous_namespace{main.cpp}::checkWallSpringOnly | ( | PeriDEMModel & | dem, |
| geom::GeomObject & | wall_geom | ||
| ) |
Definition at line 164 of file main.cpp.
References geom::WallContactHit::active, PeriDEMModel::d_contact_p, data::ModelData::d_f, data::ModelData::d_particleDeck_p, data::ModelData::d_ptId, data::ModelData::d_vol, data::ModelData::d_x, util::Point::length(), anonymous_namespace{main.cpp}::Probe::max_force_err, anonymous_namespace{main.cpp}::Probe::max_force_ref, anonymous_namespace{main.cpp}::Probe::min_gap, anonymous_namespace{main.cpp}::Probe::n_contact_nodes, geom::WallContactHit::outward_n, geom::WallContactHit::signed_gap, and geom::GeomObject::wallContactQuery().
Referenced by main().
| json anonymous_namespace{main.cpp}::contactPairJson | ( | double | R_contact_factor, |
| bool | damping_on, | ||
| bool | friction_on, | ||
| double | Kn, | ||
| double | beta_n_eps, | ||
| double | friction_coeff, | ||
| double | Kn_factor, | ||
| double | beta_n_factor | ||
| ) |
Definition at line 181 of file main.cpp.
Referenced by buildInputJson().
| std::string anonymous_namespace{main.cpp}::directoryPathWithTrailingSep | ( | const std::filesystem::path & | dir | ) |
OutputDeck concatenates Path + "log.txt" without inserting a separator; Path must end with one.
Definition at line 34 of file main.cpp.
Referenced by main(), and runLaw().
| bool anonymous_namespace{main.cpp}::doesParticleIntersect | ( | const PackedParticle & | p, |
| const std::vector< PackedParticle > & | existing, | ||
| const std::vector< double > & | rect, | ||
| double | padding | ||
| ) |
Definition at line 50 of file main.cpp.
References anonymous_namespace{main.cpp}::PackedParticle::r, anonymous_namespace{main.cpp}::PackedParticle::x, anonymous_namespace{main.cpp}::PackedParticle::y, and anonymous_namespace{main.cpp}::PackedParticle::z.
Referenced by generateParticleLocations().
| void anonymous_namespace{main.cpp}::dumpFinalNodal | ( | const data::ModelData & | data, |
| const std::filesystem::path & | out_dir | ||
| ) |
Definition at line 74 of file main.cpp.
References util::parallel::mpiComm(), util::parallel::mpiRank(), util::parallel::mpiSize(), and ownsNode().
Referenced by main().
| CrackFit anonymous_namespace{main.cpp}::fitCrackFromPhi | ( | const PeriDEMModel & | dem, |
| double | tip_x, | ||
| double | tip_y, | ||
| double | outward_sign, | ||
| double | phi_cut, | ||
| double | band_x, | ||
| double | band_y, | ||
| double | exclude_r, | ||
| double | bin_h, | ||
| bool | use_bond_count = false |
||
| ) |
Definition at line 187 of file main.cpp.
References anonymous_namespace{main.cpp}::CrackFit::angle_to_notch_deg, data::ModelData::d_ptId, data::ModelData::d_xRef, anonymous_namespace{main.cpp}::CrackFit::mean_dx, anonymous_namespace{main.cpp}::CrackFit::mean_dy, anonymous_namespace{main.cpp}::CrackFit::n_pts, and nodeDamageForFit().
Referenced by main().
| json anonymous_namespace{main.cpp}::fixedTopOuterBC | ( | double | W, |
| double | H, | ||
| double | notch_half | ||
| ) |
Definition at line 339 of file main.cpp.
Referenced by buildBhatInputJson(), and buildTraskInputJson().
| std::vector< PackedParticle > anonymous_namespace{main.cpp}::generateCircularGrid | ( | int | ncols, |
| int | nrows, | ||
| double | x_lo, | ||
| double | y_lo, | ||
| double | R, | ||
| double | gap | ||
| ) |
Definition at line 61 of file main.cpp.
Referenced by buildInputJson(), and main().
| std::vector< PackedParticle > anonymous_namespace{main.cpp}::generateParticleLocations | ( | const std::vector< double > & | in_rect, |
| double | max_y, | ||
| double | mesh_size, | ||
| double | R, | ||
| int | N_target, | ||
| double | padding, | ||
| std::mt19937 & | gen | ||
| ) |
Random row-wise packing (same spirit as problem_setup.py method 1) with std::mt19937(30). One characteristic radius R; zones 0–7 pick among eight geometry types.
Definition at line 75 of file main.cpp.
References doesParticleIntersect(), and maxElem().
Referenced by buildInputJson().
| bool anonymous_namespace{main.cpp}::is3DGeometry | ( | const std::string & | g | ) |
Definition at line 52 of file main.cpp.
Referenced by buildInputJson().
| bool anonymous_namespace{main.cpp}::isAcceptableGeometryName | ( | const std::string & | g | ) |
Definition at line 57 of file main.cpp.
References geom::getAcceptableGeometries().
Referenced by main().
| double anonymous_namespace{main.cpp}::KnFromBulk | ( | double | Ka, |
| double | Kb, | ||
| double | horizon | ||
| ) |
Definition at line 199 of file main.cpp.
References util::harmonicMean().
Referenced by buildInputJson().
| double anonymous_namespace{main.cpp}::maxAbsForceFromCsv | ( | const std::filesystem::path & | csv | ) |
Definition at line 284 of file main.cpp.
Referenced by main().
| double anonymous_namespace{main.cpp}::maxElem | ( | const std::vector< double > & | v | ) |
Definition at line 43 of file main.cpp.
Referenced by generateParticleLocations().
| CrackMetrics anonymous_namespace{main.cpp}::measure | ( | PeriDEMModel & | dem, |
| double | x_crack, | ||
| double | band | ||
| ) |
Definition at line 147 of file main.cpp.
References data::ModelData::d_f, data::ModelData::d_fracture_p, data::ModelData::d_neighPd, data::ModelData::d_vol, data::ModelData::d_x, data::ModelData::d_xRef, anonymous_namespace{main.cpp}::CrackMetrics::force_x_left, anonymous_namespace{main.cpp}::CrackMetrics::force_x_right, anonymous_namespace{main.cpp}::CrackMetrics::max_gap, anonymous_namespace{main.cpp}::CrackMetrics::min_gap, and anonymous_namespace{main.cpp}::CrackMetrics::n_pairs.
Referenced by runLaw().
| json anonymous_namespace{main.cpp}::meshSetJson | ( | const std::filesystem::path & | f, |
| double | mesh_size | ||
| ) |
Definition at line 260 of file main.cpp.
Referenced by buildBhatInputJson(), buildImpactInputJson(), and buildTraskInputJson().
| double anonymous_namespace{main.cpp}::minGrainWallGap | ( | PeriDEMModel & | dem, |
| geom::GeomObject & | wall_geom | ||
| ) |
Definition at line 204 of file main.cpp.
References geom::WallContactHit::active, data::ModelData::d_ptId, data::ModelData::d_x, geom::WallContactHit::signed_gap, and geom::GeomObject::wallContactQuery().
Referenced by main().
| bool anonymous_namespace{main.cpp}::near | ( | double | a, |
| double | b, | ||
| double | tol = 1.e-12 |
||
| ) |
| double anonymous_namespace{main.cpp}::nodeDamageForFit | ( | const PeriDEMModel & | dem, |
| size_t | i, | ||
| bool | use_bond_count | ||
| ) |
Definition at line 168 of file main.cpp.
References data::ModelData::d_phi, data::ModelData::d_phiBond, and nodePhi().
Referenced by fitCrackFromPhi(), and main().
| double anonymous_namespace{main.cpp}::nodePhi | ( | const PeriDEMModel & | dem, |
| size_t | i | ||
| ) |
Definition at line 156 of file main.cpp.
References data::ModelData::d_fracture_p, and data::ModelData::d_neighPd.
Referenced by main(), and nodeDamageForFit().
| std::vector< std::vector< double > > anonymous_namespace{main.cpp}::notchVoidBoxes | ( | double | H, |
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth, | ||
| double | z_lo, | ||
| double | z_hi | ||
| ) |
Definition at line 284 of file main.cpp.
Referenced by buildImpactInputJson().
| bool anonymous_namespace{main.cpp}::ownsNode | ( | const data::ModelData & | data, |
| size_t | i | ||
| ) |
Definition at line 55 of file main.cpp.
References particle::isLocallyOwned(), and util::parallel::mpiRank().
Referenced by dumpFinalNodal(), and anonymous_namespace{main.cpp}::GrainContactProbe::sampleMetric().
| PackedBounds anonymous_namespace{main.cpp}::packedAxisBounds | ( | const std::vector< PackedParticle > & | packed | ) |
Definition at line 166 of file main.cpp.
References anonymous_namespace{main.cpp}::PackedBounds::max_x, anonymous_namespace{main.cpp}::PackedBounds::max_y, anonymous_namespace{main.cpp}::PackedBounds::min_x, and anonymous_namespace{main.cpp}::PackedBounds::min_y.
Referenced by buildInputJson().
| LawResult anonymous_namespace{main.cpp}::runLaw | ( | const std::string & | self_contact, |
| const std::filesystem::path & | run_dir, | ||
| double | L, | ||
| double | mesh_size, | ||
| double | horizon, | ||
| unsigned | n_threads | ||
| ) |
Definition at line 184 of file main.cpp.
References applyPrecrack(), applyRigidOpenClose(), buildInputJson(), PeriDEMModel::close(), anonymous_namespace{main.cpp}::LawResult::close_force_amp, anonymous_namespace{main.cpp}::LawResult::close_min_gap, PeriDEMModel::computeForces(), data::ModelData::d_hMax, data::ModelData::d_maxContactR, data::ModelData::d_x, directoryPathWithTrailingSep(), PeriDEMModel::init(), measure(), anonymous_namespace{main.cpp}::LawResult::open_min_gap, and util::io::print().
Referenced by main().
| bool anonymous_namespace{main.cpp}::segmentCrossesVertical | ( | double | x0, |
| double | y0, | ||
| double | x1, | ||
| double | y1, | ||
| double | x_line, | ||
| double | y_lo, | ||
| double | y_hi | ||
| ) |
Definition at line 48 of file main.cpp.
Referenced by applyNotches(), applyNotchSlots(), and main().
| geom::GeomData anonymous_namespace{main.cpp}::sillingNotchedPlateGeom | ( | double | W, |
| double | H, | ||
| double | notch_half, | ||
| double | notch_w, | ||
| double | notch_depth | ||
| ) |
Definition at line 296 of file main.cpp.
References geom::GeomData::d_geomComplexInfo, geom::GeomData::d_geomName, and geom::GeomData::d_geomParams.
Referenced by buildTraskInputJson().
| json anonymous_namespace{main.cpp}::uniformMeshSetJson | ( | const std::filesystem::path & | f, |
| double | mesh_size, | ||
| const std::vector< std::vector< double > > & | voids = {} |
||
| ) |
Definition at line 272 of file main.cpp.
Referenced by buildImpactInputJson().
| void anonymous_namespace{main.cpp}::writeLocations | ( | const std::filesystem::path & | csv, |
| const std::vector< PackedParticle > & | packed | ||
| ) |
Definition at line 276 of file main.cpp.
Referenced by main().