47 logger(
INFO,
"Species is neither Sinter nor LinearPlasticViscoelastic");
51 double maximumForce = 3;
54 double forceRange = 3;
56 double adStiffness = maximumForce / forceRange;
58 double bondStrength = 100.0;
67 species->setEffectiveElasticModulus(1000.0);
68 species->setSlidingFrictionCoefficient(0.0);
69 species->setAdhesionForceMax(maximumForce);
70 species->setAdhesionStiffness(adStiffness);
71 species->setBondForceMax(bondStrength);
72 species->setBondDissipation(0.2);
73 species->setVanDerWaalsForceMax(1);
74 species->setVanDerWaalsStiffness(10);
75 species->setCharge(-1);
79 species2->setCharge(1);
82 dpm.
setName(
"ChargedBondedParticleUnitTest");
92 dpm.
solve(argc, argv);
95 "set xlabel 'time [s]'\n"
96 "set ylabel 'total Energy [J]'\n"
97 "p 'ChargedBondedParticleUnitTest.ene' u 1:($2+$3+$4+$5) w l\n"
102 if (
fabs(eneElastic + eneKinetic - (4.03257e-05)) >= 1
e-6)
104 logger(
FATAL,
"Particles have the wrong total energy. It is % and should be %", eneElastic+eneKinetic,
Array< double, 1, 3 > e(1./3., 0.5, 2.)
Species< HertzianViscoelasticNormalSpecies, FrictionSpecies, ChargedBondedSpecies > HertzianViscoelasticFrictionChargedBondedSpecies
Definition: HertzianViscoelasticFrictionChargedBondedSpecies.h:13
LL< Log::FATAL > FATAL
Definition of the different loglevels by its wrapper class LL. These are used as tags in template met...
Definition: Logger.cc:31
Logger< MERCURYDPM_LOGLEVEL > logger("MercuryKernel")
Definition of different loggers with certain modules. A user can define its own custom logger here.
std::enable_if<!std::is_pointer< U >::value, U * >::type copyAndAddObject(const U &object)
Creates a copy of a Object and adds it to the BaseHandler.
Definition: BaseHandler.h:360
In this file, the rolling behaviour of the tangential spring is tested. This is done by placing one n...
Definition: ClayParticles.cpp:13
void setSaveCount(unsigned int saveCount)
Sets File::saveCount_ for all files (ene, data, fstat, restart, stat)
Definition: DPMBase.cc:386
SpeciesHandler speciesHandler
A handler to that stores the species type i.e. LinearViscoelasticSpecies, etc.
Definition: DPMBase.h:1433
void setName(const std::string &name)
Allows to set the name of all the files (ene, data, fstat, restart, stat)
Definition: DPMBase.cc:400
Mdouble getKineticEnergy() const
Returns the global kinetic energy stored in the system.
Definition: DPMBase.cc:1535
void setTimeStep(Mdouble newDt)
Sets a new value for the simulation time step.
Definition: DPMBase.cc:1225
void setTimeMax(Mdouble newTMax)
Sets a new value for the maximum simulation duration.
Definition: DPMBase.cc:864
void solve()
The work horse of the code.
Definition: DPMBase.cc:4334
void setGravity(Vec3D newGravity)
Sets a new value for the gravitational acceleration.
Definition: DPMBase.cc:1374
Mdouble getElasticEnergy() const
Returns the global elastic energy within the system.
Definition: DPMBase.cc:1521
Definition: Kernel/Math/Vector.h:30
#define INFO(i)
Definition: mumps_solver.h:54
Real fabs(const Real &a)
Definition: boostmultiprec.cpp:117
const Mdouble pi
Definition: ExtendedMath.h:23
bool writeToFile(const std::string &filename, const std::string &filecontent)
Writes a string to a file.
Definition: FileIOHelpers.cc:29