﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	resolution	keywords	cc
533	Variables calculadas y variables primitivas	irobles	Pedro Gea	"No se si la nomenclatura de variables base y variables calculadas es la correcta, pero bueno, espero que se entienda.

Igual que existe un metodo que nos dice las dependecias de una variables, nos sería muy util un metodo que hago lo contrario, para una variable, nos diga en que variables calculadas de un modelo participa

Os pongo un código de ejemplo que hemos realizado por si os puede ayudar

{{{
//////////////////////////////////////////////////////////////////////////////
Set GetSetVarDependences(Set setVar){
//////////////////////////////////////////////////////////////////////////////
  EvalSet(setVar, Set(NameBlock var){
    Set depen = var::GetDependences(?);
    If(IsEmpty(depen), 
      [[ var ]], 
      {
        BinGroup(""<<"",GetSetVarDependences(depen))
       })
    })
};
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
Real BelongByName(NameBlock var,Set setVar)
//////////////////////////////////////////////////////////////////////////////
{
  Set namesVar = EvalSet(setVar, Text (NameBlock varAux){varAux::GetName(?)});
  If(var::GetName(?)<:namesVar,1,0)
};
//////////////////////////////////////////////////////////////////////////////

//////////////////////////////////////////////////////////////////////////////
Set GetVariablesCalculadas( NameBlock varToFind,NameBlock model){
//////////////////////////////////////////////////////////////////////////////
  Set mVariables = model::GetMVariables(?);
  Set variables = EvalSet(mVariables, NameBlock (NameBlock mvar){

    mvar::GetVariable(?)

  });

  Set Select(variables, Real (NameBlock var){
    Set varDepen = BinGroup(""<<"",GetSetVarDependences([[var]]));
    If(BelongByName(varToFind,varDepen),1,0)

  })
};
//////////////////////////////////////////////////////////////////////////////

}}}"	task	closed	major	Release 0.6	Variables	fixed		
