Example #1
0
	/*
	 * Add variable to map
	 */
	void Model::addFloatVariableToMap(const std::string& variable, std::vector<float>* varData){
		int numberOfVariables = getNumberOfVariables(); //number of variables in data file
		long newVariableId = numberOfVariables + variablesAdded; //ID#s start at 0, variablesAdded initially 0
		// std::cout<<"adding variable "<<variable<<" to map with id "<< newVariableId << std::endl;
		variableData[variable]=varData;
		variableDataByID[newVariableId]=varData;
		fileReader->addVariableName(variable,newVariableId);
		variablesAdded ++;
		return;
	}
Example #2
0
void Polynomial::scaleMarkedCoefficientToOne()
{
	assert(isMarked());
  FieldElement a=marked.c.inverse();
  Monomial k(theRing);
  k.exponent=IntegerVector(getNumberOfVariables());
  Term s(a,k);
  *this*=s;
  marked.c=marked.c.one();
}
Example #3
0
void CSensProblem::addVariables(const CSensItem & item)
{
  //create parameter group corresponding to sens item
  CCopasiParameterGroup* tmp;
  mpVariablesGroup->addGroup("Variables");
  tmp = (CCopasiParameterGroup*)(mpVariablesGroup->getParameter(getNumberOfVariables() - 1));

  createParametersInGroup(tmp);

  copySensItemToParameterGroup(&item, tmp);
}
Example #4
0
bool CSensProblem::changeVariables(size_t index, const CSensItem & item)
{
  size_t num = getNumberOfVariables();

  if (index > num)
    return false;

  if (index == num)
    addVariables(item);
  else
    {
      CCopasiParameterGroup * tmp =
        (CCopasiParameterGroup *)(mpVariablesGroup->getParameter(index));
      copySensItemToParameterGroup(&item, tmp);
    }

  return true;
}
Example #5
0
std::vector<int> LocalToGlobalIndexMap::getElementVariableIDs(
    std::size_t const mesh_item_id) const
{
    std::vector<int> vec;
    for (int i = 0; i < getNumberOfVariables(); i++)
    {
        for (int j=0; j<getNumberOfVariableComponents(i); j++)
        {
            auto comp_id = getGlobalComponent(i, j);
            if (!_rows(mesh_item_id, comp_id).empty())
                vec.push_back(i);
        }
    }
    std::sort(vec.begin(), vec.end());
    vec.erase(std::unique(vec.begin(), vec.end()), vec.end());

    return vec;
}
Example #6
0
int LocalToGlobalIndexMap::getNumberOfVariableComponents(int variable_id) const
{
    assert(variable_id < getNumberOfVariables());
    return _variable_component_offsets[variable_id + 1] -
           _variable_component_offsets[variable_id];
}