177 double maximumForce = 3;
180 double forceRange = 3;
182 double adStiffness = maximumForce / forceRange;
184 double stiffness = 1600 * adStiffness;
187 double bondStrength = 333.0;
203 species1->setStiffness(stiffness);
204 species1->setSlidingFrictionCoefficient(1);
205 species1->setSlidingStiffness(2.0/7.0*stiffness);
206 species1->setRollingFrictionCoefficient(1);
207 species1->setRollingStiffness(2.0/5.0*stiffness);
211 species1->setAdhesionForceMax(maximumForce);
212 species1->setAdhesionStiffness(adStiffness);
215 species1->setCharge(1);
219 species1->setBondForceMax(bondStrength);
222 species1->setBondDissipation(0.2);
227 species2->setStiffness(stiffness);
228 species2->setSlidingFrictionCoefficient(1);
229 species2->setSlidingStiffness(2.0/7.0*stiffness);
230 species2->setRollingFrictionCoefficient(1);
231 species2->setRollingStiffness(2.0/5.0*stiffness);
235 species2->setAdhesionForceMax(maximumForce);
236 species2->setAdhesionStiffness(adStiffness);
239 species2->setCharge(-1);
243 species2->setBondForceMax(bondStrength);
246 species2->setBondDissipation(0.2);
254 species1_2->
mixAll(species1,species2);
255 species1_2->setSlidingFrictionCoefficient(1);
256 species1_2->setSlidingStiffness(2.0/7.0*stiffness);
257 species1_2->setRollingFrictionCoefficient(1);
258 species1_2->setRollingStiffness(2.0/5.0*stiffness);
264 speciesW->setStiffness(stiffness);
265 speciesW->setSlidingFrictionCoefficient(1);
266 speciesW->setSlidingStiffness(2.0/7.0*stiffness);
267 speciesW->setRollingFrictionCoefficient(1);
268 speciesW->setRollingStiffness(2.0/5.0*stiffness);
272 speciesW->setAdhesionForceMax(maximumForce);
273 speciesW->setAdhesionStiffness(adStiffness);
278 speciesW->setCharge(0);
283 speciesW->setBondForceMax(0);
286 speciesW->setBondDissipation(0.2);
293 speciesW_1->
mixAll(speciesW,species1);
294 speciesW_1->setSlidingFrictionCoefficient(1);
295 speciesW_1->setSlidingStiffness(2.0/7.0*stiffness);
296 speciesW_1->setRollingFrictionCoefficient(1);
297 speciesW_1->setRollingStiffness(2.0/5.0*stiffness);
302 speciesW_2->
mixAll(speciesW,species2);
303 speciesW_2->setSlidingFrictionCoefficient(1);
304 speciesW_2->setSlidingStiffness(2.0/7.0*stiffness);
305 speciesW_2->setRollingFrictionCoefficient(1);
306 speciesW_2->setRollingStiffness(2.0/5.0*stiffness);
310 chargedParticleForceUnitTestProblem.
setName(
"ClayParticles");
313 double mass = species1->getMassFromRadius(
radius);
314 double tc = species1->getCollisionTime(mass);
315 chargedParticleForceUnitTestProblem.
setTimeStep(0.02*tc);
320 chargedParticleForceUnitTestProblem.
setTimeMax(30.);
324 chargedParticleForceUnitTestProblem.
solve(argc,argv);
326 std::vector<BaseParticle*>::iterator pIt = chargedParticleForceUnitTestProblem.
particleHandler.
begin();
Species< LinearViscoelasticNormalSpecies, FrictionSpecies, ChargedBondedSpecies > LinearViscoelasticFrictionChargedBondedSpecies
Definition: LinearViscoelasticFrictionChargedBondedSpecies.h:13
const std::vector< T * >::const_iterator begin() const
Gets the begin of the const_iterator over all Object in this BaseHandler.
Definition: BaseHandler.h:698
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
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
void setXBallsAdditionalArguments(std::string newXBArgs)
Set the additional arguments for xballs.
Definition: DPMBase.cc:1338
ParticleHandler particleHandler
An object of the class ParticleHandler, contains the pointers to all the particles created.
Definition: DPMBase.h:1443
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
Contains contact force properties for contacts between particles with two different species.
Definition: MixedSpecies.h:22
void mixAll(BaseSpecies *const S, BaseSpecies *const T) final
sets the MixedSpecies properties by mixing the properties of two particle species
Definition: MixedSpecies.h:277
std::enable_if<!std::is_pointer< typename U::MixedSpeciesType >::value, typename U::MixedSpeciesType * >::type getMixedObject(const U *S, const U *T)
Definition: SpeciesHandler.h:52
Definition: Kernel/Math/Vector.h:30
const Mdouble pi
Definition: ExtendedMath.h:23