--- trunk/OOPSE-3.0/src/types/DirectionalAtomType.cpp 2005/03/09 17:30:29 2097 +++ trunk/OOPSE-3.0/src/types/DirectionalAtomType.cpp 2005/05/17 02:09:25 2226 @@ -42,6 +42,7 @@ #include "types/DirectionalAtomType.hpp" #include "UseTheForce/DarkSide/electrostatic_interface.h" #include "UseTheForce/DarkSide/sticky_interface.h" +#include "UseTheForce/DarkSide/gb_interface.h" #include "utils/simError.h" namespace oopse { @@ -194,8 +195,46 @@ namespace oopse { } //setup GayBerne type in fortran side + if (isGayBerne()) { + data = getPropertyByName("GayBerne"); + if (data != NULL) { + GayBerneParamGenericData* gayBerneData = dynamic_cast(data); - } + if (gayBerneData != NULL) { + GayBerneParam gayBerneParam = gayBerneData->getData(); + /**@todo change fortran interface */ + //makeGayBerneType(&atp.ident, &gayBerneParam.w0, &gayBerneParam.v0, &gayBerneParam.v0p, &gayBerneParam.rl, + // &gayBerneParam.ru, &gayBerneParam.rlp, &gayBerneParam.rup); + newGayBerneType(&gayBerneParam.GB_sigma, &gayBerneParam.GB_12b_ratio, &gayBerneParam.GB_eps, + &gayBerneParam.GB_eps_ratio, &gayBerneParam.GB_mu, &gayBerneParam.GB_nu); + if (isError != 0) { + sprintf( painCave.errMsg, + "Fortran rejected newGayBernetype\n"); + painCave.severity = OOPSE_ERROR; + painCave.isFatal = 1; + simError(); + } + + } + + else { + sprintf( painCave.errMsg, + "Can not cast GenericData to GayBerneParam\n"); + painCave.severity = OOPSE_ERROR; + painCave.isFatal = 1; + simError(); + } + } + else { + sprintf( painCave.errMsg, "Can not find Parameters for GayBerne\n"); + painCave.severity = OOPSE_ERROR; + painCave.isFatal = 1; + simError(); + } + } +} + + } //end namespace oopse