当前位置: 首页>>代码示例>>C++>>正文


C++ CData::dim方法代码示例

本文整理汇总了C++中CData::dim方法的典型用法代码示例。如果您正苦于以下问题:C++ CData::dim方法的具体用法?C++ CData::dim怎么用?C++ CData::dim使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在CData的用法示例。


在下文中一共展示了CData::dim方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: main

int main(int argc, char** argv)
{
   
	// sanity check
	if(argc < 2) 
	{
		std::cout << "Usage: ramp-bmrm-predict config.file" << std::endl;
		std::cout << "Check the configfiles directory for examples" << std::endl;
		std::cout << "ERROR: No configuration file given!" << std::endl;
		exit(EXIT_FAILURE);
	}

	// the very first thing to do!
	Configuration &config = Configuration::GetInstance();
	config.ReadFromFile(argv[1]);
	
	CData* data = 0;
	CLoss* loss_vex = 0;
	CLoss* loss_cav = 0;
	CModel* model = 0;
	
	try {
		// serial computation with centralised data
		config.SetString("Computation.mode", "SERIAL_CENTRALISED_DS");
		
		std::string modelFilename = config.GetString("Model.modelFile");
		std::string programMode = config.GetString("Program.mode");

		data = CDataFactory::GetData();     		
		model = CModelFactory::GetModel();
		model->Initialize(modelFilename, data->dim());
		CRampLossFactory::GetRampLoss(model,data, loss_vex, loss_cav);
		
		if(programMode == "PREDICTION")
			loss_vex->Predict(model);
		else if(programMode == "EVALUATION")
			loss_vex->Evaluate(model);
		else
			throw CBMRMException("unknown program mode <" + programMode +">","main()");
		
		// compute ramp loss function value
		Scalar lossVal_vex = 0.0;
		Scalar lossVal_cav = 0.0;
		
		loss_vex->ComputeLoss(lossVal_vex);
		loss_cav->ComputeLoss(lossVal_cav);

		std::cout << "a) Convex loss function value: " << lossVal_vex << std::endl;
		std::cout << "b) Concave loss function linearization value: " << lossVal_cav << std::endl;
		std::cout << "c) Ramp loss function value (a-b) : " << lossVal_vex - lossVal_cav << std::endl;

		// cleaning up
		delete model;
		delete loss_vex;
		delete loss_cav;
		delete data;
		
	}
	catch(CBMRMException e) {
		cout << e.Report() << endl;
	}
	
	return EXIT_SUCCESS;
}
开发者ID:kingang1986,项目名称:shapematching,代码行数:64,代码来源:ramp-bmrm-predict.cpp


注:本文中的CData::dim方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。