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


C++ ExportVariable::getElement方法代码示例

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


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

示例1: setupObjectiveEvaluation


//.........这里部分代码省略.........
			evaluateObjective.addFunctionCall(
					setObjQN1QN2,
					tmpFxEnd, objSEndTerm,
					QN1.getAddress(0, 0), QN2.getAddress(0, 0)
			);
		else
			evaluateObjective.addFunctionCall(
					setObjQN1QN2,
					objValueOut.getAddress(0, indexX), objSEndTerm,
					QN1.getAddress(0, 0), QN2.getAddress(0, 0)
			);

		evaluateObjective.addLinebreak( );
	}

	//
	// Hessian setup
	//

	ExportVariable stageH;
	ExportIndex index( "index" );
	stageH.setup("stageH", dimHRows, dimHCols, REAL, ACADO_LOCAL);
	setStageH.setup("setStageH", stageH, index);

	if (Q1.isGiven() == false)
	{
		if (diagH == false)
			setStageH.addStatement(
					stageH.getSubMatrix(0, NX, 0, NX) == Q1.getSubMatrix(index * NX, (index + 1) * NX, 0, NX) + evLmX
			);
		else
			for (unsigned el = 0; el < NX; ++el)
				setStageH.addStatement(
						stageH.getElement(el, 0) == Q1.getElement(index * NX + el, el)
				);
	}
	else
	{
		setStageH << index.getFullName() << " = " << index.getFullName() << ";\n";
		if (diagH == false)
		{
			setStageH.addStatement(
					stageH.getSubMatrix(0, NX, 0, NX) == Q1 + evLmX
			);
		}
		else
		{
			setStageH.addStatement(
					stageH.getRows(0, NX) == Q1.getGivenMatrix().getDiag() + evLmX.getGivenMatrix().getDiag()
			);
		}
	}
	setStageH.addLinebreak();

	if (R1.isGiven() == false)
	{
		if (diagH == false)
			setStageH.addStatement(
					stageH.getSubMatrix(NX, NX + NU, NX, NX + NU) == R1.getSubMatrix(index * NU, (index + 1) * NU, 0, NU) + evLmU
			);
		else
			for (unsigned el = 0; el < NU; ++el)
				setStageH.addStatement(
						stageH.getElement(NX + el, 0) == R1.getElement(index * NU + el, el)
				);
	}
开发者ID:ferreau,项目名称:acado,代码行数:67,代码来源:export_gauss_newton_forces.cpp


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