Index: mainwindow.C
===================================================================
--- mainwindow.C	(revision fec66d73dcbbf53fa0c2d02f26e6870c7e016a39)
+++ mainwindow.C	(revision 9a5ec4011dc11ab19981a23d5efa41b15e3e06db)
@@ -5078,5 +5078,4 @@
         cantidades.insert(cuenta,value.toDouble());
     }
-
     QTableWidget *MatrizIC = new QTableWidget;
     MatrizIC->setObjectName(QString("PHCIcuenta %1").arg(cantidadPHCindidenciaiCuenta));
@@ -5094,6 +5093,7 @@
     @param <tw> Recibe el widget de la tabla
     @param <inci> Recibe el diccionario con las cuentas-valor
-*/
-void MainWindow::calcularPHCIncidenciaI(QTableWidget *tw,QMap<QString,double> inci)
+    @param <clasico> Recibe verdadero si se calculará con modelo clásico o falso en caso contrario
+*/
+void MainWindow::calcularPHCIncidenciaI(QTableWidget *tw,QMap<QString,double> inci, bool clasico)
 {
     int fila = tw->rowCount();
@@ -5101,13 +5101,20 @@
     for(int i=2;i<fila;i++)
     {
+        QString cuenta= tw->item(i,0)->text();
         for(int j=2;j<columna;j++)
         {
-
-            QString cuenta= tw->item(i,0)->text();
+            QString cuenta_col= tw->item(0,j)->text();
             QString number = Separador(tw->item(i,j),true);
             double valor = number.toDouble();
-            if(inci.contains(cuenta) and inci[cuenta]!=0)
-            {
-                valor = valor*(inci[cuenta]/100);
+            if((inci.contains(cuenta) and inci[cuenta]!=0))
+            {
+                if(clasico and cuenta == cuenta_col)
+                {
+                    valor = valor*(inci[cuenta]/100);
+                }
+                else if(!clasico)
+                {
+                    valor = valor*(inci[cuenta]/100);
+                }
             }
             QTableWidgetItem *ValoraInsertar = new QTableWidgetItem(QString::number(valor,'f',precission));
@@ -5178,9 +5185,12 @@
     @param <tw> Recibe el widget de la tabla
     @param <ot> Recibe el widget de la tabla donde se colocarán las incidencias
-*/
-void MainWindow::calcularPHCIncidenciaIComponente(QTableWidget *tw,QTableWidget *ot)
+    @param <clasico> Recibe verdadero si se calculará con modelo clásico o falso en caso contrario
+*/
+void MainWindow::calcularPHCIncidenciaIComponente(QTableWidget *tw,QTableWidget *ot,bool clasico)
 {
     int fila = tw->rowCount();
     int columna = tw->columnCount();
+    QString componente_col = "";
+    QString componente = "";
     for(int i=2;i<fila;i++)
     {
@@ -5189,9 +5199,21 @@
         for(int j=2;j<columna;j++)
         {
+            if(clasico)
+            {
+                componente = tw->item(1,i)->text();
+                componente_col = tw->item(j,1)->text();
+            }
             QString number = Separador(tw->item(i,j),true);
             double valor = number.toDouble();
             if(inci!=0)
             {
-                valor = valor*(inci/100);
+                if(clasico and componente==componente_col)
+                {
+                    valor = valor*(inci/100);
+                }
+                else if(!clasico)
+                {
+                    valor = valor*(inci/100);
+                }
                 QTableWidgetItem *ValoraInsertar = new QTableWidgetItem(QString::number(valor,'f',precission));
                 ValoraInsertar->setFlags(ValoraInsertar->flags() ^ Qt::ItemIsEditable);
@@ -5410,5 +5432,5 @@
     MatrizIC->setObjectName(QString("PHNCIcuenta %1").arg(cantidadPHNCindidenciaiCuenta));
     calcularPHNCIncidencia100(MatrizIC);
-    calcularPHCIncidenciaI(MatrizIC,cantidades);
+    calcularPHCIncidenciaI(MatrizIC,cantidades,false);
 
     createTab(QString("PIHnci %1").arg(cantidadPHNCindidenciaiCuenta),MatrizIC,true);
@@ -5462,5 +5484,5 @@
     MatrizIComp->setObjectName(QString("PHNCIcomponente %1").arg(cantidadPHNCindidenciaiComponente));
     calcularPHNCIncidencia100(MatrizIComp);
-    calcularPHCIncidenciaIComponente(MatrizIComp,tw);
+    calcularPHCIncidenciaIComponente(MatrizIComp,tw,false);
 
     createTab(QString("PIHncic %1").arg(cantidadPHNCindidenciaiComponente),MatrizIComp,true);
Index: mainwindow.H
===================================================================
--- mainwindow.H	(revision 9b2ca78462c2459ae871349f345364a665f46da8)
+++ mainwindow.H	(revision 9a5ec4011dc11ab19981a23d5efa41b15e3e06db)
@@ -284,6 +284,6 @@
     void calcularMaT();
     void calcularPHCIncidencia100(QTableWidget *);
-    void calcularPHCIncidenciaI(QTableWidget *, QMap<QString, double>);
-    void calcularPHCIncidenciaIComponente(QTableWidget *,QTableWidget *);
+    void calcularPHCIncidenciaI(QTableWidget *, QMap<QString, double>, bool clasico = true);
+    void calcularPHCIncidenciaIComponente(QTableWidget *, QTableWidget *, bool clasico = true);
 
     void calcularMbT();
