Fonction de calcul
fr

##
summation_z

### Contenu du fichier

    #include "scicos_block4.h"
    #include "../machine.h"
    void summation_z(scicos_block *block,int flag)
    {
     double *ur;
     double *ui;
     int *ipar;
     int nu,mu;
     double *yr;
     double *yi;
     int j,k;

     yr=GetRealOutPortPtrs(block,1);
     yi=GetImagOutPortPtrs(block,1);
     mu=GetInPortRows(block,1);
     nu=GetInPortCols(block,1);

     if(flag==1)
     {
      if (GetNin(block)==1)
      {
       ur=GetRealInPortPtrs(block,1);
       ui=GetImagInPortPtrs(block,1);
        yr[0]=0.0;
        yi[0]=0.0;
         for (j=0;j<mu*nu;j++)
         {
          yr[0]=yr[0]+ur[j];
          yi[0]=yi[0]+ui[j];
         }
       }
      else
      {
       for (j=0;j<mu*nu;j++)
       {
        yr[j]=0.0;
        yi[j]=0.0;
        for (k=1;k<GetNin(block)+1;k++)
        {
         ur=GetRealInPortPtrs(block,k);
         ui=GetImagInPortPtrs(block,k);
         ipar=GetIparPtrs(block);
         if(ipar[k-1]>0)
         {
          yr[j]=yr[j]+ur[j];
          yi[j]=yi[j]+ui[j];
         }
         else
         {
          yr[j]=yr[j]-ur[j];
          yi[j]=yi[j]-ui[j];
         }
        }
       }
      }
     }
    }