Subsections
Interpolation
Non_linear
The output of this block is a function of the input obtained by linear
interpolation. This block has a single scalar input and a single
scalar output port. The
coord. and
coord. give respectively the
coordinate and the
coordinate of the data points to be
interpolated.
coord must be strictly increasing.
| Set Interpolation block parameters |
|
| X coord. |
[0;1] |
| Y coord. |
[0;1] |
- X coord.:A vector (strictly increasing).
- Y coord.:A vector (same size as
coord).
- 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: intrpl
scilab/macros/scicos_blocks/nonlinear/INTRPLBLK_f.sci
subroutine intrpl(flag,nevprt,t,xd,x,nx,z,nz,tvec,ntvec,
& rpar,nrpar,ipar,nipar,u1,nu1,y1,ny1)
c Copyright INRIA
c Scicos block simulator
c ipar(1) : the number of input
c
double precision t,xd(*),x(*),z(*),tvec(*),rpar(*)
double precision y1,u1
integer flag,nevprt,nx,nz,ntvec,nrpar,ipar(*),i
integer nipar
c
c
do 100 i=2,nrpar/2
if (u1.le.rpar(i)) goto 200
100 continue
i=nrpar/2
200 continue
y1=rpar(nrpar/2+i-1) + ((rpar(nrpar/2+i)-rpar(nrpar/2+i-1))/
$ (rpar(i)-rpar(i-1)))*(u1-rpar(i-1))
return
end
Ramine Nikoukhah
2004-06-22