Integer part block
- always active: no
- direct-feedthrough: yes
- zero-crossing: no
- mode: no
- number/sizes of inputs: 1 / -1
- number/sizes of outputs: 1 / -1
- number/sizes of activation inputs: 0 /
- number/sizes of activation outputs: 0 /
- continuous-time state: no
- discrete-time state: no
- name of computational function: intblk
INTBLK_f.sci
/* intblk Scicos integer block
* Type 2 simulation function ver 1.1 - scilab-2.6&2.7
* 18 décembre 2003 - IRCOM GROUP - Author : A.Layec
*/
/* REVISION HISTORY :
* $Log$
*/
#include "machine.h"
#include <stdio.h>
/* Cette fonction de simulation retourne la partie
* entière du vecteur d'entrée.
* y=(int)u
*
* entrée régulière : u[0..nu-1] vecteur d'entrée
* sortie régulière : y[0..nu-1] vecteur de sortie
* entrée et sortie évènementielle : néant
* paramètre : néant
*/
/*prototype*/
void intblk(flag,nevprt,t,xd,x,nx,z,nz,tvec,ntvec,rpar,nrpar,
ipar,nipar,inptr,insz,nin,outptr,outsz,nout)
integer *flag,*nevprt,*nx,*nz,*ntvec,*nrpar,ipar[],*nipar,insz[],*nin,outsz[],*nout;
double x[],xd[],z[],tvec[],rpar[];
double *inptr[],*outptr[],*t;
{
/*déclaration des variables*/
int i,nu;
double *y;
double *u;
/*Récupération des adresses des ports réguliers*/
y=(double *)outptr[0];
u=(double *)inptr[0];
/*récupération de la taille du port d'entrée*/
nu=insz[0];
/*Retourne la valeur entière par (int)u[i] dans le registre de sortie*/
for(i=0;i<nu;i++) y[i]=(int)u[i];
}
IRCOM Group
Alan Layec