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: /*-------------------------------------------------------------*/