Logo Search packages:      
Sourcecode: cluster version File versions


c -*- mode: fortran; kept-old-versions: 12;  kept-new-versions: 20; -*-

      subroutine daisy(nn,jpp,x,valmd,jtmd,jdat,vtype,ndyst,mdata,disv)
c     c
c     c      Calculating dissimilarities between objects or variables
c     c

      integer nn, jpp
c     c            nn  = number of objects
c     c            jpp = number of variables used for the calculations

c     c      The following vectors and matrices must be dimensioned in the
c     c      main program :
      double precision x(nn,jpp), valmd(jpp)
      double precision disv(1+nn*(nn-1)/2)
      integer jtmd(jpp), jdat, vtype(jpp), ndyst, mdata

c     vtype was character originally
c     vtype(j) is the type of variable j:
c            = 1 (A) for an Asymmetric binary variable
c            = 2 (S) for a  Symmetric      binary variable
c            = 3 (N) for a  Nominal  variable
c            = 4 (O) for an Ordinal  variable
c            = 5 (I) for an Interval variable (additive)
c            = 6 (T) for a  raTio    variable (log transformed)

c     vector jtmd is only read if there are missing values : if(mdata)
c     jtmd(j) =  0 if variable j is binary
c           = -1 if variable j is not binary and has missing values
c           = +1 if variable j is not binary and has no missing values
      double precision clk,dlk, pp,ppa, rpres
      integer j,k,l,la, lsubt, nlk, nbad, npres
      logical hasNA

      hasNA = (mdata .ne. 0)

c       calculation of the dissimilarities
      if(jdat .eq. 1) then
c Case I: `mixed

Generated by  Doxygen 1.6.0   Back to index