Line data Source code
1 : /**********************************************************************/ 2 : /* DO NOT MODIFY THIS HEADER */ 3 : /* MAGPIE - Mesoscale Atomistic Glue Program for Integrated Execution */ 4 : /* */ 5 : /* Copyright 2017 Battelle Energy Alliance, LLC */ 6 : /* ALL RIGHTS RESERVED */ 7 : /**********************************************************************/ 8 : 9 : #include "MooseMyTRIMCore.h" 10 : #include "MooseMyTRIMSample.h" 11 : 12 198 : MooseMyTRIMCore::MooseMyTRIMCore(MyTRIM_NS::SimconfType * simconf, MooseMyTRIMSample * sample) 13 198 : : MyTRIM_NS::TrimBase(simconf, sample), _dim(sample->getDim()) 14 : { 15 198 : } 16 : 17 : void 18 4270494 : MooseMyTRIMCore::vacancyCreation() 19 : { 20 : // if MyTRIM was to discard this recoil we'd miss this recoil 21 4270494 : if (_recoil->_state == MyTRIM_NS::IonBase::DELETE) 22 : { 23 : // instead we set its energy to 0 24 0 : _recoil->_E = 0.0; 25 : 26 : // and set the state to VACANCY below. It well be deleted in the recoil loop instead 27 : } 28 : 29 : // called if both atoms in the recoil have sufficient energy to leave the site 30 4270494 : _recoil->_state = MyTRIM_NS::IonBase::VACANCY; 31 4270494 : } 32 : 33 : void 34 1233717 : MooseMyTRIMCore::replacementCollision() 35 : { 36 : // if MyTRIM was to discard this recoil we'd miss this recoil 37 1233717 : if (_recoil->_state == MyTRIM_NS::IonBase::DELETE) 38 : { 39 : // instead we set its energy to 0 40 0 : _recoil->_E = 0.0; 41 : 42 : // and set the state to REPLACEMENT below. It well be deleted in the recoil loop instead 43 : } 44 : 45 : // called if only recoil atom has sufficient energy to leave the site 46 1233717 : _recoil->_state = MyTRIM_NS::IonBase::REPLACEMENT; 47 1233717 : }