00001 #ifndef MANISOTROUGHNESS_H_ 00002 #define MANISOTROUGHNESS_H_ 00003 #include "GeneralObjective.h" 00004 namespace gplib 00005 { 00006 //! Caclulate the roughness for anisotropic MT models 00007 class MTAnisoRoughness: public GeneralObjective 00008 { 00009 private: 00010 double conddiffweight; 00011 double anisotropyweight; 00012 double strikediffweight; 00013 public: 00014 void SetCondDiffWeight(const double w) 00015 { 00016 conddiffweight = w; 00017 } 00018 void SetAnisotropyWeight(const double w) 00019 { 00020 anisotropyweight = w; 00021 } 00022 void SetStrikeDiffWeight(const double w) 00023 { 00024 strikediffweight = w; 00025 } 00026 virtual MTAnisoRoughness *clone() const 00027 { 00028 return new MTAnisoRoughness(*this); 00029 } 00030 virtual void SafeParallel(const ttranscribed &member); 00031 virtual double PostParallel(const ttranscribed &member); 00032 MTAnisoRoughness(const MTAnisoRoughness &Old); 00033 MTAnisoRoughness& operator=(const MTAnisoRoughness& source); 00034 MTAnisoRoughness(); 00035 virtual ~MTAnisoRoughness(); 00036 }; 00037 } 00038 #endif /*MTANISOROUGHNESS_H_*/
1.5.8