00001 // CoupledOneGeneNetworksMinimizableDirector.cpp: implementation of the CCoupledOneGeneNetworksMinimizableDirector class. 00002 // 00004 00005 #include "CoupledOneGeneNetworksMinimizableDirector.h" 00006 00008 // Construction/Destruction 00010 00011 CCoupledOneGeneNetworksMinimizableDirector::CCoupledOneGeneNetworksMinimizableDirector(double epsSq, double deltaSq) 00012 :CCoupledReplicasMinimizableDirector(epsSq,deltaSq) 00013 { 00014 // replica one 00015 m_pReplicaOne = new CAlternateOneGeneInhibitoryNetworkMinimizableDirector(); 00016 // replica two 00017 m_pReplicaTwo = new COneGeneInhibitoryNetworkMinimizableDirector(); 00018 00019 // currently no Gamma available in this director 00020 m_dGammaSquared = 0.0; 00021 00022 // find the parameter intersection lists 00023 SetIntersectionLists(); 00024 00025 // allocate the master residuals list 00026 int masterResidualsSize = 0; 00027 masterResidualsSize = m_pReplicaOne->GetNResiduals() + m_pReplicaTwo->GetNResiduals(); 00028 // really only need this line if eps^2 > 0 00029 masterResidualsSize += m_viIntersectOne.size(); 00030 // this line needed if delta^2 > 0 00031 masterResidualsSize += 1; 00032 if(m_dGammaSquared > 0.0) 00033 { 00034 masterResidualsSize += 1; 00035 } 00036 Allocate(masterResidualsSize); 00037 00038 cout << "Master Residuals size : " << masterResidualsSize << endl; 00039 } 00040 00041 CCoupledOneGeneNetworksMinimizableDirector::~CCoupledOneGeneNetworksMinimizableDirector() 00042 { 00043 00044 }