コード例 #1
0
ファイル: model.cpp プロジェクト: ashraf-kx/PSO
void Model::createModel(){
    // init array x & y.
    init_x();
    init_y();
    // create Matrix D m3amra bel les valeur  Zero
    m=40;
    //d[m][40];
    for(int i=0; i<m; i++){
        for(int j=0;j<m;j++){
            d[i][j]=0;
        }
    }
    // calcul Of D.
    init_mat_d();
    init_n();
    // display in Terminal Values of D.
    /*for(int i=0; i<m; i++){
        for(int j=0;j<m;j++){
            qDebug()<<d[i][j]<<" ";
        }
        qDebug()<<endl;
    }*/
}
コード例 #2
0
ファイル: 2DOrderParam.cpp プロジェクト: ThiagoMS3/CMC_Dimer
void TwoDOrderParam::SetPositions(input_params& inputPars)
{
	m_x.resize(m_row_number,0);
	m_y.resize(m_row_number,0);

	if(inputPars.runType.compare("Part")==0)
	{
		int counter = 0;
		vector<double> init_x(inputPars.p + inputPars.nx - 1,-1);
		vector<double> init_y(inputPars.p + inputPars.nx - 1,-1);

		vector<int> lineStart(inputPars.p + inputPars.nx - 1,-1);
		vector<int> lineSize(inputPars.p + inputPars.nx - 1,-1);

		// > Set limits
		for(int iii = 0; iii < inputPars.p; ++iii)
		{
			lineStart[iii] = 0;
			init_x[iii] = 0;
			init_y[iii] = (inputPars.p - 1 - iii);
		}
		for(int iii = inputPars.p; iii < inputPars.p + inputPars.nx -1; ++iii)
		{
			lineStart[iii] = (iii - inputPars.p + 1);
			init_x[iii] = (iii - inputPars.p + 1)*sqrt(3)/2;
			init_y[iii] = -(iii - inputPars.p + 1)*0.5;
		}

		for(int iii = 0; iii < inputPars.nx; ++iii)
		{
			lineSize[iii] = (inputPars.ny + iii) - lineStart[iii];
		}
		for(int iii = inputPars.nx; iii < inputPars.p + inputPars.nx - 1; ++iii)
		{
			lineSize[iii] = (inputPars.nx - 1) + inputPars.ny - lineStart[iii];
		}

		for(int iii = 0; iii < inputPars.p + inputPars.nx - 1; ++iii)
		{
			for(int jjj = 0; jjj < lineSize[iii]; ++jjj)
			{
				m_x[counter] = init_x[iii] + jjj*sqrt(3)/2;
				m_y[counter] = init_y[iii] + 0.5*jjj;
				++counter;
			}
		}
	}
//	else if(inputPars.runType.compare("Moessner")==0)
//	{
//		int counter = 0;
//		double init_x = 0;
//		double init_y = 0;
//
//		for(int iii = 0; iii < inputPars.ny; ++iii)
//		{
//			init_x = 0;
//			init_y = inputPars.ny - iii;
//
//			for(int jjj = 0; jjj < inputPars.nx; ++jjj)
//			{
//				m_x[counter] = init_x + jjj*sqrt(3)/2;
//				m_y[counter] = init_y - 0.5*jjj;
//
//				++counter;
//			}
//		}
//	}
	else if(inputPars.runType.compare("Moessner")==0)
	{
		int counter = 0;
		double init_x = 0;
		double init_y = 0;

		for(int jjj = 0; jjj < inputPars.ny; ++jjj)
		{
			init_x = jjj*0.5;
			init_y = jjj*sqrt(3)/2;

			for(int iii = 0; iii < inputPars.nx; ++iii)
			{
				m_x[counter] = init_x + iii;
				m_y[counter] = init_y;
				++counter;
			}
		}
	}
//	else if(inputPars.SimType.compare("Manual")==0)
//	{
//		int counter = 0;
//
//		for(int iii = 0; iii < inputPars.ny/3; ++iii)
//		{
//			// First line
//
//			x = 4*iii*sqrt(3)/2;
//			y = 0;
//
//			for(int jjj = 0; jjj < inputPars.nx/2; ++jjj)
//			{
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to next
//				x += sqrt(3)/2;
//				y +=0.5;
//
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to the next
//
//				x += 0;
//				y += 1;
//			}
//
//			// Second line
//
//			x = (1 + 4*iii)*sqrt(3)/2;
//			y = -0.5;
//
//			for(int jjj = 0; jjj < inputPars.nx/2; ++jjj)
//			{
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to next
//				x += sqrt(3)/2;
//				y +=0.5;
//
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to the next
//
//				x += 0;
//				y += 1;
//			}
//
//			// First line
//
//			x = (3 + 4*iii)*sqrt(3)/2;
//			y = -0.5;
//
//			for(int jjj = 0; jjj < inputPars.nx/2; ++jjj)
//			{
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to the next
//				x += 0;
//				y += 1;
//
//				output << x << " " << y;
//				for(int kkk = 0; kkk < m_col_number; ++kkk)
//				{
//					dataPoint = m_mean[counter];
//
//					output << " " << dataPoint;
//					++counter;
//				}
//				output  << endl;
//
//				// Move to next
//				x += sqrt(3)/2;
//				y +=0.5;
//			}
//		}
//	}
}