1 /* ---------------------------------------------------------------------- 2 This is the 3 4 ██╗ ██╗ ██████╗ ██████╗ ██████╗ ██╗ ██╗████████╗███████╗ 5 ██║ ██║██╔════╝ ██╔════╝ ██╔════╝ ██║ ██║╚══██╔══╝██╔════╝ 6 ██║ ██║██║ ███╗██║ ███╗██║ ███╗███████║ ██║ ███████╗ 7 ██║ ██║██║ ██║██║ ██║██║ ██║██╔══██║ ██║ ╚════██║ 8 ███████╗██║╚██████╔╝╚██████╔╝╚██████╔╝██║ ██║ ██║ ███████║ 9 ╚══════╝╚═╝ ╚═════╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝ ╚═╝ ╚══════╝® 10 11 DEM simulation engine, released by 12 DCS Computing Gmbh, Linz, Austria 13 http://www.dcs-computing.com, office@dcs-computing.com 14 15 LIGGGHTS® is part of CFDEM®project: 16 http://www.liggghts.com | http://www.cfdem.com 17 18 Core developer and main author: 19 Christoph Kloss, christoph.kloss@dcs-computing.com 20 21 LIGGGHTS® is open-source, distributed under the terms of the GNU Public 22 License, version 2 or later. It is distributed in the hope that it will 23 be useful, but WITHOUT ANY WARRANTY; without even the implied warranty 24 of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. You should have 25 received a copy of the GNU General Public License along with LIGGGHTS®. 26 If not, see http://www.gnu.org/licenses . See also top-level README 27 and LICENSE files. 28 29 LIGGGHTS® and CFDEM® are registered trade marks of DCS Computing GmbH, 30 the producer of the LIGGGHTS® software and the CFDEM®coupling software 31 See http://www.cfdem.com/terms-trademark-policy for details. 32 33 ------------------------------------------------------------------------- 34 Contributing author and copyright for this file: 35 This file is from LAMMPS, but has been modified. Copyright for 36 modification: 37 38 Copyright 2013- TU Graz 39 40 Copyright of original file: 41 LAMMPS - Large-scale Atomic/Molecular Massively Parallel Simulator 42 http://lammps.sandia.gov, Sandia National Laboratories 43 Steve Plimpton, sjplimp@sandia.gov 44 45 Copyright (2003) Sandia Corporation. Under the terms of Contract 46 DE-AC04-94AL85000 with Sandia Corporation, the U.S. Government retains 47 certain rights in this software. This software is distributed under 48 the GNU General Public License. 49 ------------------------------------------------------------------------- */ 50 51 #ifdef FIX_CLASS 52 53 FixStyle(fiber/spring/simple,FixFiberSpringSimple) 54 55 #else 56 57 #ifndef LMP_FIX_FIBER_SPRING_SIMPLE_H 58 #define LMP_FIX_FIBER_SPRING_SIMPLE_H 59 60 #include "fix.h" 61 62 namespace LAMMPS_NS { 63 64 class FixFiberSpringSimple : public Fix { 65 public: 66 FixFiberSpringSimple(class LAMMPS *, int, char **); 67 ~FixFiberSpringSimple(); 68 int setmask(); 69 void init(); 70 void setup(int); 71 void min_setup(int); 72 void post_force(int); 73 void post_force_respa(int, int, int); 74 void min_post_force(int); 75 double compute_scalar(); 76 double compute_vector(int); 77 78 private: 79 double xc,yc,zc,r0; 80 double k_spring; 81 int xflag,yflag,zflag; 82 int styleflag; 83 char *group2; 84 int igroup2,group2bit; 85 double masstotal,masstotal2; 86 int nlevels_respa; 87 double espring,ftotal[4]; 88 int force_flag; 89 90 class PairGran *pair_gran; 91 92 class FixPropertyGlobal* Y1; //Youngs Modulus 93 class FixPropertyGlobal* v1; //Poisson's ratio 94 class FixPropertyGlobal* charVel1; //characteristic velocity needed for Linear Spring Model 95 96 double **Yeff,**Geff,**betaeff,**veff,**cohEnergyDens,**coeffRestLog,**coeffFrict,charVel,**coeffRollFrict; 97 98 inline void deriveNormalStiffness(int &ip, int &jp,double &meff, double &kn); 99 100 }; 101 102 } 103 104 #endif 105 #endif 106 107