Actual source code: f90_nag.c

  1: /*$Id: f90_nag.c,v 1.17 2001/03/23 23:20:56 balay Exp $*/

  3: /*-------------------------------------------------------------*/

  7: int F90Array1dCreate(void *array,PetscDataType type,int start,int len,F90Array1d *ptr)
  8: {
  9:   int size,ierr;

 14:   PetscDataTypeGetSize(type,&size);
 15:   ptr->addr          = (Pointer)array;
 16:   ptr->offset        = -size;
 17:   ptr->dim[0].extent = len;
 18:   ptr->dim[0].mult   = size;
 19:   ptr->dim[0].lower  = start;

 21:   return(0);
 22: }

 26: int F90Array2dCreate(void *array,PetscDataType type,int start1,int len1,int start2,int len2,F90Array2d *ptr)
 27: {
 28:   int size,ierr;

 33:   PetscDataTypeGetSize(type,&size);
 34:   ptr->addr          = (Pointer)array;
 35:   ptr->offset        = -(1+len1)*size;
 36:   ptr->dim[0].extent = len1;
 37:   ptr->dim[0].mult   = size;
 38:   ptr->dim[0].lower  = start1;
 39:   ptr->dim[1].extent = len2;
 40:   ptr->dim[1].mult   = len1*size;
 41:   ptr->dim[1].lower  = start2;
 42:   return(0);
 43: }

 45: /*-------------------------------------------------------------*/