docs: public void EBEsNodesEquilibrium3D(int hi) throws JMetalException{
  
      for(int ba=0; ba<Element_.length;ba++){
  
        double[][] ri = new double [numberOfLibertyDegree_][numberOfLibertyDegree_];
        double[][] rj = new double [numberOfLibertyDegree_][numberOfLibertyDegree_];
        double[] ei = new double [numberOfLibertyDegree_];
        double[] ej = new double [numberOfLibertyDegree_];
        double[] egi = new double [numberOfLibertyDegree_];
        double[] egj = new double [numberOfLibertyDegree_];
  
        //carga en barra
        // i inode
        ei[aX_] = Efforti_[aX_][ba][hi];
        ei[aY_] = Efforti_[aY_][ba][hi];
        ei[aZ_] = Efforti_[aZ_][ba][hi];
        ei[gX_] = Efforti_[gX_][ba][hi];
        ei[gY_] = Efforti_[gY_][ba][hi];
        ei[gZ_] = Efforti_[gZ_][ba][hi];
        // j node
        ej[aX_] = Effortj_[aX_][ba][hi];
        ej[aY_] = Effortj_[aY_][ba][hi];
        ej[aZ_] = Effortj_[aZ_][ba][hi];
        ej[gX_] = Effortj_[gX_][ba][hi];
        ej[gY_] = Effortj_[gY_][ba][hi];
        ej[gZ_] = Effortj_[gZ_][ba][hi];
  
        //ProyecciÃƒÂ³n de los esfuerzos de barras sobre los ejes generales
        //en el nudo i
        ri = EBEsMatrizMultiplicar(RTij, RpTij);
        egi = EBEsMatrizVectorMultiplicar(ri, ei);
  
        //ProyecciÃƒÂ³n de los esfuerzos de barras sobre los ejes generales
        //en el nudo j
        rj = EBEsMatrizMultiplicar(RTji, RpTji);
        egj = EBEsMatrizVectorMultiplicar(rj, ej);
  
        //sumatoria de esfuerzos concurrentes al nudo
        int ni = (int)Element_[ba][i_];
        Reaction_[numberOfLibertyDegree_ * ni + aX_][hi] += egi[aX_];
        Reaction_[numberOfLibertyDegree_ * ni + aY_][hi] += egi[aY_];
        Reaction_[numberOfLibertyDegree_ * ni + aZ_][hi] += egi[aZ_];
        Reaction_[numberOfLibertyDegree_ * ni + gX_][hi] += egi[gX_];
        Reaction_[numberOfLibertyDegree_ * ni + gY_][hi] += egi[gY_];
        Reaction_[numberOfLibertyDegree_ * ni + gZ_][hi] += egi[gZ_];
  
        //sumatoria de esfuerzos concurrentes al nudo
        int nj = (int)Element_[ba][j_];
        Reaction_[numberOfLibertyDegree_ * nj + aX_][hi] += egj[aX_];
        Reaction_[numberOfLibertyDegree_ * nj + aY_][hi] += egj[aY_];
        Reaction_[numberOfLibertyDegree_ * nj + aZ_][hi] += egj[aZ_];
        Reaction_[numberOfLibertyDegree_ * nj + gX_][hi] += egj[gX_];
        Reaction_[numberOfLibertyDegree_ * nj + gY_][hi] += egj[gY_];
        Reaction_[numberOfLibertyDegree_ * nj + gZ_][hi] += egj[gZ_];
      } //ba
    }