コード例 #1
0
ファイル: HWUeigen.cpp プロジェクト: changshuaiwei/gsu
void egHWU::sgLocusAssoc()
{
	transX();
	prepareY();

	//cout<<_Y.sum()<<"\n";
	//cout<<_Y.squaredNorm()<<"\n";


	stdW();

	_vec_pvalue.clear();
	double pvalue=1;

	vector<double> x;
	cout<<"\n";
	for(int i=0; i<_n_snp; i++){
		cout<<i+1<<"th SNP";
		
		x.clear();
		//cout<<":"<<(_datafile->getLocus(i))->name;
		prepareX(i,x);

		pvalue=hwu_liu(x);

		_vec_pvalue.push_back(pvalue);
		cout<<"\r";
		cout.flush();
	}

}
コード例 #2
0
ファイル: Matrix4x4.cpp プロジェクト: keishi/PixelKit
 Matrix4x4& Matrix4x4::rotate(float rx, float ry, float rz)
 {
     Matrix4x4 transX(1.0f,     0.0f,      0.0f, 0.0f, 
                      0.0f, cosf(rx), -sinf(rx), 0.0f, 
                      0.0f, sinf(rx),  cosf(rx), 0.0f, 
                      0.0f,     0.0f,      0.0f, 1.0f);
     Matrix4x4 transY(cosf(ry), 0.0f, -sinf(ry), 0.0f, 
                          0.0f, 1.0f,      0.0f, 0.0f, 
                      sinf(ry), 0.0f,  cosf(ry), 0.0f, 
                      0.0f, 0.0f,      0.0f, 1.0f);
     Matrix4x4 transZ(cosf(rz), -sinf(rz), 0.0f, 0.0f, 
                      sinf(rz),  cosf(rz), 0.0f, 0.0f, 
                          0.0f,      0.0f, 1.0f, 0.0f,  
                          0.0f,      0.0f, 0.0f, 1.0f);
     return *this *= transX * transY * transZ;
 }
コード例 #3
0
ファイル: Matrix4x4.cpp プロジェクト: keishi/PixelKit
 Matrix4x4& Matrix4x4::rotate(const Vector3& r)
 {
     float rx = r.x;
     float ry = r.y;
     float rz = r.z;
     Matrix4x4 transX(1.0f,     0.0f,      0.0f, 0.0f, 
                      0.0f, cosf(rx), -sinf(rx), 0.0f, 
                      0.0f, sinf(rx),  cosf(rx), 0.0f, 
                      0.0f,     0.0f,      0.0f, 1.0f);
     Matrix4x4 transY(cosf(ry), 0.0f, -sinf(ry), 0.0f, 
                      0.0f, 1.0f,      0.0f, 0.0f, 
                      sinf(ry), 0.0f,  cosf(ry), 0.0f, 
                      0.0f, 0.0f,      0.0f, 1.0f);
     Matrix4x4 transZ(cosf(rz), -sinf(rz), 0.0f, 0.0f, 
                      sinf(rz),  cosf(rz), 0.0f, 0.0f, 
                      0.0f,      0.0f, 1.0f, 0.0f,  
                      0.0f,      0.0f, 0.0f, 1.0f);
     return *this *= transX * transY * transZ;
 }
コード例 #4
0
ファイル: HWUeigen.cpp プロジェクト: changshuaiwei/gsu
void egHWU::sgLocusRank()
{
	transX();
	prepareY();
	stdW();

	if(par::multi_core){
		D2F();
		getRankZfltMp();
	}else{
		if(!par::hwu_flt){
			getRankZ();
		}else{
			D2F();
			getRankZfloat();
		}
	}
	
	

	vector<double> x;

	cout<<"\nP-value for ranked:\n";
	double pvalue;
	for(int i_=0; i_<_idx.size(); i_++){
		int i=_idx[i_];
		cout<<i_+1<<"th SNP";
		x.clear();
		//cout<<":"<<(_datafile->getLocus(i))->name;
		prepareX(i,x);

		pvalue=hwu_liu(x);
		_vec_pvalue.push_back(pvalue);
		cout<<"\r";
		cout.flush();
	}

}