~ubuntu-branches/debian/jessie/yade/jessie

« back to all changes in this revision

Viewing changes to pkg/dem/Ip2_FrictMat_FrictMat_MindlinCapillaryPhys.hpp

  • Committer: Package Import Robot
  • Author(s): Anton Gladky
  • Date: 2014-08-04 19:34:58 UTC
  • mfrom: (1.1.11)
  • Revision ID: package-import@ubuntu.com-20140804193458-cw8qhnujxe9wzi15
Tags: 1.11.0-1
* [a0600ae] Imported Upstream version 1.11.0
* [a3055e0] Do not use parallel build on kfreebsd-amd64 and s390x.
* [f86b405] Remove applied patches.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/*************************************************************************
2
 
*  Copyright (C) 2007 by Bruno CHAREYRE                                  *
3
 
*  bruno.chareyre@hmg.inpg.fr                                            *
4
 
*                                                                        *
5
 
*  This program is free software; it is licensed under the terms of the  *
6
 
*  GNU General Public License v2 or later. See file LICENSE for details. *
7
 
*************************************************************************/
8
 
 
9
 
#pragma once
10
 
 
11
 
#include<yade/pkg/common/Dispatching.hpp>
12
 
#include<yade/pkg/common/ElastMat.hpp>
13
 
#include<yade/pkg/dem/HertzMindlin.hpp>
14
 
 
15
 
class MindlinCapillaryPhys : public MindlinPhys
16
 
{
17
 
        public :
18
 
                int currentIndexes [4]; // used for faster interpolation (stores previous positions in tables)
19
 
                
20
 
                virtual ~MindlinCapillaryPhys();
21
 
 
22
 
        YADE_CLASS_BASE_DOC_ATTRS_DEPREC_INIT_CTOR_PY(MindlinCapillaryPhys,MindlinPhys,"Adds capillary physics to Mindlin's interaction physics.",
23
 
                                ((bool,meniscus,false,,"Presence of a meniscus if true"))
24
 
                                ((bool,isBroken,false,,"If true, capillary force is zero and liquid bridge is inactive."))
25
 
                                ((Real,capillaryPressure,0.,,"Value of the capillary pressure Uc defines as Ugas-Uliquid"))
26
 
                                ((Real,vMeniscus,0.,,"Volume of the menicus"))
27
 
                                ((Real,Delta1,0.,,"Defines the surface area wetted by the meniscus on the smallest grains of radius R1 (R1<R2)"))
28
 
                                ((Real,Delta2,0.,,"Defines the surface area wetted by the meniscus on the biggest grains of radius R2 (R1<R2)"))
29
 
                                ((Vector3r,fCap,Vector3r::Zero(),,"Capillary Force produces by the presence of the meniscus"))
30
 
                                ((short int,fusionNumber,0.,,"Indicates the number of meniscii that overlap with this one"))
31
 
                                ,/*deprec*/
32
 
                                ((Fcap,fCap,"naming convention"))
33
 
                                ((CapillaryPressure,capillaryPressure,"naming convention"))
34
 
                                ,,createIndex();currentIndexes[0]=currentIndexes[1]=currentIndexes[2]=currentIndexes[3]=0;
35
 
                                ,
36
 
                                );
37
 
        REGISTER_CLASS_INDEX(MindlinCapillaryPhys,MindlinPhys);
38
 
};
39
 
REGISTER_SERIALIZABLE(MindlinCapillaryPhys);
40
 
 
41
 
 
42
 
class Ip2_FrictMat_FrictMat_MindlinCapillaryPhys : public IPhysFunctor
43
 
{
44
 
        public :
45
 
                virtual void go(        const shared_ptr<Material>& b1,
46
 
                                        const shared_ptr<Material>& b2,
47
 
                                        const shared_ptr<Interaction>& interaction);
48
 
 
49
 
        FUNCTOR2D(FrictMat,FrictMat);
50
 
        YADE_CLASS_BASE_DOC_ATTRS(Ip2_FrictMat_FrictMat_MindlinCapillaryPhys,IPhysFunctor, "RelationShips to use with Law2_ScGeom_CapillaryPhys_Capillarity\n\n In these RelationShips all the interaction attributes are computed. \n\n.. warning::\n\tas in the others :yref:`Ip2 functors<IPhysFunctor>`, most of the attributes are computed only once, when the interaction is new.",
51
 
                    ((Real,gamma,0.0,,"Surface energy parameter [J/m^2] per each unit contact surface, to derive DMT formulation from HM"))
52
 
                                ((Real,eta,0.0,,"Coefficient to determine the plastic bending moment"))
53
 
                                ((Real,krot,0.0,,"Rotational stiffness for moment contact law"))
54
 
                                ((Real,ktwist,0.0,,"Torsional stiffness for moment contact law"))
55
 
                                ((shared_ptr<MatchMaker>,en,,,"Normal coefficient of restitution $e_n$."))
56
 
                                ((shared_ptr<MatchMaker>,es,,,"Shear coefficient of restitution $e_s$."))
57
 
                                ((shared_ptr<MatchMaker>,betan,,,"Normal viscous damping coefficient $\\beta_n$."))
58
 
                                ((shared_ptr<MatchMaker>,betas,,,"Shear viscous damping coefficient $\\beta_s$."))
59
 
                );
60
 
                DECLARE_LOGGER;
61
 
};
62
 
REGISTER_SERIALIZABLE(Ip2_FrictMat_FrictMat_MindlinCapillaryPhys);
63
 
 
64
 
 
65