diff --git a/makefiles/Makefile b/makefiles/Makefile index a2be970d1c..ea4f9f81f8 100644 --- a/makefiles/Makefile +++ b/makefiles/Makefile @@ -83,7 +83,7 @@ OBJ_SRC_FILES += $(LIBCUSMM_DIR)/libcusmm.cu endif # Included files used by Fypp preprocessor and standard includes -INCLUDED_SRC_FILES = $(notdir $(shell find $(SRCDIR) ! -path "*/preprettify/*" -name "*.f90")) +INCLUDED_SRC_FILES = $(filter-out base_uses.f90, $(notdir $(shell find $(SRCDIR) ! -path "*/preprettify/*" -name "*.f90"))) # Include also source files which won't compile into an object file ALL_SRC_FILES = $(strip $(subst $(NULL) .,$(NULL) $(SRCDIR),$(NULL) $(OBJ_SRC_FILES))) @@ -303,8 +303,8 @@ $(PRETTYOBJDIR)/%.pretty: %.F $(DOXIFYOBJDIR)/%.doxified @touch $@ $(PRETTYOBJDIR)/%.pretty_included: %.f90 $(DOXIFYOBJDIR)/%.doxified_included -# TODO: call indent here? @mkdir -p $(PRETTYOBJDIR) + cd $(dir $<); $(TOOLSRC)/prettify/fprettify.py --do-backup --backup-dir=$(PRETTYOBJDIR) $(notdir $<) @touch $@ $(PRETTYOBJDIR)/%.pretty: %.c $(DOXIFYOBJDIR)/%.doxified diff --git a/src/call_collocate.f90 b/src/call_collocate.f90 index 71da1162bb..ae7386dd6e 100644 --- a/src/call_collocate.f90 +++ b/src/call_collocate.f90 @@ -1,35 +1,35 @@ - SELECT CASE(lp) - CASE(0) - CALL collocate_core_0(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(1) - CALL collocate_core_1(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(2) - CALL collocate_core_2(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(3) - CALL collocate_core_3(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(4) - CALL collocate_core_4(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(5) - CALL collocate_core_5(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(6) - CALL collocate_core_6(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(7) - CALL collocate_core_7(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(8) - CALL collocate_core_8(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(9) - CALL collocate_core_9(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) + SELECT CASE (lp) + CASE (0) + CALL collocate_core_0(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (1) + CALL collocate_core_1(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (2) + CALL collocate_core_2(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (3) + CALL collocate_core_3(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (4) + CALL collocate_core_4(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (5) + CALL collocate_core_5(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (6) + CALL collocate_core_6(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (7) + CALL collocate_core_7(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (8) + CALL collocate_core_8(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (9) + CALL collocate_core_9(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) CASE DEFAULT - CALL collocate_core_default(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax),pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),lp,cmax,gridbounds(1,1)) + CALL collocate_core_default(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), lp, cmax, gridbounds(1, 1)) END SELECT diff --git a/src/call_collocate_omp.f90 b/src/call_collocate_omp.f90 index 6aea007989..8347490245 100644 --- a/src/call_collocate_omp.f90 +++ b/src/call_collocate_omp.f90 @@ -1,35 +1,35 @@ - SELECT CASE(lp) - CASE(0) - CALL collocate_core_0(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(1) - CALL collocate_core_1(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(2) - CALL collocate_core_2(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(3) - CALL collocate_core_3(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(4) - CALL collocate_core_4(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(5) - CALL collocate_core_5(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(6) - CALL collocate_core_6(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(7) - CALL collocate_core_7(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(8) - CALL collocate_core_8(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(9) - CALL collocate_core_9(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) + SELECT CASE (lp) + CASE (0) + CALL collocate_core_0(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (1) + CALL collocate_core_1(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (2) + CALL collocate_core_2(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (3) + CALL collocate_core_3(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (4) + CALL collocate_core_4(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (5) + CALL collocate_core_5(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (6) + CALL collocate_core_6(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (7) + CALL collocate_core_7(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (8) + CALL collocate_core_8(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (9) + CALL collocate_core_9(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) CASE DEFAULT - CALL collocate_core_default(lgrid%r(1,ithread_l),coef_xyz(1),pol_x(0,-cmax),pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),lp,cmax,gridbounds(1,1)) + CALL collocate_core_default(lgrid%r(1, ithread_l), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), lp, cmax, gridbounds(1, 1)) END SELECT diff --git a/src/call_integrate.f90 b/src/call_integrate.f90 index 0b32fac6f3..8d9b211587 100644 --- a/src/call_integrate.f90 +++ b/src/call_integrate.f90 @@ -1,35 +1,35 @@ - SELECT CASE(lp) - CASE(0) - CALL integrate_core_0(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(1) - CALL integrate_core_1(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(2) - CALL integrate_core_2(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(3) - CALL integrate_core_3(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(4) - CALL integrate_core_4(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(5) - CALL integrate_core_5(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(6) - CALL integrate_core_6(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(7) - CALL integrate_core_7(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(8) - CALL integrate_core_8(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) - CASE(9) - CALL integrate_core_9(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax), pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),cmax,gridbounds(1,1)) + SELECT CASE (lp) + CASE (0) + CALL integrate_core_0(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (1) + CALL integrate_core_1(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (2) + CALL integrate_core_2(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (3) + CALL integrate_core_3(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (4) + CALL integrate_core_4(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (5) + CALL integrate_core_5(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (6) + CALL integrate_core_6(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (7) + CALL integrate_core_7(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (8) + CALL integrate_core_8(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) + CASE (9) + CALL integrate_core_9(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), cmax, gridbounds(1, 1)) CASE DEFAULT - CALL integrate_core_default(grid(1,1,1),coef_xyz(1),pol_x(0,-cmax),pol_y(1,0,-cmax),pol_z(1,0,-cmax), & - map(-cmax,1),sphere_bounds(1),lp,cmax,gridbounds(1,1)) + CALL integrate_core_default(grid(1, 1, 1), coef_xyz(1), pol_x(0, -cmax), pol_y(1, 0, -cmax), pol_z(1, 0, -cmax), & + map(-cmax, 1), sphere_bounds(1), lp, cmax, gridbounds(1, 1)) END SELECT diff --git a/src/common/sort_m.f90 b/src/common/sort_m.f90 index 3ed24325a8..ca5de3673b 100644 --- a/src/common/sort_m.f90 +++ b/src/common/sort_m.f90 @@ -1,18 +1,18 @@ - isize = iend-istart+1 + isize = iend-istart+1 ! Initialize the INDEX array only for the first row.. - IF (j==1) THEN - DO i = 1,isize + IF (j == 1) THEN + DO i = 1, isize INDEX(i) = i ENDDO END IF ! Allocate scratch arrays - ALLOCATE(work(isize), work2(isize), tmp_index(isize), bck_index(isize)) + ALLOCATE (work(isize), work2(isize), tmp_index(isize), bck_index(isize)) ind = 0 DO i = istart, iend - ind = ind + 1 - work(ind) = matrix(j,i) - bck_index(ind) = INDEX(i) + ind = ind+1 + work(ind) = matrix(j, i) + bck_index(ind) = INDEX(i) END DO ! Ordering row (j) interval istart..iend @@ -21,44 +21,44 @@ ! Copy into global INDEX array with a proper mapping ind = 0 DO i = istart, iend - ind = ind + 1 - INDEX(i)=bck_index(tmp_index(ind)) - matrix(j,i)=work(ind) + ind = ind+1 + INDEX(i) = bck_index(tmp_index(ind)) + matrix(j, i) = work(ind) END DO ! Reorder the rest of the array according the present reordering DO k = j+1, jsize ind = 0 DO i = istart, iend - ind = ind + 1 - work2(ind) = matrix(k,i) + ind = ind+1 + work2(ind) = matrix(k, i) END DO ind = 0 DO i = istart, iend - ind = ind + 1 - matrix(k,i)=work2(tmp_index(ind)) + ind = ind+1 + matrix(k, i) = work2(tmp_index(ind)) END DO END DO ! There are more rows to order.. - IF (j \return ... ! ************************************************************************************************** FUNCTION matching_prime(i) RESULT(res) - INTEGER, INTENT(IN) :: i - INTEGER :: res + INTEGER, INTENT(IN) :: i + INTEGER :: res - INTEGER :: j + INTEGER :: j - res=i - j=0 - DO WHILE (j \brief create a hash_table of given initial size. +!> \brief create a hash_table of given initial size. !> the hash table will expand as needed (but this requires rehashing) !> \param hash_table ... !> \param table_size ... ! ************************************************************************************************** - SUBROUTINE hash_table_create(hash_table,table_size) - TYPE(hash_table_type) :: hash_table - INTEGER, INTENT(IN) :: table_size + SUBROUTINE hash_table_create(hash_table, table_size) + TYPE(hash_table_type) :: hash_table + INTEGER, INTENT(IN) :: table_size - INTEGER :: j + INTEGER :: j - ! guarantee a minimal hash table size (8), so that expansion works + ! guarantee a minimal hash table size (8), so that expansion works - j=3 - DO WHILE(2**j-1 \param hash_table ... ! ************************************************************************************************** SUBROUTINE hash_table_release(hash_table) - TYPE(hash_table_type) :: hash_table + TYPE(hash_table_type) :: hash_table - hash_table%nmax=0 - hash_table%nele=0 - DEALLOCATE(hash_table%table) + hash_table%nmax = 0 + hash_table%nele = 0 + DEALLOCATE (hash_table%table) END SUBROUTINE hash_table_release @@ -72,49 +72,49 @@ !> \param c this value is being hashed !> \param p this is being stored ! ************************************************************************************************** - RECURSIVE SUBROUTINE hash_table_add(hash_table,c,p) - TYPE(hash_table_type), INTENT(INOUT) :: hash_table - INTEGER, INTENT(IN) :: c, p + RECURSIVE SUBROUTINE hash_table_add(hash_table, c, p) + TYPE(hash_table_type), INTENT(INOUT) :: hash_table + INTEGER, INTENT(IN) :: c, p - REAL(KIND=real_8), PARAMETER :: hash_table_expand = 1.5_real_8, & - inv_hash_table_fill = 2.5_real_8 + REAL(KIND=real_8), PARAMETER :: hash_table_expand = 1.5_real_8, & + inv_hash_table_fill = 2.5_real_8 - INTEGER :: i, j - TYPE(ele_type), ALLOCATABLE, & - DIMENSION(:) :: tmp_hash + INTEGER :: i, j + TYPE(ele_type), ALLOCATABLE, & + DIMENSION(:) :: tmp_hash ! if too small, make a copy and rehash in a larger table - IF (hash_table%nele*inv_hash_table_fill>hash_table%nmax) THEN - ALLOCATE(tmp_hash(LBOUND(hash_table%table,1):UBOUND(hash_table%table,1))) - tmp_hash(:)=hash_table%table - CALL hash_table_release(hash_table) - CALL hash_table_create(hash_table,INT((UBOUND(tmp_hash,1)+8)*hash_table_expand)) - DO i=LBOUND(tmp_hash,1),UBOUND(tmp_hash,1) - IF (tmp_hash(i)%c.NE.0) THEN - CALL hash_table_add(hash_table,tmp_hash(i)%c,tmp_hash(i)%p) - ENDIF - ENDDO - DEALLOCATE(tmp_hash) - ENDIF + IF (hash_table%nele*inv_hash_table_fill > hash_table%nmax) THEN + ALLOCATE (tmp_hash(LBOUND(hash_table%table, 1):UBOUND(hash_table%table, 1))) + tmp_hash(:) = hash_table%table + CALL hash_table_release(hash_table) + CALL hash_table_create(hash_table, INT((UBOUND(tmp_hash, 1)+8)*hash_table_expand)) + DO i = LBOUND(tmp_hash, 1), UBOUND(tmp_hash, 1) + IF (tmp_hash(i)%c .NE. 0) THEN + CALL hash_table_add(hash_table, tmp_hash(i)%c, tmp_hash(i)%p) + ENDIF + ENDDO + DEALLOCATE (tmp_hash) + ENDIF - hash_table%nele=hash_table%nele+1 - i=IAND(c*hash_table%prime,hash_table%nmax) + hash_table%nele = hash_table%nele+1 + i = IAND(c*hash_table%prime, hash_table%nmax) - DO j=i,hash_table%nmax - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - hash_table%table(j)%c=c - hash_table%table(j)%p=p - RETURN - ENDIF - ENDDO - DO j=0,i-1 - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - hash_table%table(j)%c=c - hash_table%table(j)%p=p - RETURN - ENDIF - ENDDO + DO j = i, hash_table%nmax + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + hash_table%table(j)%c = c + hash_table%table(j)%p = p + RETURN + ENDIF + ENDDO + DO j = 0, i-1 + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + hash_table%table(j)%c = c + hash_table%table(j)%p = p + RETURN + ENDIF + ENDDO END SUBROUTINE hash_table_add @@ -124,36 +124,36 @@ !> \param c ... !> \return ... ! ************************************************************************************************** - PURE FUNCTION hash_table_get(hash_table,c) RESULT(p) - TYPE(hash_table_type), INTENT(IN) :: hash_table - INTEGER, INTENT(IN) :: c - INTEGER :: p + PURE FUNCTION hash_table_get(hash_table, c) RESULT(p) + TYPE(hash_table_type), INTENT(IN) :: hash_table + INTEGER, INTENT(IN) :: c + INTEGER :: p - INTEGER :: i, j + INTEGER :: i, j - i=IAND(c*hash_table%prime,hash_table%nmax) + i = IAND(c*hash_table%prime, hash_table%nmax) - ! catch the likely case first - IF (hash_table%table(i)%c==c) THEN - p=hash_table%table(i)%p - RETURN - ENDIF + ! catch the likely case first + IF (hash_table%table(i)%c == c) THEN + p = hash_table%table(i)%p + RETURN + ENDIF - DO j=i,hash_table%nmax - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - p=hash_table%table(j)%p - RETURN - ENDIF - ENDDO - DO j=0,i-1 - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - p=hash_table%table(j)%p - RETURN - ENDIF - ENDDO + DO j = i, hash_table%nmax + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + p = hash_table%table(j)%p + RETURN + ENDIF + ENDDO + DO j = 0, i-1 + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + p = hash_table%table(j)%p + RETURN + ENDIF + ENDDO - ! we should never reach this point. - p=HUGE(p) + ! we should never reach this point. + p = HUGE(p) END FUNCTION hash_table_get diff --git a/src/dbcsr/base/dbcsr_hash_table_types.f90 b/src/dbcsr/base/dbcsr_hash_table_types.f90 index db09dfc625..6c082f6f8f 100644 --- a/src/dbcsr/base/dbcsr_hash_table_types.f90 +++ b/src/dbcsr/base/dbcsr_hash_table_types.f90 @@ -2,13 +2,13 @@ !> \brief Types needed for the hashtable. ! ***************************************************************************** TYPE ele_type - INTEGER :: c=0 - INTEGER :: p=0 + INTEGER :: c = 0 + INTEGER :: p = 0 END TYPE ele_type TYPE hash_table_type TYPE(ele_type), DIMENSION(:), POINTER :: table - INTEGER :: nele=0 - INTEGER :: nmax=0 - INTEGER :: prime=0 + INTEGER :: nele = 0 + INTEGER :: nmax = 0 + INTEGER :: prime = 0 END TYPE hash_table_type diff --git a/src/dbcsrx/hash_table.f90 b/src/dbcsrx/hash_table.f90 index 3518851c6f..838f1d7cb0 100644 --- a/src/dbcsrx/hash_table.f90 +++ b/src/dbcsrx/hash_table.f90 @@ -12,45 +12,45 @@ !> \return ... ! ************************************************************************************************** FUNCTION matching_prime(i) RESULT(res) - INTEGER, INTENT(IN) :: i - INTEGER :: res + INTEGER, INTENT(IN) :: i + INTEGER :: res - INTEGER :: j + INTEGER :: j - res=i - j=0 - DO WHILE (j \brief create a hash_table of given initial size. +!> \brief create a hash_table of given initial size. !> the hash table will expand as needed (but this requires rehashing) !> \param hash_table ... !> \param table_size ... ! ************************************************************************************************** - SUBROUTINE hash_table_create(hash_table,table_size) - TYPE(hash_table_type) :: hash_table - INTEGER, INTENT(IN) :: table_size + SUBROUTINE hash_table_create(hash_table, table_size) + TYPE(hash_table_type) :: hash_table + INTEGER, INTENT(IN) :: table_size - INTEGER :: j + INTEGER :: j - ! guarantee a minimal hash table size (8), so that expansion works + ! guarantee a minimal hash table size (8), so that expansion works - j=3 - DO WHILE(2**j-1 \param hash_table ... ! ************************************************************************************************** SUBROUTINE hash_table_release(hash_table) - TYPE(hash_table_type) :: hash_table + TYPE(hash_table_type) :: hash_table - hash_table%nmax=0 - hash_table%nele=0 - DEALLOCATE(hash_table%table) + hash_table%nmax = 0 + hash_table%nele = 0 + DEALLOCATE (hash_table%table) END SUBROUTINE hash_table_release @@ -72,49 +72,49 @@ !> \param c this value is being hashed !> \param p this is being stored ! ************************************************************************************************** - RECURSIVE SUBROUTINE hash_table_add(hash_table,c,p) - TYPE(hash_table_type), INTENT(INOUT) :: hash_table - INTEGER, INTENT(IN) :: c, p + RECURSIVE SUBROUTINE hash_table_add(hash_table, c, p) + TYPE(hash_table_type), INTENT(INOUT) :: hash_table + INTEGER, INTENT(IN) :: c, p - REAL(KIND=real_8), PARAMETER :: hash_table_expand = 1.5_real_8, & - inv_hash_table_fill = 2.5_real_8 + REAL(KIND=real_8), PARAMETER :: hash_table_expand = 1.5_real_8, & + inv_hash_table_fill = 2.5_real_8 - INTEGER :: i, j - TYPE(ele_type), ALLOCATABLE, & - DIMENSION(:) :: tmp_hash + INTEGER :: i, j + TYPE(ele_type), ALLOCATABLE, & + DIMENSION(:) :: tmp_hash ! if too small, make a copy and rehash in a larger table - IF (hash_table%nele*inv_hash_table_fill>hash_table%nmax) THEN - ALLOCATE(tmp_hash(LBOUND(hash_table%table,1):UBOUND(hash_table%table,1))) - tmp_hash(:)=hash_table%table - CALL hash_table_release(hash_table) - CALL hash_table_create(hash_table,INT((UBOUND(tmp_hash,1)+8)*hash_table_expand)) - DO i=LBOUND(tmp_hash,1),UBOUND(tmp_hash,1) - IF (tmp_hash(i)%c.NE.0) THEN - CALL hash_table_add(hash_table,tmp_hash(i)%c,tmp_hash(i)%p) - ENDIF - ENDDO - DEALLOCATE(tmp_hash) - ENDIF + IF (hash_table%nele*inv_hash_table_fill > hash_table%nmax) THEN + ALLOCATE (tmp_hash(LBOUND(hash_table%table, 1):UBOUND(hash_table%table, 1))) + tmp_hash(:) = hash_table%table + CALL hash_table_release(hash_table) + CALL hash_table_create(hash_table, INT((UBOUND(tmp_hash, 1)+8)*hash_table_expand)) + DO i = LBOUND(tmp_hash, 1), UBOUND(tmp_hash, 1) + IF (tmp_hash(i)%c .NE. 0) THEN + CALL hash_table_add(hash_table, tmp_hash(i)%c, tmp_hash(i)%p) + ENDIF + ENDDO + DEALLOCATE (tmp_hash) + ENDIF - hash_table%nele=hash_table%nele+1 - i=IAND(c*hash_table%prime,hash_table%nmax) + hash_table%nele = hash_table%nele+1 + i = IAND(c*hash_table%prime, hash_table%nmax) - DO j=i,hash_table%nmax - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - hash_table%table(j)%c=c - hash_table%table(j)%p=p - RETURN - ENDIF - ENDDO - DO j=0,i-1 - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - hash_table%table(j)%c=c - hash_table%table(j)%p=p - RETURN - ENDIF - ENDDO + DO j = i, hash_table%nmax + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + hash_table%table(j)%c = c + hash_table%table(j)%p = p + RETURN + ENDIF + ENDDO + DO j = 0, i-1 + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + hash_table%table(j)%c = c + hash_table%table(j)%p = p + RETURN + ENDIF + ENDDO END SUBROUTINE hash_table_add @@ -124,36 +124,36 @@ !> \param c ... !> \return ... ! ************************************************************************************************** - PURE FUNCTION hash_table_get(hash_table,c) RESULT(p) - TYPE(hash_table_type), INTENT(IN) :: hash_table - INTEGER, INTENT(IN) :: c - INTEGER :: p + PURE FUNCTION hash_table_get(hash_table, c) RESULT(p) + TYPE(hash_table_type), INTENT(IN) :: hash_table + INTEGER, INTENT(IN) :: c + INTEGER :: p - INTEGER :: i, j + INTEGER :: i, j - i=IAND(c*hash_table%prime,hash_table%nmax) + i = IAND(c*hash_table%prime, hash_table%nmax) - ! catch the likely case first - IF (hash_table%table(i)%c==c) THEN - p=hash_table%table(i)%p - RETURN - ENDIF + ! catch the likely case first + IF (hash_table%table(i)%c == c) THEN + p = hash_table%table(i)%p + RETURN + ENDIF - DO j=i,hash_table%nmax - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - p=hash_table%table(j)%p - RETURN - ENDIF - ENDDO - DO j=0,i-1 - IF (hash_table%table(j)%c==0 .OR. hash_table%table(j)%c==c) THEN - p=hash_table%table(j)%p - RETURN - ENDIF - ENDDO + DO j = i, hash_table%nmax + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + p = hash_table%table(j)%p + RETURN + ENDIF + ENDDO + DO j = 0, i-1 + IF (hash_table%table(j)%c == 0 .OR. hash_table%table(j)%c == c) THEN + p = hash_table%table(j)%p + RETURN + ENDIF + ENDDO - ! we should never reach this point. - p=HUGE(p) + ! we should never reach this point. + p = HUGE(p) END FUNCTION hash_table_get diff --git a/src/dbcsrx/hash_table_types.f90 b/src/dbcsrx/hash_table_types.f90 index db09dfc625..6c082f6f8f 100644 --- a/src/dbcsrx/hash_table_types.f90 +++ b/src/dbcsrx/hash_table_types.f90 @@ -2,13 +2,13 @@ !> \brief Types needed for the hashtable. ! ***************************************************************************** TYPE ele_type - INTEGER :: c=0 - INTEGER :: p=0 + INTEGER :: c = 0 + INTEGER :: p = 0 END TYPE ele_type TYPE hash_table_type TYPE(ele_type), DIMENSION(:), POINTER :: table - INTEGER :: nele=0 - INTEGER :: nmax=0 - INTEGER :: prime=0 + INTEGER :: nele = 0 + INTEGER :: nmax = 0 + INTEGER :: prime = 0 END TYPE hash_table_type diff --git a/src/grid/collocate_fast.f90 b/src/grid/collocate_fast.f90 index 334dfd16eb..986a81138e 100644 --- a/src/grid/collocate_fast.f90 +++ b/src/grid/collocate_fast.f90 @@ -36,8 +36,8 @@ #else -This is an error, and unknown definition of GRID_CORE (__GRID_CORE) has been used +This is an error, and unknown definition of GRID_CORE(__GRID_CORE) has been used #endif -#endif +#endif diff --git a/src/grid/collocate_fast_1.f90 b/src/grid/collocate_fast_1.f90 index e360e94e9c..2aea5fcf5a 100644 --- a/src/grid/collocate_fast_1.f90 +++ b/src/grid/collocate_fast_1.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,77 +111,77 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -196,89 +196,89 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,3)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,3)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,3)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,3)*pol_y(2,1,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 3)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 3)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 3)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 3)*pol_y(2, 1, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -293,105 +293,105 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,4)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,4)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,4)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,4)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,5)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,5)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,5)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,5)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,2,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 4)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 4)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 4)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 4)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 5)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 5)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 5)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 5)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 2, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -406,152 +406,152 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(11)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(11)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(12)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(12)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(13)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(13)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(14)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(14)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(15)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(15)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(16)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(16)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(17)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(17)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(18)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(18)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(19)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(19)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(20)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(20)*pol_z(2,3,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,5)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,5)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,5)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,5)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,8)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,8)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,8)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,8)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,9)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,9)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,9)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,9)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,3,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(11)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(11)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(12)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(12)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(13)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(13)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(14)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(14)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(15)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(15)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(16)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(16)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(17)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(17)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(18)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(18)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(19)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(19)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(20)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(20)*pol_z(2, 3, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 5)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 5)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 5)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 5)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 8)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 8)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 8)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 8)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 9)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 9)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 9)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 9)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 3, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -566,206 +566,206 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(16)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(16)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(17)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(17)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(18)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(18)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(19)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(19)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(20)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(20)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(21)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(21)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(26)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(26)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(27)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(27)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(28)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(28)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(29)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(29)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(30)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(30)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(31)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(31)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(32)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(32)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(33)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(33)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(35)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(35)*pol_z(2,4,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,13)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,13)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,13)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,13)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,14)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,14)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,14)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,14)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,15)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,15)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,15)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(16)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(16)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(17)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(17)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(18)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(18)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(19)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(19)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(20)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(20)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(21)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(21)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(26)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(26)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(27)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(27)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(28)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(28)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(29)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(29)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(30)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(30)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(31)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(31)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(32)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(32)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(33)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(33)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(35)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(35)*pol_z(2, 4, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 13)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 13)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 13)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 13)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 14)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 14)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 14)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 14)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 15)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 15)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 15)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -780,276 +780,276 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(26)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(26)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(27)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(27)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(28)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(28)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(41)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(41)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(42)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(42)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(43)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(43)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(44)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(44)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(45)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(45)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(46)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(46)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(47)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(47)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(48)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(48)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(49)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(49)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(50)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(50)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(51)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(51)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(52)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(52)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(53)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(53)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(54)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(54)*pol_z(2,4,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(55)*pol_z(1,4,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(55)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,5,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,13)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,13)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,13)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,13)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,14)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,14)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,14)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,14)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,15)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,15)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,15)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,15)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,16)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,16)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,16)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,16)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,17)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,17)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,17)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,17)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,18)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,18)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,18)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,18)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,19)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,19)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,19)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,19)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,20)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,20)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,20)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,20)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,21)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,21)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,21)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(26)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(26)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(27)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(27)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(28)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(28)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(41)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(41)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(42)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(42)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(43)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(43)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(44)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(44)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(45)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(45)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(46)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(46)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(47)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(47)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(48)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(48)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(49)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(49)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(50)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(50)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(51)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(51)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(52)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(52)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(53)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(53)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(54)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(54)*pol_z(2, 4, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(55)*pol_z(1, 4, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(55)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 5, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 13)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 13)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 13)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 13)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 14)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 14)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 14)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 14)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 15)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 15)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 15)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 15)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 16)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 16)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 16)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 16)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 17)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 17)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 17)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 17)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 18)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 18)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 18)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 18)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 19)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 19)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 19)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 19)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 20)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 20)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 20)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 20)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 21)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 21)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 21)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -1064,364 +1064,364 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(50)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(50)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(51)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(51)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(52)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(52)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(53)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(53)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(54)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(54)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(55)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(55)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(56)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(56)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(57)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(57)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(58)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(58)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(59)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(59)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(60)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(60)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(61)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(61)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(64)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(64)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(69)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(69)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(70)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(70)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(71)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(71)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(72)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(72)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(73)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(73)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(74)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(74)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(75)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(75)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(76)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(76)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(77)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(77)*pol_z(2,4,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(78)*pol_z(1,4,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(78)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(79)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(79)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(80)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(80)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(81)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(81)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(82)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(82)*pol_z(2,5,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(83)*pol_z(1,5,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(83)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(84)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(84)*pol_z(2,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,14)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,14)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,14)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,14)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,15)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,15)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,15)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,15)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,19)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,19)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,19)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,19)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,20)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,20)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,20)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,20)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,21)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,21)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,21)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,21)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,23)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,23)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,23)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,23)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,24)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,24)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,24)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,24)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,25)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,25)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,25)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,25)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,26)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,26)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,26)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,26)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,27)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,27)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,27)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,27)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,6,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(50)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(50)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(51)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(51)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(52)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(52)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(53)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(53)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(54)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(54)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(55)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(55)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(56)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(56)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(57)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(57)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(58)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(58)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(59)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(59)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(60)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(60)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(61)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(61)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(64)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(64)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(69)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(69)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(70)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(70)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(71)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(71)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(72)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(72)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(73)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(73)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(74)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(74)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(75)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(75)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(76)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(76)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(77)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(77)*pol_z(2, 4, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(78)*pol_z(1, 4, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(78)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(79)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(79)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(80)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(80)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(81)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(81)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(82)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(82)*pol_z(2, 5, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(83)*pol_z(1, 5, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(83)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(84)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(84)*pol_z(2, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 14)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 14)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 14)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 14)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 15)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 15)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 15)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 15)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 19)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 19)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 19)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 19)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 20)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 20)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 20)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 20)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 21)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 21)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 21)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 21)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 23)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 23)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 23)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 23)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 24)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 24)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 24)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 24)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 25)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 25)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 25)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 25)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 26)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 26)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 26)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 26)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 27)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 27)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 27)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 27)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 6, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1436,472 +1436,472 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(69)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(69)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(70)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(70)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(71)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(71)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(72)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(72)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(73)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(73)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(74)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(74)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(75)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(75)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(76)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(76)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(77)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(77)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(78)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(78)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(79)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(79)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(80)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(80)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(81)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(81)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(86)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(86)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(87)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(87)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(88)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(88)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(89)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(89)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(90)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(90)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(91)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(91)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(92)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(92)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(93)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(93)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(94)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(94)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(95)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(95)*pol_z(2,3,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(96)*pol_z(1,3,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(96)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(97)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(97)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(98)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(98)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(99)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(99)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(100)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(100)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(105)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(105)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(106)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(106)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(107)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(107)*pol_z(2,4,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(108)*pol_z(1,4,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(108)*pol_z(2,4,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(109)*pol_z(1,4,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(109)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(110)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(110)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(111)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(111)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(112)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(112)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(113)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(113)*pol_z(2,5,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(114)*pol_z(1,5,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(114)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(115)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(115)*pol_z(2,5,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(116)*pol_z(1,5,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(116)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(117)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(117)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(118)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(118)*pol_z(2,6,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(119)*pol_z(1,6,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(119)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(120)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(120)*pol_z(2,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,23)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,23)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,23)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,23)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,24)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,24)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,24)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,24)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,27)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,27)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,27)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,27)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,28)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,28)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,28)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,28)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,29)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,29)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,29)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,29)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,30)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,30)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,30)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,30)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,34)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,34)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,34)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,34)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,35)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,35)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,35)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,35)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(69)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(69)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(70)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(70)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(71)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(71)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(72)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(72)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(73)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(73)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(74)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(74)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(75)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(75)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(76)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(76)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(77)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(77)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(78)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(78)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(79)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(79)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(80)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(80)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(81)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(81)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(86)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(86)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(87)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(87)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(88)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(88)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(89)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(89)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(90)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(90)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(91)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(91)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(92)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(92)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(93)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(93)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(94)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(94)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(95)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(95)*pol_z(2, 3, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(96)*pol_z(1, 3, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(96)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(97)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(97)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(98)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(98)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(99)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(99)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(100)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(100)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(105)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(105)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(106)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(106)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(107)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(107)*pol_z(2, 4, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(108)*pol_z(1, 4, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(108)*pol_z(2, 4, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(109)*pol_z(1, 4, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(109)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(110)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(110)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(111)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(111)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(112)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(112)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(113)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(113)*pol_z(2, 5, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(114)*pol_z(1, 5, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(114)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(115)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(115)*pol_z(2, 5, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(116)*pol_z(1, 5, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(116)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(117)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(117)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(118)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(118)*pol_z(2, 6, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(119)*pol_z(1, 6, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(119)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(120)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(120)*pol_z(2, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 23)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 23)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 23)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 23)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 24)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 24)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 24)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 24)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 27)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 27)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 27)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 27)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 28)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 28)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 28)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 28)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 29)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 29)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 29)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 29)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 30)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 30)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 30)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 30)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 34)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 34)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 34)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 34)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 35)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 35)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 35)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 35)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1916,602 +1916,602 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(86)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(86)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(87)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(87)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(88)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(88)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(89)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(89)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(90)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(90)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(91)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(91)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(92)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(92)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(93)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(93)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(94)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(94)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(95)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(95)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(96)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(96)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(97)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(97)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(98)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(98)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(99)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(99)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(100)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(100)*pol_z(2,2,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(110)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(110)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(111)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(111)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(112)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(112)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(113)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(113)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(114)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(114)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(115)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(115)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(116)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(116)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(117)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(117)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(118)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(118)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(119)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(119)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(120)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(120)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(121)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(121)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(122)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(122)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(123)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(123)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(124)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(124)*pol_z(2,3,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(125)*pol_z(1,3,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(125)*pol_z(2,3,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(126)*pol_z(1,3,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(126)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(127)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(127)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(128)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(128)*pol_z(2,3,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(129)*pol_z(1,3,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(129)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(130)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(130)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(131)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(131)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(132)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(132)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(133)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(133)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(134)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(134)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(135)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(135)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(136)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(136)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(137)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(137)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(138)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(138)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(139)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(139)*pol_z(2,4,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(140)*pol_z(1,4,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(140)*pol_z(2,4,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(141)*pol_z(1,4,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(141)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(142)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(142)*pol_z(2,4,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(143)*pol_z(1,4,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(143)*pol_z(2,4,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(144)*pol_z(1,4,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(144)*pol_z(2,4,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(145)*pol_z(1,4,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(145)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(146)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(146)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(147)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(147)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(148)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(148)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(149)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(149)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(150)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(150)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(151)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(151)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(152)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(152)*pol_z(2,5,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(153)*pol_z(1,5,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(153)*pol_z(2,5,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(154)*pol_z(1,5,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(154)*pol_z(2,5,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(155)*pol_z(1,5,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(155)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(156)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(156)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(157)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(157)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(158)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(158)*pol_z(2,6,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(159)*pol_z(1,6,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(159)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(160)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(160)*pol_z(2,6,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(161)*pol_z(1,6,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(161)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(162)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(162)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(163)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(163)*pol_z(2,7,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(164)*pol_z(1,7,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(164)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,27)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,27)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,27)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,27)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,34)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,34)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,34)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,34)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,37)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,37)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,37)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,37)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,38)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,38)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,38)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,38)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,39)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,39)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,39)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,39)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,40)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,40)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,40)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,40)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,41)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,41)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,41)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,41)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,42)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,42)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,42)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,42)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,43)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,43)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,43)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,43)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,44)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,44)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,44)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,44)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,45)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,45)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,45)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(86)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(86)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(87)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(87)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(88)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(88)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(89)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(89)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(90)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(90)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(91)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(91)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(92)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(92)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(93)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(93)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(94)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(94)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(95)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(95)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(96)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(96)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(97)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(97)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(98)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(98)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(99)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(99)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(100)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(100)*pol_z(2, 2, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(110)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(110)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(111)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(111)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(112)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(112)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(113)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(113)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(114)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(114)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(115)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(115)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(116)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(116)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(117)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(117)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(118)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(118)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(119)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(119)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(120)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(120)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(121)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(121)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(122)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(122)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(123)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(123)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(124)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(124)*pol_z(2, 3, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(125)*pol_z(1, 3, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(125)*pol_z(2, 3, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(126)*pol_z(1, 3, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(126)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(127)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(127)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(128)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(128)*pol_z(2, 3, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(129)*pol_z(1, 3, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(129)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(130)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(130)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(131)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(131)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(132)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(132)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(133)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(133)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(134)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(134)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(135)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(135)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(136)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(136)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(137)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(137)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(138)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(138)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(139)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(139)*pol_z(2, 4, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(140)*pol_z(1, 4, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(140)*pol_z(2, 4, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(141)*pol_z(1, 4, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(141)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(142)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(142)*pol_z(2, 4, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(143)*pol_z(1, 4, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(143)*pol_z(2, 4, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(144)*pol_z(1, 4, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(144)*pol_z(2, 4, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(145)*pol_z(1, 4, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(145)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(146)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(146)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(147)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(147)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(148)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(148)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(149)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(149)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(150)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(150)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(151)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(151)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(152)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(152)*pol_z(2, 5, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(153)*pol_z(1, 5, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(153)*pol_z(2, 5, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(154)*pol_z(1, 5, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(154)*pol_z(2, 5, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(155)*pol_z(1, 5, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(155)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(156)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(156)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(157)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(157)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(158)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(158)*pol_z(2, 6, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(159)*pol_z(1, 6, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(159)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(160)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(160)*pol_z(2, 6, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(161)*pol_z(1, 6, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(161)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(162)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(162)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(163)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(163)*pol_z(2, 7, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(164)*pol_z(1, 7, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(164)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 27)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 27)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 27)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 27)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 34)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 34)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 34)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 34)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 37)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 37)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 37)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 37)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 38)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 38)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 38)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 38)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 39)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 39)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 39)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 39)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 40)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 40)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 40)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 40)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 41)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 41)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 41)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 41)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 42)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 42)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 42)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 42)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 43)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 43)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 43)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 43)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 44)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 44)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 44)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 44)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 45)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 45)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 45)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -2526,755 +2526,755 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(46)*pol_z(1,0,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(46)*pol_z(2,0,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(47)*pol_z(1,0,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(47)*pol_z(2,0,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(48)*pol_z(1,0,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(48)*pol_z(2,0,kg) - coef_xy(1,49)=coef_xy(1,49)+coef_xyz(49)*pol_z(1,0,kg) - coef_xy(2,49)=coef_xy(2,49)+coef_xyz(49)*pol_z(2,0,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(50)*pol_z(1,0,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(50)*pol_z(2,0,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(51)*pol_z(1,0,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(51)*pol_z(2,0,kg) - coef_xy(1,52)=coef_xy(1,52)+coef_xyz(52)*pol_z(1,0,kg) - coef_xy(2,52)=coef_xy(2,52)+coef_xyz(52)*pol_z(2,0,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(53)*pol_z(1,0,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(53)*pol_z(2,0,kg) - coef_xy(1,54)=coef_xy(1,54)+coef_xyz(54)*pol_z(1,0,kg) - coef_xy(2,54)=coef_xy(2,54)+coef_xyz(54)*pol_z(2,0,kg) - coef_xy(1,55)=coef_xy(1,55)+coef_xyz(55)*pol_z(1,0,kg) - coef_xy(2,55)=coef_xy(2,55)+coef_xyz(55)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(82)*pol_z(1,1,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(82)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(83)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(83)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(84)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(84)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(85)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(85)*pol_z(2,1,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(86)*pol_z(1,1,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(86)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(87)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(87)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(88)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(88)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(89)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(89)*pol_z(2,1,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(90)*pol_z(1,1,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(90)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(91)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(91)*pol_z(2,1,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(92)*pol_z(1,1,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(92)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(93)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(93)*pol_z(2,1,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(94)*pol_z(1,1,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(94)*pol_z(2,1,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(95)*pol_z(1,1,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(95)*pol_z(2,1,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(96)*pol_z(1,1,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(96)*pol_z(2,1,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(97)*pol_z(1,1,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(97)*pol_z(2,1,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(98)*pol_z(1,1,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(98)*pol_z(2,1,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(99)*pol_z(1,1,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(99)*pol_z(2,1,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(100)*pol_z(1,1,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(100)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(110)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(110)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(111)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(111)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(112)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(112)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(113)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(113)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(114)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(114)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(115)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(115)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(116)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(116)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(117)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(117)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(118)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(118)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(119)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(119)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(120)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(120)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(121)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(121)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(122)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(122)*pol_z(2,2,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(123)*pol_z(1,2,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(123)*pol_z(2,2,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(124)*pol_z(1,2,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(124)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(125)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(125)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(126)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(126)*pol_z(2,2,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(127)*pol_z(1,2,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(127)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(128)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(128)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(129)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(129)*pol_z(2,2,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(130)*pol_z(1,2,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(130)*pol_z(2,2,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(131)*pol_z(1,2,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(131)*pol_z(2,2,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(132)*pol_z(1,2,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(132)*pol_z(2,2,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(133)*pol_z(1,2,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(133)*pol_z(2,2,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(134)*pol_z(1,2,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(134)*pol_z(2,2,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(135)*pol_z(1,2,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(135)*pol_z(2,2,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(136)*pol_z(1,2,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(136)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(137)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(137)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(138)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(138)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(139)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(139)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(140)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(140)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(141)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(141)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(142)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(142)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(143)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(143)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(144)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(144)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(145)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(145)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(146)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(146)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(147)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(147)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(148)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(148)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(149)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(149)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(150)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(150)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(151)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(151)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(152)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(152)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(153)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(153)*pol_z(2,3,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(154)*pol_z(1,3,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(154)*pol_z(2,3,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(155)*pol_z(1,3,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(155)*pol_z(2,3,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(156)*pol_z(1,3,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(156)*pol_z(2,3,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(157)*pol_z(1,3,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(157)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(158)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(158)*pol_z(2,3,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(159)*pol_z(1,3,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(159)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(160)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(160)*pol_z(2,3,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(161)*pol_z(1,3,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(161)*pol_z(2,3,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(162)*pol_z(1,3,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(162)*pol_z(2,3,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(163)*pol_z(1,3,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(163)*pol_z(2,3,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(164)*pol_z(1,3,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(164)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(166)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(166)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(167)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(167)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(168)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(168)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(169)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(169)*pol_z(2,4,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(170)*pol_z(1,4,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(170)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(171)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(171)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(172)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(172)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(173)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(173)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(174)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(174)*pol_z(2,4,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(175)*pol_z(1,4,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(175)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(176)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(176)*pol_z(2,4,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(177)*pol_z(1,4,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(177)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(178)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(178)*pol_z(2,4,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(179)*pol_z(1,4,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(179)*pol_z(2,4,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(180)*pol_z(1,4,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(180)*pol_z(2,4,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(181)*pol_z(1,4,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(181)*pol_z(2,4,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(182)*pol_z(1,4,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(182)*pol_z(2,4,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(183)*pol_z(1,4,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(183)*pol_z(2,4,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(184)*pol_z(1,4,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(184)*pol_z(2,4,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(185)*pol_z(1,4,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(185)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(186)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(186)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(187)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(187)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(188)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(188)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(189)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(189)*pol_z(2,5,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(190)*pol_z(1,5,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(190)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(191)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(191)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(192)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(192)*pol_z(2,5,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(193)*pol_z(1,5,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(193)*pol_z(2,5,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(194)*pol_z(1,5,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(194)*pol_z(2,5,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(195)*pol_z(1,5,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(195)*pol_z(2,5,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(196)*pol_z(1,5,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(196)*pol_z(2,5,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(197)*pol_z(1,5,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(197)*pol_z(2,5,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(198)*pol_z(1,5,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(198)*pol_z(2,5,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(199)*pol_z(1,5,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(199)*pol_z(2,5,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(200)*pol_z(1,5,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(200)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(201)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(201)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(202)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(202)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(203)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(203)*pol_z(2,6,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(204)*pol_z(1,6,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(204)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(205)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(205)*pol_z(2,6,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(206)*pol_z(1,6,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(206)*pol_z(2,6,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(207)*pol_z(1,6,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(207)*pol_z(2,6,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(208)*pol_z(1,6,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(208)*pol_z(2,6,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(209)*pol_z(1,6,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(209)*pol_z(2,6,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(210)*pol_z(1,6,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(210)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(211)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(211)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(212)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(212)*pol_z(2,7,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(213)*pol_z(1,7,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(213)*pol_z(2,7,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(214)*pol_z(1,7,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(214)*pol_z(2,7,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(215)*pol_z(1,7,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(215)*pol_z(2,7,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(216)*pol_z(1,7,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(216)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(217)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(217)*pol_z(2,8,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(218)*pol_z(1,8,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(218)*pol_z(2,8,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(219)*pol_z(1,8,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(219)*pol_z(2,8,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(220)*pol_z(1,9,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(220)*pol_z(2,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,9)=coef_x(1,9)+coef_xy(1,10)*pol_y(1,0,jg) - coef_x(2,9)=coef_x(2,9)+coef_xy(2,10)*pol_y(1,0,jg) - coef_x(3,9)=coef_x(3,9)+coef_xy(1,10)*pol_y(2,0,jg) - coef_x(4,9)=coef_x(4,9)+coef_xy(2,10)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,18)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,18)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,18)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,18)*pol_y(2,1,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,19)*pol_y(1,1,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,19)*pol_y(1,1,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,19)*pol_y(2,1,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,19)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,25)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,25)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,25)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,25)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,26)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,26)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,26)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,26)*pol_y(2,2,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,27)*pol_y(1,2,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,27)*pol_y(1,2,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,27)*pol_y(2,2,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,27)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,31)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,31)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,31)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,31)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,32)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,32)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,32)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,32)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,33)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,33)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,33)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,33)*pol_y(2,3,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,34)*pol_y(1,3,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,34)*pol_y(1,3,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,34)*pol_y(2,3,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,34)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,36)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,36)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,36)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,36)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,37)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,37)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,37)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,37)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,38)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,38)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,38)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,38)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,39)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,39)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,39)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,39)*pol_y(2,4,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,40)*pol_y(1,4,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,40)*pol_y(1,4,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,40)*pol_y(2,4,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,40)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,41)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,41)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,41)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,41)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,42)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,42)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,42)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,42)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,43)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,43)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,43)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,43)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,44)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,44)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,44)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,44)*pol_y(2,5,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,45)*pol_y(1,5,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,45)*pol_y(1,5,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,45)*pol_y(2,5,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,45)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,46)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,46)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,46)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,46)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,47)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,47)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,47)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,47)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,48)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,48)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,48)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,48)*pol_y(2,6,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,49)*pol_y(1,6,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,49)*pol_y(1,6,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,49)*pol_y(2,6,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,49)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,50)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,50)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,50)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,50)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,51)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,51)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,51)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,51)*pol_y(2,7,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,52)*pol_y(1,7,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,52)*pol_y(1,7,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,52)*pol_y(2,7,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,52)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,53)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,53)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,53)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,53)*pol_y(2,8,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,54)*pol_y(1,8,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,54)*pol_y(1,8,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,54)*pol_y(2,8,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,54)*pol_y(2,8,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,55)*pol_y(1,9,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,55)*pol_y(1,9,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,55)*pol_y(2,9,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - s01=s01+coef_x(1,9)*pol_x(9,ig) - s02=s02+coef_x(2,9)*pol_x(9,ig) - s03=s03+coef_x(3,9)*pol_x(9,ig) - s04=s04+coef_x(4,9)*pol_x(9,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(46)*pol_z(1, 0, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(46)*pol_z(2, 0, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(47)*pol_z(1, 0, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(47)*pol_z(2, 0, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(48)*pol_z(1, 0, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(48)*pol_z(2, 0, kg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_xyz(49)*pol_z(1, 0, kg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_xyz(49)*pol_z(2, 0, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(50)*pol_z(1, 0, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(50)*pol_z(2, 0, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(51)*pol_z(1, 0, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(51)*pol_z(2, 0, kg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_xyz(52)*pol_z(1, 0, kg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_xyz(52)*pol_z(2, 0, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(53)*pol_z(1, 0, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(53)*pol_z(2, 0, kg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_xyz(54)*pol_z(1, 0, kg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_xyz(54)*pol_z(2, 0, kg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_xyz(55)*pol_z(1, 0, kg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_xyz(55)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(82)*pol_z(1, 1, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(82)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(83)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(83)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(84)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(84)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(85)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(85)*pol_z(2, 1, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(86)*pol_z(1, 1, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(86)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(87)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(87)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(88)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(88)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(89)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(89)*pol_z(2, 1, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(90)*pol_z(1, 1, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(90)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(91)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(91)*pol_z(2, 1, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(92)*pol_z(1, 1, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(92)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(93)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(93)*pol_z(2, 1, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(94)*pol_z(1, 1, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(94)*pol_z(2, 1, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(95)*pol_z(1, 1, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(95)*pol_z(2, 1, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(96)*pol_z(1, 1, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(96)*pol_z(2, 1, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(97)*pol_z(1, 1, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(97)*pol_z(2, 1, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(98)*pol_z(1, 1, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(98)*pol_z(2, 1, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(99)*pol_z(1, 1, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(99)*pol_z(2, 1, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(100)*pol_z(1, 1, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(100)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(110)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(110)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(111)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(111)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(112)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(112)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(113)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(113)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(114)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(114)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(115)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(115)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(116)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(116)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(117)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(117)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(118)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(118)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(119)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(119)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(120)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(120)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(121)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(121)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(122)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(122)*pol_z(2, 2, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(123)*pol_z(1, 2, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(123)*pol_z(2, 2, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(124)*pol_z(1, 2, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(124)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(125)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(125)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(126)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(126)*pol_z(2, 2, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(127)*pol_z(1, 2, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(127)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(128)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(128)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(129)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(129)*pol_z(2, 2, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(130)*pol_z(1, 2, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(130)*pol_z(2, 2, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(131)*pol_z(1, 2, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(131)*pol_z(2, 2, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(132)*pol_z(1, 2, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(132)*pol_z(2, 2, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(133)*pol_z(1, 2, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(133)*pol_z(2, 2, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(134)*pol_z(1, 2, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(134)*pol_z(2, 2, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(135)*pol_z(1, 2, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(135)*pol_z(2, 2, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(136)*pol_z(1, 2, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(136)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(137)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(137)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(138)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(138)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(139)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(139)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(140)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(140)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(141)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(141)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(142)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(142)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(143)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(143)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(144)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(144)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(145)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(145)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(146)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(146)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(147)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(147)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(148)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(148)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(149)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(149)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(150)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(150)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(151)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(151)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(152)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(152)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(153)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(153)*pol_z(2, 3, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(154)*pol_z(1, 3, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(154)*pol_z(2, 3, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(155)*pol_z(1, 3, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(155)*pol_z(2, 3, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(156)*pol_z(1, 3, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(156)*pol_z(2, 3, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(157)*pol_z(1, 3, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(157)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(158)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(158)*pol_z(2, 3, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(159)*pol_z(1, 3, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(159)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(160)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(160)*pol_z(2, 3, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(161)*pol_z(1, 3, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(161)*pol_z(2, 3, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(162)*pol_z(1, 3, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(162)*pol_z(2, 3, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(163)*pol_z(1, 3, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(163)*pol_z(2, 3, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(164)*pol_z(1, 3, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(164)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(166)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(166)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(167)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(167)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(168)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(168)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(169)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(169)*pol_z(2, 4, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(170)*pol_z(1, 4, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(170)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(171)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(171)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(172)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(172)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(173)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(173)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(174)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(174)*pol_z(2, 4, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(175)*pol_z(1, 4, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(175)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(176)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(176)*pol_z(2, 4, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(177)*pol_z(1, 4, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(177)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(178)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(178)*pol_z(2, 4, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(179)*pol_z(1, 4, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(179)*pol_z(2, 4, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(180)*pol_z(1, 4, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(180)*pol_z(2, 4, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(181)*pol_z(1, 4, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(181)*pol_z(2, 4, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(182)*pol_z(1, 4, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(182)*pol_z(2, 4, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(183)*pol_z(1, 4, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(183)*pol_z(2, 4, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(184)*pol_z(1, 4, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(184)*pol_z(2, 4, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(185)*pol_z(1, 4, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(185)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(186)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(186)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(187)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(187)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(188)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(188)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(189)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(189)*pol_z(2, 5, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(190)*pol_z(1, 5, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(190)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(191)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(191)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(192)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(192)*pol_z(2, 5, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(193)*pol_z(1, 5, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(193)*pol_z(2, 5, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(194)*pol_z(1, 5, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(194)*pol_z(2, 5, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(195)*pol_z(1, 5, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(195)*pol_z(2, 5, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(196)*pol_z(1, 5, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(196)*pol_z(2, 5, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(197)*pol_z(1, 5, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(197)*pol_z(2, 5, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(198)*pol_z(1, 5, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(198)*pol_z(2, 5, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(199)*pol_z(1, 5, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(199)*pol_z(2, 5, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(200)*pol_z(1, 5, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(200)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(201)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(201)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(202)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(202)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(203)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(203)*pol_z(2, 6, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(204)*pol_z(1, 6, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(204)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(205)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(205)*pol_z(2, 6, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(206)*pol_z(1, 6, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(206)*pol_z(2, 6, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(207)*pol_z(1, 6, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(207)*pol_z(2, 6, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(208)*pol_z(1, 6, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(208)*pol_z(2, 6, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(209)*pol_z(1, 6, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(209)*pol_z(2, 6, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(210)*pol_z(1, 6, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(210)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(211)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(211)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(212)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(212)*pol_z(2, 7, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(213)*pol_z(1, 7, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(213)*pol_z(2, 7, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(214)*pol_z(1, 7, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(214)*pol_z(2, 7, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(215)*pol_z(1, 7, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(215)*pol_z(2, 7, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(216)*pol_z(1, 7, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(216)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(217)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(217)*pol_z(2, 8, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(218)*pol_z(1, 8, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(218)*pol_z(2, 8, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(219)*pol_z(1, 8, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(219)*pol_z(2, 8, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(220)*pol_z(1, 9, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(220)*pol_z(2, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 9) = coef_x(1, 9)+coef_xy(1, 10)*pol_y(1, 0, jg) + coef_x(2, 9) = coef_x(2, 9)+coef_xy(2, 10)*pol_y(1, 0, jg) + coef_x(3, 9) = coef_x(3, 9)+coef_xy(1, 10)*pol_y(2, 0, jg) + coef_x(4, 9) = coef_x(4, 9)+coef_xy(2, 10)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 18)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 18)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 18)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 18)*pol_y(2, 1, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 19)*pol_y(1, 1, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 19)*pol_y(1, 1, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 19)*pol_y(2, 1, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 19)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 25)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 25)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 25)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 25)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 26)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 26)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 26)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 26)*pol_y(2, 2, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 27)*pol_y(1, 2, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 27)*pol_y(1, 2, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 27)*pol_y(2, 2, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 27)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 31)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 31)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 31)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 31)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 32)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 32)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 32)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 32)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 33)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 33)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 33)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 33)*pol_y(2, 3, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 34)*pol_y(1, 3, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 34)*pol_y(1, 3, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 34)*pol_y(2, 3, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 34)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 36)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 36)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 36)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 36)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 37)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 37)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 37)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 37)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 38)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 38)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 38)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 38)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 39)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 39)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 39)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 39)*pol_y(2, 4, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 40)*pol_y(1, 4, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 40)*pol_y(1, 4, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 40)*pol_y(2, 4, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 40)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 41)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 41)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 41)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 41)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 42)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 42)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 42)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 42)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 43)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 43)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 43)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 43)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 44)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 44)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 44)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 44)*pol_y(2, 5, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 45)*pol_y(1, 5, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 45)*pol_y(1, 5, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 45)*pol_y(2, 5, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 45)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 46)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 46)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 46)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 46)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 47)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 47)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 47)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 47)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 48)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 48)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 48)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 48)*pol_y(2, 6, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 49)*pol_y(1, 6, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 49)*pol_y(1, 6, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 49)*pol_y(2, 6, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 49)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 50)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 50)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 50)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 50)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 51)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 51)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 51)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 51)*pol_y(2, 7, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 52)*pol_y(1, 7, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 52)*pol_y(1, 7, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 52)*pol_y(2, 7, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 52)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 53)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 53)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 53)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 53)*pol_y(2, 8, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 54)*pol_y(1, 8, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 54)*pol_y(1, 8, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 54)*pol_y(2, 8, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 54)*pol_y(2, 8, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 55)*pol_y(1, 9, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 55)*pol_y(1, 9, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 55)*pol_y(2, 9, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + s01 = s01+coef_x(1, 9)*pol_x(9, ig) + s02 = s02+coef_x(2, 9)*pol_x(9, ig) + s03 = s03+coef_x(3, 9)*pol_x(9, ig) + s04 = s04+coef_x(4, 9)*pol_x(9, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/collocate_fast_2.f90 b/src/grid/collocate_fast_2.f90 index 499a52aa31..d4f409de57 100644 --- a/src/grid/collocate_fast_2.f90 +++ b/src/grid/collocate_fast_2.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,75 +111,75 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -194,82 +194,82 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_xyz(lxyz)*pol_z(:,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,3)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,3)*pol_y(2,1,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_xyz(lxyz)*pol_z(:, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 3)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 3)*pol_y(2, 1, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -284,90 +284,90 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(7)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(8)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(9)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(10)*pol_z(:,2,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,4)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,4)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,6)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,6)*pol_y(2,2,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(7)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(8)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(9)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(10)*pol_z(:, 2, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 4)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 4)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 6)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 6)*pol_y(2, 2, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -382,112 +382,112 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(11)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(12)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(13)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(14)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(15)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(16)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(17)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(18)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(19)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(20)*pol_z(:,3,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,6)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,6)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,8)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,8)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,9)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,9)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,10)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,10)*pol_y(2,3,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(11)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(12)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(13)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(14)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(15)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(16)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(17)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(18)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(19)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(20)*pol_z(:, 3, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 6)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 6)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 8)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 8)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 9)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 9)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 10)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 10)*pol_y(2, 3, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -502,127 +502,127 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(16)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(17)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(18)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(19)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(20)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(21)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(22)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(23)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(24)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(25)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(26)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(27)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(28)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(29)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(30)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(31)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(32)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(33)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(34)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(35)*pol_z(:,4,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,6)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,6)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,10)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,10)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,11)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,11)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,13)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,13)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,14)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,14)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,15)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(16)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(17)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(18)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(19)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(20)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(21)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(22)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(23)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(24)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(25)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(26)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(27)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(28)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(29)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(30)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(31)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(32)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(33)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(34)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(35)*pol_z(:, 4, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 6)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 6)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 10)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 10)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 11)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 11)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 13)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 13)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 14)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 14)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 15)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -637,216 +637,216 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(26)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(26)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(27)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(27)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(28)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(28)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(41)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(41)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(42)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(42)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(43)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(43)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(44)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(44)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(45)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(45)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(46)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(46)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(47)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(47)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(48)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(48)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(49)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(49)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(50)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(50)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(51)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(51)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(52)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(52)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(53)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(53)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(54)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(54)*pol_z(2,4,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(55)*pol_z(1,4,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(55)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,5,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,13)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,13)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,21)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(26)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(26)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(27)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(27)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(28)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(28)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(41)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(41)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(42)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(42)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(43)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(43)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(44)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(44)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(45)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(45)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(46)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(46)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(47)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(47)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(48)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(48)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(49)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(49)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(50)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(50)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(51)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(51)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(52)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(52)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(53)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(53)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(54)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(54)*pol_z(2, 4, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(55)*pol_z(1, 4, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(55)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 5, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 13)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 13)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 21)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -861,202 +861,202 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(29)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(30)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(31)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(32)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(33)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(34)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(35)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(36)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(37)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(38)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(39)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(40)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(41)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(42)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(43)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(44)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(45)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(50)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(51)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(52)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(53)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(54)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(55)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(56)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(57)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(58)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(59)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(60)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(61)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(62)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(63)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(64)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(65)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(66)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(67)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(68)*pol_z(:,3,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(69)*pol_z(:,3,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(70)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(71)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(72)*pol_z(:,3,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(73)*pol_z(:,3,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(74)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(75)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(76)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(77)*pol_z(:,4,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(78)*pol_z(:,4,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(79)*pol_z(:,4,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(80)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(81)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(82)*pol_z(:,5,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(83)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(84)*pol_z(:,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,16)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,16)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,17)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,17)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,21)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,21)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,22)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,22)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,23)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,23)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,24)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,24)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,25)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,25)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,26)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,26)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,27)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,27)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,28)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,28)*pol_y(2,6,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(29)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(30)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(31)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(32)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(33)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(34)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(35)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(36)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(37)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(38)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(39)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(40)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(41)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(42)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(43)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(44)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(45)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(50)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(51)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(52)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(53)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(54)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(55)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(56)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(57)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(58)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(59)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(60)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(61)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(62)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(63)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(64)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(65)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(66)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(67)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(68)*pol_z(:, 3, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(69)*pol_z(:, 3, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(70)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(71)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(72)*pol_z(:, 3, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(73)*pol_z(:, 3, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(74)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(75)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(76)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(77)*pol_z(:, 4, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(78)*pol_z(:, 4, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(79)*pol_z(:, 4, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(80)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(81)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(82)*pol_z(:, 5, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(83)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(84)*pol_z(:, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 16)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 16)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 17)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 17)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 21)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 21)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 22)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 22)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 23)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 23)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 24)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 24)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 25)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 25)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 26)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 26)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 27)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 27)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 28)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 28)*pol_y(2, 6, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1071,280 +1071,280 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(37)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(38)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(39)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(40)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(41)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(42)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(43)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(44)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(45)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(50)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(51)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(52)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(53)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(54)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(55)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(65)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(66)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(67)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(68)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(69)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(70)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(71)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(72)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(73)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(74)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(75)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(76)*pol_z(:,2,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(77)*pol_z(:,2,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(78)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(79)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(80)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(81)*pol_z(:,2,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(82)*pol_z(:,2,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(83)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(84)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(85)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(86)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(87)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(88)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(89)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(90)*pol_z(:,3,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(91)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(92)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(93)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(94)*pol_z(:,3,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(95)*pol_z(:,3,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(96)*pol_z(:,3,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(97)*pol_z(:,3,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(98)*pol_z(:,3,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(99)*pol_z(:,3,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(100)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(101)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(102)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(103)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(104)*pol_z(:,4,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(105)*pol_z(:,4,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(106)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(107)*pol_z(:,4,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(108)*pol_z(:,4,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(109)*pol_z(:,4,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(110)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(111)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(112)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(113)*pol_z(:,5,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(114)*pol_z(:,5,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(115)*pol_z(:,5,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(116)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(117)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(118)*pol_z(:,6,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(119)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(120)*pol_z(:,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,19)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,19)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,22)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,22)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,23)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,23)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,24)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,24)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,25)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,25)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,26)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,26)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,27)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,27)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,28)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,28)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,29)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,29)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,30)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,30)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,31)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,31)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,32)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,32)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,33)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,33)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,34)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,34)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,35)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,35)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,36)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(37)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(38)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(39)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(40)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(41)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(42)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(43)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(44)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(45)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(50)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(51)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(52)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(53)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(54)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(55)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(65)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(66)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(67)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(68)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(69)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(70)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(71)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(72)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(73)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(74)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(75)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(76)*pol_z(:, 2, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(77)*pol_z(:, 2, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(78)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(79)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(80)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(81)*pol_z(:, 2, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(82)*pol_z(:, 2, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(83)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(84)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(85)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(86)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(87)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(88)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(89)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(90)*pol_z(:, 3, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(91)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(92)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(93)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(94)*pol_z(:, 3, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(95)*pol_z(:, 3, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(96)*pol_z(:, 3, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(97)*pol_z(:, 3, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(98)*pol_z(:, 3, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(99)*pol_z(:, 3, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(100)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(101)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(102)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(103)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(104)*pol_z(:, 4, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(105)*pol_z(:, 4, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(106)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(107)*pol_z(:, 4, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(108)*pol_z(:, 4, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(109)*pol_z(:, 4, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(110)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(111)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(112)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(113)*pol_z(:, 5, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(114)*pol_z(:, 5, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(115)*pol_z(:, 5, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(116)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(117)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(118)*pol_z(:, 6, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(119)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(120)*pol_z(:, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 19)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 19)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 22)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 22)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 23)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 23)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 24)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 24)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 25)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 25)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 26)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 26)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 27)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 27)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 28)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 28)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 29)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 29)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 30)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 30)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 31)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 31)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 32)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 32)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 33)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 33)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 34)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 34)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 35)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 35)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 36)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1359,347 +1359,347 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(37)*pol_z(:,0,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(38)*pol_z(:,0,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(39)*pol_z(:,0,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(40)*pol_z(:,0,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(41)*pol_z(:,0,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(42)*pol_z(:,0,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(43)*pol_z(:,0,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(44)*pol_z(:,0,kg) - coef_xy(:,45)=coef_xy(:,45)+coef_xyz(45)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(50)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(51)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(52)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(53)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(54)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(55)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(65)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(66)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(67)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(68)*pol_z(:,1,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(69)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(70)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(71)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(72)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(73)*pol_z(:,1,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(74)*pol_z(:,1,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(75)*pol_z(:,1,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(76)*pol_z(:,1,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(77)*pol_z(:,1,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(78)*pol_z(:,1,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(79)*pol_z(:,1,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(80)*pol_z(:,1,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(81)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(82)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(83)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(84)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(85)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(86)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(87)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(88)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(89)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(90)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(91)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(92)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(93)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(94)*pol_z(:,2,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(95)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(96)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(97)*pol_z(:,2,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(98)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(99)*pol_z(:,2,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(100)*pol_z(:,2,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(101)*pol_z(:,2,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(102)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(103)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(104)*pol_z(:,2,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(105)*pol_z(:,2,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(106)*pol_z(:,2,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(107)*pol_z(:,2,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(108)*pol_z(:,2,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(109)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(110)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(111)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(112)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(113)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(114)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(115)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(116)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(117)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(118)*pol_z(:,3,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(119)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(120)*pol_z(:,3,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(121)*pol_z(:,3,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(122)*pol_z(:,3,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(123)*pol_z(:,3,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(124)*pol_z(:,3,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(125)*pol_z(:,3,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(126)*pol_z(:,3,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(127)*pol_z(:,3,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(128)*pol_z(:,3,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(129)*pol_z(:,3,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(130)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(131)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(132)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(133)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(134)*pol_z(:,4,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(135)*pol_z(:,4,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(136)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(137)*pol_z(:,4,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(138)*pol_z(:,4,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(139)*pol_z(:,4,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(140)*pol_z(:,4,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(141)*pol_z(:,4,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(142)*pol_z(:,4,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(143)*pol_z(:,4,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(144)*pol_z(:,4,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(145)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(146)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(147)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(148)*pol_z(:,5,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(149)*pol_z(:,5,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(150)*pol_z(:,5,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(151)*pol_z(:,5,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(152)*pol_z(:,5,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(153)*pol_z(:,5,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(154)*pol_z(:,5,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(155)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(156)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(157)*pol_z(:,6,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(158)*pol_z(:,6,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(159)*pol_z(:,6,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(160)*pol_z(:,6,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(161)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(162)*pol_z(:,7,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(163)*pol_z(:,7,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(164)*pol_z(:,7,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(165)*pol_z(:,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,9)*pol_y(1,0,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,9)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,16)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,16)*pol_y(2,1,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,17)*pol_y(1,1,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,17)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,19)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,19)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,22)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,22)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,23)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,23)*pol_y(2,2,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,24)*pol_y(1,2,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,24)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,25)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,25)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,26)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,26)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,27)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,27)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,28)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,28)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,29)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,29)*pol_y(2,3,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,30)*pol_y(1,3,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,30)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,31)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,31)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,32)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,32)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,33)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,33)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,34)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,34)*pol_y(2,4,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,35)*pol_y(1,4,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,35)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,36)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,36)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,37)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,37)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,38)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,38)*pol_y(2,5,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,39)*pol_y(1,5,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,39)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,40)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,40)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,41)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,41)*pol_y(2,6,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,42)*pol_y(1,6,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,42)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,43)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,43)*pol_y(2,7,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,44)*pol_y(1,7,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,44)*pol_y(2,7,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,45)*pol_y(1,8,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(37)*pol_z(:, 0, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(38)*pol_z(:, 0, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(39)*pol_z(:, 0, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(40)*pol_z(:, 0, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(41)*pol_z(:, 0, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(42)*pol_z(:, 0, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(43)*pol_z(:, 0, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(44)*pol_z(:, 0, kg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_xyz(45)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(50)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(51)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(52)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(53)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(54)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(55)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(65)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(66)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(67)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(68)*pol_z(:, 1, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(69)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(70)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(71)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(72)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(73)*pol_z(:, 1, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(74)*pol_z(:, 1, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(75)*pol_z(:, 1, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(76)*pol_z(:, 1, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(77)*pol_z(:, 1, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(78)*pol_z(:, 1, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(79)*pol_z(:, 1, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(80)*pol_z(:, 1, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(81)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(82)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(83)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(84)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(85)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(86)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(87)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(88)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(89)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(90)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(91)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(92)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(93)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(94)*pol_z(:, 2, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(95)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(96)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(97)*pol_z(:, 2, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(98)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(99)*pol_z(:, 2, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(100)*pol_z(:, 2, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(101)*pol_z(:, 2, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(102)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(103)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(104)*pol_z(:, 2, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(105)*pol_z(:, 2, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(106)*pol_z(:, 2, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(107)*pol_z(:, 2, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(108)*pol_z(:, 2, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(109)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(110)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(111)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(112)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(113)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(114)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(115)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(116)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(117)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(118)*pol_z(:, 3, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(119)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(120)*pol_z(:, 3, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(121)*pol_z(:, 3, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(122)*pol_z(:, 3, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(123)*pol_z(:, 3, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(124)*pol_z(:, 3, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(125)*pol_z(:, 3, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(126)*pol_z(:, 3, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(127)*pol_z(:, 3, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(128)*pol_z(:, 3, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(129)*pol_z(:, 3, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(130)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(131)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(132)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(133)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(134)*pol_z(:, 4, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(135)*pol_z(:, 4, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(136)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(137)*pol_z(:, 4, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(138)*pol_z(:, 4, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(139)*pol_z(:, 4, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(140)*pol_z(:, 4, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(141)*pol_z(:, 4, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(142)*pol_z(:, 4, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(143)*pol_z(:, 4, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(144)*pol_z(:, 4, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(145)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(146)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(147)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(148)*pol_z(:, 5, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(149)*pol_z(:, 5, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(150)*pol_z(:, 5, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(151)*pol_z(:, 5, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(152)*pol_z(:, 5, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(153)*pol_z(:, 5, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(154)*pol_z(:, 5, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(155)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(156)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(157)*pol_z(:, 6, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(158)*pol_z(:, 6, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(159)*pol_z(:, 6, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(160)*pol_z(:, 6, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(161)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(162)*pol_z(:, 7, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(163)*pol_z(:, 7, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(164)*pol_z(:, 7, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(165)*pol_z(:, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 9)*pol_y(1, 0, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 9)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 16)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 16)*pol_y(2, 1, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 17)*pol_y(1, 1, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 17)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 19)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 19)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 22)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 22)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 23)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 23)*pol_y(2, 2, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 24)*pol_y(1, 2, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 24)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 25)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 25)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 26)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 26)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 27)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 27)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 28)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 28)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 29)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 29)*pol_y(2, 3, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 30)*pol_y(1, 3, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 30)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 31)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 31)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 32)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 32)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 33)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 33)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 34)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 34)*pol_y(2, 4, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 35)*pol_y(1, 4, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 35)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 36)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 36)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 37)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 37)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 38)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 38)*pol_y(2, 5, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 39)*pol_y(1, 5, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 39)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 40)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 40)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 41)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 41)*pol_y(2, 6, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 42)*pol_y(1, 6, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 42)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 43)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 43)*pol_y(2, 7, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 44)*pol_y(1, 7, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 44)*pol_y(2, 7, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 45)*pol_y(1, 8, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -1714,425 +1714,425 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(37)*pol_z(:,0,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(38)*pol_z(:,0,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(39)*pol_z(:,0,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(40)*pol_z(:,0,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(41)*pol_z(:,0,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(42)*pol_z(:,0,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(43)*pol_z(:,0,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(44)*pol_z(:,0,kg) - coef_xy(:,45)=coef_xy(:,45)+coef_xyz(45)*pol_z(:,0,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(46)*pol_z(:,0,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(47)*pol_z(:,0,kg) - coef_xy(:,48)=coef_xy(:,48)+coef_xyz(48)*pol_z(:,0,kg) - coef_xy(:,49)=coef_xy(:,49)+coef_xyz(49)*pol_z(:,0,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(50)*pol_z(:,0,kg) - coef_xy(:,51)=coef_xy(:,51)+coef_xyz(51)*pol_z(:,0,kg) - coef_xy(:,52)=coef_xy(:,52)+coef_xyz(52)*pol_z(:,0,kg) - coef_xy(:,53)=coef_xy(:,53)+coef_xyz(53)*pol_z(:,0,kg) - coef_xy(:,54)=coef_xy(:,54)+coef_xyz(54)*pol_z(:,0,kg) - coef_xy(:,55)=coef_xy(:,55)+coef_xyz(55)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(65)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(66)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(67)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(68)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(69)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(70)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(71)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(72)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(73)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(74)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(75)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(76)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(77)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(78)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(79)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(80)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(81)*pol_z(:,1,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(82)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(83)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(84)*pol_z(:,1,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(85)*pol_z(:,1,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(86)*pol_z(:,1,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(87)*pol_z(:,1,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(88)*pol_z(:,1,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(89)*pol_z(:,1,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(90)*pol_z(:,1,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(91)*pol_z(:,1,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(92)*pol_z(:,1,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(93)*pol_z(:,1,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(94)*pol_z(:,1,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(95)*pol_z(:,1,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(96)*pol_z(:,1,kg) - coef_xy(:,48)=coef_xy(:,48)+coef_xyz(97)*pol_z(:,1,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(98)*pol_z(:,1,kg) - coef_xy(:,51)=coef_xy(:,51)+coef_xyz(99)*pol_z(:,1,kg) - coef_xy(:,53)=coef_xy(:,53)+coef_xyz(100)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(101)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(102)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(103)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(104)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(105)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(106)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(107)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(108)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(109)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(110)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(111)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(112)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(113)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(114)*pol_z(:,2,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(115)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(116)*pol_z(:,2,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(117)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(118)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(119)*pol_z(:,2,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(120)*pol_z(:,2,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(121)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(122)*pol_z(:,2,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(123)*pol_z(:,2,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(124)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(125)*pol_z(:,2,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(126)*pol_z(:,2,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(127)*pol_z(:,2,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(128)*pol_z(:,2,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(129)*pol_z(:,2,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(130)*pol_z(:,2,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(131)*pol_z(:,2,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(132)*pol_z(:,2,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(133)*pol_z(:,2,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(134)*pol_z(:,2,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(135)*pol_z(:,2,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(136)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(137)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(138)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(139)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(140)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(141)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(142)*pol_z(:,3,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(143)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(144)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(145)*pol_z(:,3,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(146)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(147)*pol_z(:,3,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(148)*pol_z(:,3,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(149)*pol_z(:,3,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(150)*pol_z(:,3,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(151)*pol_z(:,3,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(152)*pol_z(:,3,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(153)*pol_z(:,3,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(154)*pol_z(:,3,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(155)*pol_z(:,3,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(156)*pol_z(:,3,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(157)*pol_z(:,3,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(158)*pol_z(:,3,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(159)*pol_z(:,3,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(160)*pol_z(:,3,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(161)*pol_z(:,3,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(162)*pol_z(:,3,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(163)*pol_z(:,3,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(164)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(165)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(166)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(167)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(168)*pol_z(:,4,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(169)*pol_z(:,4,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(170)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(171)*pol_z(:,4,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(172)*pol_z(:,4,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(173)*pol_z(:,4,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(174)*pol_z(:,4,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(175)*pol_z(:,4,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(176)*pol_z(:,4,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(177)*pol_z(:,4,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(178)*pol_z(:,4,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(179)*pol_z(:,4,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(180)*pol_z(:,4,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(181)*pol_z(:,4,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(182)*pol_z(:,4,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(183)*pol_z(:,4,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(184)*pol_z(:,4,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(185)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(186)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(187)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(188)*pol_z(:,5,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(189)*pol_z(:,5,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(190)*pol_z(:,5,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(191)*pol_z(:,5,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(192)*pol_z(:,5,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(193)*pol_z(:,5,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(194)*pol_z(:,5,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(195)*pol_z(:,5,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(196)*pol_z(:,5,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(197)*pol_z(:,5,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(198)*pol_z(:,5,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(199)*pol_z(:,5,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(200)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(201)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(202)*pol_z(:,6,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(203)*pol_z(:,6,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(204)*pol_z(:,6,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(205)*pol_z(:,6,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(206)*pol_z(:,6,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(207)*pol_z(:,6,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(208)*pol_z(:,6,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(209)*pol_z(:,6,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(210)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(211)*pol_z(:,7,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(212)*pol_z(:,7,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(213)*pol_z(:,7,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(214)*pol_z(:,7,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(215)*pol_z(:,7,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(216)*pol_z(:,7,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(217)*pol_z(:,8,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(218)*pol_z(:,8,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(219)*pol_z(:,8,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(220)*pol_z(:,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,9)*pol_y(1,0,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,9)*pol_y(2,0,jg) - coef_x(1:2,9)=coef_x(1:2,9)+coef_xy(1:2,10)*pol_y(1,0,jg) - coef_x(3:4,9)=coef_x(3:4,9)+coef_xy(1:2,10)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,16)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,16)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,17)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,17)*pol_y(2,1,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,18)*pol_y(1,1,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,18)*pol_y(2,1,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,19)*pol_y(1,1,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,19)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,22)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,22)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,23)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,23)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,24)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,24)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,25)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,25)*pol_y(2,2,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,26)*pol_y(1,2,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,26)*pol_y(2,2,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,27)*pol_y(1,2,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,27)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,28)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,28)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,29)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,29)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,30)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,30)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,31)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,31)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,32)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,32)*pol_y(2,3,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,33)*pol_y(1,3,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,33)*pol_y(2,3,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,34)*pol_y(1,3,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,34)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,35)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,35)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,36)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,36)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,37)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,37)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,38)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,38)*pol_y(2,4,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,39)*pol_y(1,4,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,39)*pol_y(2,4,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,40)*pol_y(1,4,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,40)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,41)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,41)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,42)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,42)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,43)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,43)*pol_y(2,5,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,44)*pol_y(1,5,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,44)*pol_y(2,5,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,45)*pol_y(1,5,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,45)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,46)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,46)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,47)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,47)*pol_y(2,6,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,48)*pol_y(1,6,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,48)*pol_y(2,6,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,49)*pol_y(1,6,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,49)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,50)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,50)*pol_y(2,7,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,51)*pol_y(1,7,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,51)*pol_y(2,7,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,52)*pol_y(1,7,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,52)*pol_y(2,7,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,53)*pol_y(1,8,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,53)*pol_y(2,8,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,54)*pol_y(1,8,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,54)*pol_y(2,8,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,55)*pol_y(1,9,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - s01=s01+coef_x(1,9)*pol_x(9,ig) - s02=s02+coef_x(2,9)*pol_x(9,ig) - s03=s03+coef_x(3,9)*pol_x(9,ig) - s04=s04+coef_x(4,9)*pol_x(9,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(37)*pol_z(:, 0, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(38)*pol_z(:, 0, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(39)*pol_z(:, 0, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(40)*pol_z(:, 0, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(41)*pol_z(:, 0, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(42)*pol_z(:, 0, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(43)*pol_z(:, 0, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(44)*pol_z(:, 0, kg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_xyz(45)*pol_z(:, 0, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(46)*pol_z(:, 0, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(47)*pol_z(:, 0, kg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_xyz(48)*pol_z(:, 0, kg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_xyz(49)*pol_z(:, 0, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(50)*pol_z(:, 0, kg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_xyz(51)*pol_z(:, 0, kg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_xyz(52)*pol_z(:, 0, kg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_xyz(53)*pol_z(:, 0, kg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_xyz(54)*pol_z(:, 0, kg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_xyz(55)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(65)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(66)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(67)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(68)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(69)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(70)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(71)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(72)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(73)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(74)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(75)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(76)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(77)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(78)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(79)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(80)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(81)*pol_z(:, 1, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(82)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(83)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(84)*pol_z(:, 1, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(85)*pol_z(:, 1, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(86)*pol_z(:, 1, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(87)*pol_z(:, 1, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(88)*pol_z(:, 1, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(89)*pol_z(:, 1, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(90)*pol_z(:, 1, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(91)*pol_z(:, 1, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(92)*pol_z(:, 1, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(93)*pol_z(:, 1, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(94)*pol_z(:, 1, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(95)*pol_z(:, 1, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(96)*pol_z(:, 1, kg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_xyz(97)*pol_z(:, 1, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(98)*pol_z(:, 1, kg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_xyz(99)*pol_z(:, 1, kg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_xyz(100)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(101)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(102)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(103)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(104)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(105)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(106)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(107)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(108)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(109)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(110)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(111)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(112)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(113)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(114)*pol_z(:, 2, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(115)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(116)*pol_z(:, 2, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(117)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(118)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(119)*pol_z(:, 2, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(120)*pol_z(:, 2, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(121)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(122)*pol_z(:, 2, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(123)*pol_z(:, 2, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(124)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(125)*pol_z(:, 2, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(126)*pol_z(:, 2, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(127)*pol_z(:, 2, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(128)*pol_z(:, 2, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(129)*pol_z(:, 2, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(130)*pol_z(:, 2, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(131)*pol_z(:, 2, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(132)*pol_z(:, 2, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(133)*pol_z(:, 2, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(134)*pol_z(:, 2, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(135)*pol_z(:, 2, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(136)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(137)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(138)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(139)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(140)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(141)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(142)*pol_z(:, 3, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(143)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(144)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(145)*pol_z(:, 3, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(146)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(147)*pol_z(:, 3, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(148)*pol_z(:, 3, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(149)*pol_z(:, 3, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(150)*pol_z(:, 3, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(151)*pol_z(:, 3, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(152)*pol_z(:, 3, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(153)*pol_z(:, 3, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(154)*pol_z(:, 3, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(155)*pol_z(:, 3, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(156)*pol_z(:, 3, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(157)*pol_z(:, 3, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(158)*pol_z(:, 3, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(159)*pol_z(:, 3, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(160)*pol_z(:, 3, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(161)*pol_z(:, 3, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(162)*pol_z(:, 3, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(163)*pol_z(:, 3, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(164)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(165)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(166)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(167)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(168)*pol_z(:, 4, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(169)*pol_z(:, 4, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(170)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(171)*pol_z(:, 4, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(172)*pol_z(:, 4, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(173)*pol_z(:, 4, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(174)*pol_z(:, 4, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(175)*pol_z(:, 4, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(176)*pol_z(:, 4, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(177)*pol_z(:, 4, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(178)*pol_z(:, 4, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(179)*pol_z(:, 4, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(180)*pol_z(:, 4, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(181)*pol_z(:, 4, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(182)*pol_z(:, 4, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(183)*pol_z(:, 4, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(184)*pol_z(:, 4, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(185)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(186)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(187)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(188)*pol_z(:, 5, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(189)*pol_z(:, 5, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(190)*pol_z(:, 5, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(191)*pol_z(:, 5, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(192)*pol_z(:, 5, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(193)*pol_z(:, 5, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(194)*pol_z(:, 5, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(195)*pol_z(:, 5, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(196)*pol_z(:, 5, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(197)*pol_z(:, 5, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(198)*pol_z(:, 5, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(199)*pol_z(:, 5, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(200)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(201)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(202)*pol_z(:, 6, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(203)*pol_z(:, 6, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(204)*pol_z(:, 6, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(205)*pol_z(:, 6, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(206)*pol_z(:, 6, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(207)*pol_z(:, 6, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(208)*pol_z(:, 6, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(209)*pol_z(:, 6, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(210)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(211)*pol_z(:, 7, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(212)*pol_z(:, 7, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(213)*pol_z(:, 7, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(214)*pol_z(:, 7, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(215)*pol_z(:, 7, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(216)*pol_z(:, 7, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(217)*pol_z(:, 8, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(218)*pol_z(:, 8, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(219)*pol_z(:, 8, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(220)*pol_z(:, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 9)*pol_y(1, 0, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 9)*pol_y(2, 0, jg) + coef_x(1:2, 9) = coef_x(1:2, 9)+coef_xy(1:2, 10)*pol_y(1, 0, jg) + coef_x(3:4, 9) = coef_x(3:4, 9)+coef_xy(1:2, 10)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 16)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 16)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 17)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 17)*pol_y(2, 1, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 18)*pol_y(1, 1, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 18)*pol_y(2, 1, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 19)*pol_y(1, 1, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 19)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 22)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 22)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 23)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 23)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 24)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 24)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 25)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 25)*pol_y(2, 2, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 26)*pol_y(1, 2, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 26)*pol_y(2, 2, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 27)*pol_y(1, 2, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 27)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 28)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 28)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 29)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 29)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 30)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 30)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 31)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 31)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 32)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 32)*pol_y(2, 3, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 33)*pol_y(1, 3, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 33)*pol_y(2, 3, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 34)*pol_y(1, 3, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 34)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 35)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 35)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 36)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 36)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 37)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 37)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 38)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 38)*pol_y(2, 4, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 39)*pol_y(1, 4, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 39)*pol_y(2, 4, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 40)*pol_y(1, 4, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 40)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 41)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 41)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 42)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 42)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 43)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 43)*pol_y(2, 5, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 44)*pol_y(1, 5, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 44)*pol_y(2, 5, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 45)*pol_y(1, 5, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 45)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 46)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 46)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 47)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 47)*pol_y(2, 6, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 48)*pol_y(1, 6, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 48)*pol_y(2, 6, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 49)*pol_y(1, 6, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 49)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 50)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 50)*pol_y(2, 7, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 51)*pol_y(1, 7, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 51)*pol_y(2, 7, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 52)*pol_y(1, 7, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 52)*pol_y(2, 7, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 53)*pol_y(1, 8, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 53)*pol_y(2, 8, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 54)*pol_y(1, 8, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 54)*pol_y(2, 8, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 55)*pol_y(1, 9, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + s01 = s01+coef_x(1, 9)*pol_x(9, ig) + s02 = s02+coef_x(2, 9)*pol_x(9, ig) + s03 = s03+coef_x(3, 9)*pol_x(9, ig) + s04 = s04+coef_x(4, 9)*pol_x(9, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/collocate_fast_3.f90 b/src/grid/collocate_fast_3.f90 index 0c8c8a8da9..6a27f744f2 100644 --- a/src/grid/collocate_fast_3.f90 +++ b/src/grid/collocate_fast_3.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,72 +111,72 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -191,84 +191,84 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_xyz(lxyz)*pol_z(:,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_xyz(lxyz)*pol_z(:, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -283,100 +283,100 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(7)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(7)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(8)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(8)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(9)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(9)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(10)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(10)*pol_z(2,2,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,4)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,4)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,6)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,6)*pol_y(2,2,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(7)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(7)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(8)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(8)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(9)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(9)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(10)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(10)*pol_z(2, 2, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 4)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 4)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 6)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 6)*pol_y(2, 2, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -391,102 +391,102 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(11)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(12)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(13)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(14)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(15)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(16)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(17)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(18)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(19)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(20)*pol_z(:,3,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(11)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(12)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(13)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(14)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(15)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(16)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(17)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(18)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(19)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(20)*pol_z(:, 3, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -501,149 +501,149 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,13)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,13)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,13)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,13)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,14)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,14)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,14)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,14)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,15)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,15)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,15)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 13)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 13)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 13)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 13)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 14)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 14)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 14)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 14)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 15)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 15)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 15)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -658,135 +658,135 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,13)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,13)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,21)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 13)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 13)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 21)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -801,280 +801,280 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(29)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(30)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(31)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(32)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(33)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(34)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(35)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(36)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(37)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(38)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(39)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(40)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(41)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(42)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(43)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(44)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(45)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(50)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(51)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(52)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(53)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(54)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(55)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(56)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(57)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(58)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(59)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(60)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(61)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(62)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(63)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(64)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(65)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(66)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(67)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(68)*pol_z(:,3,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(69)*pol_z(:,3,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(70)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(71)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(72)*pol_z(:,3,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(73)*pol_z(:,3,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(74)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(75)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(76)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(77)*pol_z(:,4,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(78)*pol_z(:,4,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(79)*pol_z(:,4,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(80)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(81)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(82)*pol_z(:,5,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(83)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(84)*pol_z(:,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,14)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,14)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,14)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,14)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,15)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,15)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,15)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,15)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,19)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,19)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,19)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,19)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,20)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,20)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,20)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,20)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,21)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,21)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,21)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,21)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,23)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,23)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,23)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,23)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,24)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,24)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,24)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,24)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,25)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,25)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,25)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,25)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,26)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,26)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,26)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,26)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,27)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,27)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,27)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,27)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,6,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(29)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(30)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(31)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(32)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(33)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(34)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(35)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(36)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(37)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(38)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(39)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(40)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(41)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(42)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(43)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(44)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(45)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(50)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(51)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(52)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(53)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(54)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(55)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(56)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(57)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(58)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(59)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(60)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(61)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(62)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(63)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(64)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(65)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(66)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(67)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(68)*pol_z(:, 3, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(69)*pol_z(:, 3, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(70)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(71)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(72)*pol_z(:, 3, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(73)*pol_z(:, 3, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(74)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(75)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(76)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(77)*pol_z(:, 4, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(78)*pol_z(:, 4, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(79)*pol_z(:, 4, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(80)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(81)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(82)*pol_z(:, 5, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(83)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(84)*pol_z(:, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 14)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 14)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 14)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 14)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 15)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 15)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 15)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 15)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 19)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 19)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 19)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 19)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 20)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 20)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 20)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 20)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 21)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 21)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 21)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 21)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 23)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 23)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 23)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 23)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 24)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 24)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 24)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 24)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 25)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 25)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 25)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 25)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 26)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 26)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 26)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 26)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 27)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 27)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 27)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 27)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 6, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1089,472 +1089,472 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(69)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(69)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(70)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(70)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(71)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(71)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(72)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(72)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(73)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(73)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(74)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(74)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(75)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(75)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(76)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(76)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(77)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(77)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(78)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(78)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(79)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(79)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(80)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(80)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(81)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(81)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(86)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(86)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(87)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(87)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(88)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(88)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(89)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(89)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(90)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(90)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(91)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(91)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(92)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(92)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(93)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(93)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(94)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(94)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(95)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(95)*pol_z(2,3,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(96)*pol_z(1,3,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(96)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(97)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(97)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(98)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(98)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(99)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(99)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(100)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(100)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(105)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(105)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(106)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(106)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(107)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(107)*pol_z(2,4,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(108)*pol_z(1,4,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(108)*pol_z(2,4,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(109)*pol_z(1,4,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(109)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(110)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(110)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(111)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(111)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(112)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(112)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(113)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(113)*pol_z(2,5,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(114)*pol_z(1,5,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(114)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(115)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(115)*pol_z(2,5,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(116)*pol_z(1,5,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(116)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(117)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(117)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(118)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(118)*pol_z(2,6,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(119)*pol_z(1,6,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(119)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(120)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(120)*pol_z(2,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,23)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,23)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,23)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,23)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,24)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,24)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,24)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,24)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,27)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,27)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,27)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,27)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,28)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,28)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,28)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,28)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,29)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,29)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,29)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,29)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,30)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,30)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,30)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,30)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,34)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,34)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,34)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,34)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,35)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,35)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,35)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,35)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(69)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(69)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(70)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(70)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(71)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(71)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(72)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(72)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(73)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(73)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(74)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(74)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(75)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(75)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(76)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(76)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(77)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(77)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(78)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(78)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(79)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(79)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(80)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(80)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(81)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(81)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(86)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(86)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(87)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(87)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(88)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(88)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(89)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(89)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(90)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(90)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(91)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(91)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(92)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(92)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(93)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(93)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(94)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(94)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(95)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(95)*pol_z(2, 3, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(96)*pol_z(1, 3, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(96)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(97)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(97)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(98)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(98)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(99)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(99)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(100)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(100)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(105)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(105)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(106)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(106)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(107)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(107)*pol_z(2, 4, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(108)*pol_z(1, 4, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(108)*pol_z(2, 4, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(109)*pol_z(1, 4, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(109)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(110)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(110)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(111)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(111)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(112)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(112)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(113)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(113)*pol_z(2, 5, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(114)*pol_z(1, 5, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(114)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(115)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(115)*pol_z(2, 5, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(116)*pol_z(1, 5, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(116)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(117)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(117)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(118)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(118)*pol_z(2, 6, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(119)*pol_z(1, 6, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(119)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(120)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(120)*pol_z(2, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 23)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 23)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 23)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 23)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 24)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 24)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 24)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 24)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 27)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 27)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 27)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 27)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 28)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 28)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 28)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 28)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 29)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 29)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 29)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 29)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 30)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 30)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 30)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 30)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 34)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 34)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 34)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 34)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 35)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 35)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 35)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 35)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1569,602 +1569,602 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(86)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(86)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(87)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(87)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(88)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(88)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(89)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(89)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(90)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(90)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(91)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(91)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(92)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(92)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(93)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(93)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(94)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(94)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(95)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(95)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(96)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(96)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(97)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(97)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(98)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(98)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(99)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(99)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(100)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(100)*pol_z(2,2,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(110)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(110)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(111)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(111)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(112)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(112)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(113)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(113)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(114)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(114)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(115)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(115)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(116)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(116)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(117)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(117)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(118)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(118)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(119)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(119)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(120)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(120)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(121)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(121)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(122)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(122)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(123)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(123)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(124)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(124)*pol_z(2,3,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(125)*pol_z(1,3,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(125)*pol_z(2,3,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(126)*pol_z(1,3,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(126)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(127)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(127)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(128)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(128)*pol_z(2,3,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(129)*pol_z(1,3,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(129)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(130)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(130)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(131)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(131)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(132)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(132)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(133)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(133)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(134)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(134)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(135)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(135)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(136)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(136)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(137)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(137)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(138)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(138)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(139)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(139)*pol_z(2,4,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(140)*pol_z(1,4,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(140)*pol_z(2,4,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(141)*pol_z(1,4,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(141)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(142)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(142)*pol_z(2,4,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(143)*pol_z(1,4,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(143)*pol_z(2,4,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(144)*pol_z(1,4,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(144)*pol_z(2,4,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(145)*pol_z(1,4,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(145)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(146)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(146)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(147)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(147)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(148)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(148)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(149)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(149)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(150)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(150)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(151)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(151)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(152)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(152)*pol_z(2,5,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(153)*pol_z(1,5,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(153)*pol_z(2,5,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(154)*pol_z(1,5,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(154)*pol_z(2,5,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(155)*pol_z(1,5,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(155)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(156)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(156)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(157)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(157)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(158)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(158)*pol_z(2,6,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(159)*pol_z(1,6,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(159)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(160)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(160)*pol_z(2,6,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(161)*pol_z(1,6,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(161)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(162)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(162)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(163)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(163)*pol_z(2,7,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(164)*pol_z(1,7,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(164)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,27)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,27)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,27)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,27)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,34)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,34)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,34)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,34)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,37)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,37)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,37)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,37)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,38)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,38)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,38)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,38)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,39)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,39)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,39)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,39)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,40)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,40)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,40)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,40)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,41)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,41)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,41)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,41)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,42)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,42)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,42)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,42)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,43)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,43)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,43)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,43)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,44)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,44)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,44)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,44)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,45)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,45)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,45)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(86)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(86)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(87)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(87)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(88)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(88)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(89)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(89)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(90)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(90)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(91)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(91)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(92)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(92)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(93)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(93)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(94)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(94)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(95)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(95)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(96)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(96)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(97)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(97)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(98)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(98)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(99)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(99)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(100)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(100)*pol_z(2, 2, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(110)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(110)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(111)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(111)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(112)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(112)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(113)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(113)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(114)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(114)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(115)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(115)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(116)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(116)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(117)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(117)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(118)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(118)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(119)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(119)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(120)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(120)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(121)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(121)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(122)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(122)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(123)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(123)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(124)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(124)*pol_z(2, 3, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(125)*pol_z(1, 3, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(125)*pol_z(2, 3, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(126)*pol_z(1, 3, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(126)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(127)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(127)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(128)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(128)*pol_z(2, 3, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(129)*pol_z(1, 3, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(129)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(130)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(130)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(131)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(131)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(132)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(132)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(133)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(133)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(134)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(134)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(135)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(135)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(136)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(136)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(137)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(137)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(138)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(138)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(139)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(139)*pol_z(2, 4, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(140)*pol_z(1, 4, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(140)*pol_z(2, 4, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(141)*pol_z(1, 4, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(141)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(142)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(142)*pol_z(2, 4, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(143)*pol_z(1, 4, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(143)*pol_z(2, 4, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(144)*pol_z(1, 4, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(144)*pol_z(2, 4, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(145)*pol_z(1, 4, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(145)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(146)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(146)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(147)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(147)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(148)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(148)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(149)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(149)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(150)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(150)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(151)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(151)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(152)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(152)*pol_z(2, 5, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(153)*pol_z(1, 5, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(153)*pol_z(2, 5, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(154)*pol_z(1, 5, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(154)*pol_z(2, 5, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(155)*pol_z(1, 5, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(155)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(156)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(156)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(157)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(157)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(158)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(158)*pol_z(2, 6, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(159)*pol_z(1, 6, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(159)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(160)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(160)*pol_z(2, 6, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(161)*pol_z(1, 6, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(161)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(162)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(162)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(163)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(163)*pol_z(2, 7, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(164)*pol_z(1, 7, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(164)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 27)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 27)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 27)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 27)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 34)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 34)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 34)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 34)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 37)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 37)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 37)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 37)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 38)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 38)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 38)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 38)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 39)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 39)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 39)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 39)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 40)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 40)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 40)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 40)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 41)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 41)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 41)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 41)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 42)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 42)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 42)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 42)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 43)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 43)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 43)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 43)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 44)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 44)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 44)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 44)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 45)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 45)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 45)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -2179,755 +2179,755 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(46)*pol_z(1,0,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(46)*pol_z(2,0,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(47)*pol_z(1,0,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(47)*pol_z(2,0,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(48)*pol_z(1,0,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(48)*pol_z(2,0,kg) - coef_xy(1,49)=coef_xy(1,49)+coef_xyz(49)*pol_z(1,0,kg) - coef_xy(2,49)=coef_xy(2,49)+coef_xyz(49)*pol_z(2,0,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(50)*pol_z(1,0,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(50)*pol_z(2,0,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(51)*pol_z(1,0,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(51)*pol_z(2,0,kg) - coef_xy(1,52)=coef_xy(1,52)+coef_xyz(52)*pol_z(1,0,kg) - coef_xy(2,52)=coef_xy(2,52)+coef_xyz(52)*pol_z(2,0,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(53)*pol_z(1,0,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(53)*pol_z(2,0,kg) - coef_xy(1,54)=coef_xy(1,54)+coef_xyz(54)*pol_z(1,0,kg) - coef_xy(2,54)=coef_xy(2,54)+coef_xyz(54)*pol_z(2,0,kg) - coef_xy(1,55)=coef_xy(1,55)+coef_xyz(55)*pol_z(1,0,kg) - coef_xy(2,55)=coef_xy(2,55)+coef_xyz(55)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(82)*pol_z(1,1,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(82)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(83)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(83)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(84)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(84)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(85)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(85)*pol_z(2,1,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(86)*pol_z(1,1,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(86)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(87)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(87)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(88)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(88)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(89)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(89)*pol_z(2,1,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(90)*pol_z(1,1,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(90)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(91)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(91)*pol_z(2,1,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(92)*pol_z(1,1,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(92)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(93)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(93)*pol_z(2,1,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(94)*pol_z(1,1,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(94)*pol_z(2,1,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(95)*pol_z(1,1,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(95)*pol_z(2,1,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(96)*pol_z(1,1,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(96)*pol_z(2,1,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(97)*pol_z(1,1,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(97)*pol_z(2,1,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(98)*pol_z(1,1,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(98)*pol_z(2,1,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(99)*pol_z(1,1,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(99)*pol_z(2,1,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(100)*pol_z(1,1,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(100)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(110)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(110)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(111)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(111)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(112)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(112)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(113)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(113)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(114)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(114)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(115)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(115)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(116)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(116)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(117)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(117)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(118)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(118)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(119)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(119)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(120)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(120)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(121)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(121)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(122)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(122)*pol_z(2,2,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(123)*pol_z(1,2,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(123)*pol_z(2,2,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(124)*pol_z(1,2,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(124)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(125)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(125)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(126)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(126)*pol_z(2,2,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(127)*pol_z(1,2,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(127)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(128)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(128)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(129)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(129)*pol_z(2,2,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(130)*pol_z(1,2,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(130)*pol_z(2,2,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(131)*pol_z(1,2,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(131)*pol_z(2,2,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(132)*pol_z(1,2,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(132)*pol_z(2,2,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(133)*pol_z(1,2,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(133)*pol_z(2,2,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(134)*pol_z(1,2,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(134)*pol_z(2,2,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(135)*pol_z(1,2,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(135)*pol_z(2,2,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(136)*pol_z(1,2,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(136)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(137)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(137)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(138)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(138)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(139)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(139)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(140)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(140)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(141)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(141)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(142)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(142)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(143)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(143)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(144)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(144)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(145)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(145)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(146)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(146)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(147)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(147)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(148)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(148)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(149)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(149)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(150)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(150)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(151)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(151)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(152)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(152)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(153)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(153)*pol_z(2,3,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(154)*pol_z(1,3,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(154)*pol_z(2,3,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(155)*pol_z(1,3,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(155)*pol_z(2,3,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(156)*pol_z(1,3,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(156)*pol_z(2,3,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(157)*pol_z(1,3,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(157)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(158)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(158)*pol_z(2,3,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(159)*pol_z(1,3,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(159)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(160)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(160)*pol_z(2,3,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(161)*pol_z(1,3,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(161)*pol_z(2,3,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(162)*pol_z(1,3,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(162)*pol_z(2,3,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(163)*pol_z(1,3,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(163)*pol_z(2,3,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(164)*pol_z(1,3,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(164)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(166)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(166)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(167)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(167)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(168)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(168)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(169)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(169)*pol_z(2,4,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(170)*pol_z(1,4,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(170)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(171)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(171)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(172)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(172)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(173)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(173)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(174)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(174)*pol_z(2,4,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(175)*pol_z(1,4,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(175)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(176)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(176)*pol_z(2,4,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(177)*pol_z(1,4,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(177)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(178)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(178)*pol_z(2,4,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(179)*pol_z(1,4,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(179)*pol_z(2,4,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(180)*pol_z(1,4,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(180)*pol_z(2,4,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(181)*pol_z(1,4,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(181)*pol_z(2,4,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(182)*pol_z(1,4,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(182)*pol_z(2,4,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(183)*pol_z(1,4,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(183)*pol_z(2,4,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(184)*pol_z(1,4,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(184)*pol_z(2,4,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(185)*pol_z(1,4,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(185)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(186)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(186)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(187)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(187)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(188)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(188)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(189)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(189)*pol_z(2,5,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(190)*pol_z(1,5,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(190)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(191)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(191)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(192)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(192)*pol_z(2,5,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(193)*pol_z(1,5,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(193)*pol_z(2,5,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(194)*pol_z(1,5,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(194)*pol_z(2,5,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(195)*pol_z(1,5,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(195)*pol_z(2,5,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(196)*pol_z(1,5,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(196)*pol_z(2,5,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(197)*pol_z(1,5,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(197)*pol_z(2,5,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(198)*pol_z(1,5,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(198)*pol_z(2,5,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(199)*pol_z(1,5,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(199)*pol_z(2,5,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(200)*pol_z(1,5,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(200)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(201)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(201)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(202)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(202)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(203)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(203)*pol_z(2,6,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(204)*pol_z(1,6,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(204)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(205)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(205)*pol_z(2,6,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(206)*pol_z(1,6,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(206)*pol_z(2,6,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(207)*pol_z(1,6,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(207)*pol_z(2,6,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(208)*pol_z(1,6,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(208)*pol_z(2,6,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(209)*pol_z(1,6,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(209)*pol_z(2,6,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(210)*pol_z(1,6,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(210)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(211)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(211)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(212)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(212)*pol_z(2,7,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(213)*pol_z(1,7,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(213)*pol_z(2,7,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(214)*pol_z(1,7,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(214)*pol_z(2,7,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(215)*pol_z(1,7,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(215)*pol_z(2,7,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(216)*pol_z(1,7,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(216)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(217)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(217)*pol_z(2,8,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(218)*pol_z(1,8,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(218)*pol_z(2,8,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(219)*pol_z(1,8,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(219)*pol_z(2,8,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(220)*pol_z(1,9,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(220)*pol_z(2,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,9)=coef_x(1,9)+coef_xy(1,10)*pol_y(1,0,jg) - coef_x(2,9)=coef_x(2,9)+coef_xy(2,10)*pol_y(1,0,jg) - coef_x(3,9)=coef_x(3,9)+coef_xy(1,10)*pol_y(2,0,jg) - coef_x(4,9)=coef_x(4,9)+coef_xy(2,10)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,18)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,18)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,18)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,18)*pol_y(2,1,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,19)*pol_y(1,1,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,19)*pol_y(1,1,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,19)*pol_y(2,1,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,19)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,25)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,25)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,25)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,25)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,26)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,26)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,26)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,26)*pol_y(2,2,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,27)*pol_y(1,2,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,27)*pol_y(1,2,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,27)*pol_y(2,2,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,27)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,31)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,31)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,31)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,31)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,32)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,32)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,32)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,32)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,33)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,33)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,33)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,33)*pol_y(2,3,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,34)*pol_y(1,3,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,34)*pol_y(1,3,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,34)*pol_y(2,3,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,34)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,36)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,36)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,36)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,36)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,37)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,37)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,37)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,37)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,38)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,38)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,38)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,38)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,39)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,39)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,39)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,39)*pol_y(2,4,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,40)*pol_y(1,4,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,40)*pol_y(1,4,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,40)*pol_y(2,4,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,40)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,41)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,41)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,41)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,41)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,42)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,42)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,42)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,42)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,43)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,43)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,43)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,43)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,44)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,44)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,44)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,44)*pol_y(2,5,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,45)*pol_y(1,5,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,45)*pol_y(1,5,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,45)*pol_y(2,5,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,45)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,46)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,46)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,46)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,46)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,47)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,47)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,47)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,47)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,48)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,48)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,48)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,48)*pol_y(2,6,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,49)*pol_y(1,6,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,49)*pol_y(1,6,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,49)*pol_y(2,6,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,49)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,50)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,50)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,50)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,50)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,51)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,51)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,51)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,51)*pol_y(2,7,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,52)*pol_y(1,7,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,52)*pol_y(1,7,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,52)*pol_y(2,7,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,52)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,53)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,53)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,53)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,53)*pol_y(2,8,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,54)*pol_y(1,8,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,54)*pol_y(1,8,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,54)*pol_y(2,8,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,54)*pol_y(2,8,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,55)*pol_y(1,9,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,55)*pol_y(1,9,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,55)*pol_y(2,9,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - s01=s01+coef_x(1,9)*pol_x(9,ig) - s02=s02+coef_x(2,9)*pol_x(9,ig) - s03=s03+coef_x(3,9)*pol_x(9,ig) - s04=s04+coef_x(4,9)*pol_x(9,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(46)*pol_z(1, 0, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(46)*pol_z(2, 0, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(47)*pol_z(1, 0, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(47)*pol_z(2, 0, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(48)*pol_z(1, 0, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(48)*pol_z(2, 0, kg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_xyz(49)*pol_z(1, 0, kg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_xyz(49)*pol_z(2, 0, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(50)*pol_z(1, 0, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(50)*pol_z(2, 0, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(51)*pol_z(1, 0, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(51)*pol_z(2, 0, kg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_xyz(52)*pol_z(1, 0, kg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_xyz(52)*pol_z(2, 0, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(53)*pol_z(1, 0, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(53)*pol_z(2, 0, kg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_xyz(54)*pol_z(1, 0, kg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_xyz(54)*pol_z(2, 0, kg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_xyz(55)*pol_z(1, 0, kg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_xyz(55)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(82)*pol_z(1, 1, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(82)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(83)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(83)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(84)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(84)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(85)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(85)*pol_z(2, 1, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(86)*pol_z(1, 1, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(86)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(87)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(87)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(88)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(88)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(89)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(89)*pol_z(2, 1, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(90)*pol_z(1, 1, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(90)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(91)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(91)*pol_z(2, 1, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(92)*pol_z(1, 1, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(92)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(93)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(93)*pol_z(2, 1, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(94)*pol_z(1, 1, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(94)*pol_z(2, 1, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(95)*pol_z(1, 1, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(95)*pol_z(2, 1, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(96)*pol_z(1, 1, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(96)*pol_z(2, 1, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(97)*pol_z(1, 1, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(97)*pol_z(2, 1, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(98)*pol_z(1, 1, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(98)*pol_z(2, 1, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(99)*pol_z(1, 1, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(99)*pol_z(2, 1, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(100)*pol_z(1, 1, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(100)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(110)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(110)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(111)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(111)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(112)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(112)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(113)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(113)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(114)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(114)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(115)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(115)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(116)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(116)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(117)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(117)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(118)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(118)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(119)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(119)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(120)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(120)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(121)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(121)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(122)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(122)*pol_z(2, 2, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(123)*pol_z(1, 2, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(123)*pol_z(2, 2, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(124)*pol_z(1, 2, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(124)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(125)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(125)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(126)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(126)*pol_z(2, 2, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(127)*pol_z(1, 2, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(127)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(128)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(128)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(129)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(129)*pol_z(2, 2, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(130)*pol_z(1, 2, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(130)*pol_z(2, 2, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(131)*pol_z(1, 2, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(131)*pol_z(2, 2, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(132)*pol_z(1, 2, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(132)*pol_z(2, 2, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(133)*pol_z(1, 2, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(133)*pol_z(2, 2, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(134)*pol_z(1, 2, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(134)*pol_z(2, 2, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(135)*pol_z(1, 2, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(135)*pol_z(2, 2, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(136)*pol_z(1, 2, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(136)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(137)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(137)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(138)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(138)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(139)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(139)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(140)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(140)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(141)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(141)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(142)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(142)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(143)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(143)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(144)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(144)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(145)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(145)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(146)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(146)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(147)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(147)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(148)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(148)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(149)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(149)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(150)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(150)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(151)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(151)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(152)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(152)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(153)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(153)*pol_z(2, 3, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(154)*pol_z(1, 3, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(154)*pol_z(2, 3, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(155)*pol_z(1, 3, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(155)*pol_z(2, 3, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(156)*pol_z(1, 3, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(156)*pol_z(2, 3, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(157)*pol_z(1, 3, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(157)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(158)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(158)*pol_z(2, 3, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(159)*pol_z(1, 3, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(159)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(160)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(160)*pol_z(2, 3, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(161)*pol_z(1, 3, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(161)*pol_z(2, 3, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(162)*pol_z(1, 3, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(162)*pol_z(2, 3, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(163)*pol_z(1, 3, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(163)*pol_z(2, 3, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(164)*pol_z(1, 3, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(164)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(166)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(166)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(167)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(167)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(168)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(168)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(169)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(169)*pol_z(2, 4, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(170)*pol_z(1, 4, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(170)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(171)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(171)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(172)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(172)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(173)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(173)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(174)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(174)*pol_z(2, 4, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(175)*pol_z(1, 4, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(175)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(176)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(176)*pol_z(2, 4, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(177)*pol_z(1, 4, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(177)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(178)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(178)*pol_z(2, 4, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(179)*pol_z(1, 4, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(179)*pol_z(2, 4, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(180)*pol_z(1, 4, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(180)*pol_z(2, 4, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(181)*pol_z(1, 4, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(181)*pol_z(2, 4, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(182)*pol_z(1, 4, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(182)*pol_z(2, 4, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(183)*pol_z(1, 4, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(183)*pol_z(2, 4, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(184)*pol_z(1, 4, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(184)*pol_z(2, 4, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(185)*pol_z(1, 4, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(185)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(186)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(186)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(187)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(187)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(188)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(188)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(189)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(189)*pol_z(2, 5, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(190)*pol_z(1, 5, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(190)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(191)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(191)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(192)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(192)*pol_z(2, 5, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(193)*pol_z(1, 5, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(193)*pol_z(2, 5, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(194)*pol_z(1, 5, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(194)*pol_z(2, 5, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(195)*pol_z(1, 5, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(195)*pol_z(2, 5, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(196)*pol_z(1, 5, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(196)*pol_z(2, 5, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(197)*pol_z(1, 5, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(197)*pol_z(2, 5, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(198)*pol_z(1, 5, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(198)*pol_z(2, 5, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(199)*pol_z(1, 5, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(199)*pol_z(2, 5, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(200)*pol_z(1, 5, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(200)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(201)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(201)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(202)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(202)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(203)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(203)*pol_z(2, 6, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(204)*pol_z(1, 6, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(204)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(205)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(205)*pol_z(2, 6, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(206)*pol_z(1, 6, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(206)*pol_z(2, 6, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(207)*pol_z(1, 6, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(207)*pol_z(2, 6, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(208)*pol_z(1, 6, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(208)*pol_z(2, 6, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(209)*pol_z(1, 6, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(209)*pol_z(2, 6, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(210)*pol_z(1, 6, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(210)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(211)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(211)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(212)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(212)*pol_z(2, 7, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(213)*pol_z(1, 7, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(213)*pol_z(2, 7, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(214)*pol_z(1, 7, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(214)*pol_z(2, 7, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(215)*pol_z(1, 7, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(215)*pol_z(2, 7, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(216)*pol_z(1, 7, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(216)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(217)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(217)*pol_z(2, 8, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(218)*pol_z(1, 8, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(218)*pol_z(2, 8, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(219)*pol_z(1, 8, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(219)*pol_z(2, 8, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(220)*pol_z(1, 9, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(220)*pol_z(2, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 9) = coef_x(1, 9)+coef_xy(1, 10)*pol_y(1, 0, jg) + coef_x(2, 9) = coef_x(2, 9)+coef_xy(2, 10)*pol_y(1, 0, jg) + coef_x(3, 9) = coef_x(3, 9)+coef_xy(1, 10)*pol_y(2, 0, jg) + coef_x(4, 9) = coef_x(4, 9)+coef_xy(2, 10)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 18)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 18)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 18)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 18)*pol_y(2, 1, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 19)*pol_y(1, 1, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 19)*pol_y(1, 1, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 19)*pol_y(2, 1, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 19)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 25)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 25)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 25)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 25)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 26)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 26)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 26)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 26)*pol_y(2, 2, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 27)*pol_y(1, 2, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 27)*pol_y(1, 2, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 27)*pol_y(2, 2, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 27)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 31)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 31)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 31)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 31)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 32)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 32)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 32)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 32)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 33)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 33)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 33)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 33)*pol_y(2, 3, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 34)*pol_y(1, 3, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 34)*pol_y(1, 3, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 34)*pol_y(2, 3, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 34)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 36)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 36)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 36)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 36)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 37)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 37)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 37)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 37)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 38)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 38)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 38)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 38)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 39)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 39)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 39)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 39)*pol_y(2, 4, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 40)*pol_y(1, 4, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 40)*pol_y(1, 4, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 40)*pol_y(2, 4, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 40)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 41)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 41)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 41)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 41)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 42)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 42)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 42)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 42)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 43)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 43)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 43)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 43)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 44)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 44)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 44)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 44)*pol_y(2, 5, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 45)*pol_y(1, 5, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 45)*pol_y(1, 5, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 45)*pol_y(2, 5, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 45)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 46)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 46)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 46)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 46)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 47)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 47)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 47)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 47)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 48)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 48)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 48)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 48)*pol_y(2, 6, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 49)*pol_y(1, 6, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 49)*pol_y(1, 6, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 49)*pol_y(2, 6, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 49)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 50)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 50)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 50)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 50)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 51)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 51)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 51)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 51)*pol_y(2, 7, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 52)*pol_y(1, 7, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 52)*pol_y(1, 7, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 52)*pol_y(2, 7, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 52)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 53)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 53)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 53)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 53)*pol_y(2, 8, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 54)*pol_y(1, 8, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 54)*pol_y(1, 8, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 54)*pol_y(2, 8, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 54)*pol_y(2, 8, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 55)*pol_y(1, 9, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 55)*pol_y(1, 9, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 55)*pol_y(2, 9, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + s01 = s01+coef_x(1, 9)*pol_x(9, ig) + s02 = s02+coef_x(2, 9)*pol_x(9, ig) + s03 = s03+coef_x(3, 9)*pol_x(9, ig) + s04 = s04+coef_x(4, 9)*pol_x(9, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/collocate_fast_4.f90 b/src/grid/collocate_fast_4.f90 index 7fc84f3581..dcf2857689 100644 --- a/src/grid/collocate_fast_4.f90 +++ b/src/grid/collocate_fast_4.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,73 +111,73 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -192,72 +192,72 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(4)*pol_z(:,1,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,3)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,3)*pol_y(2,1,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(4)*pol_z(:, 1, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 3)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 3)*pol_y(2, 1, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -272,100 +272,100 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(7)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(7)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(8)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(8)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(9)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(9)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(10)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(10)*pol_z(2,2,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,4)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,4)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,6)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,6)*pol_y(2,2,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(7)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(7)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(8)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(8)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(9)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(9)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(10)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(10)*pol_z(2, 2, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 4)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 4)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 6)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 6)*pol_y(2, 2, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -380,122 +380,122 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(11)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(12)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(13)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(14)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(15)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(16)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(17)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(18)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(19)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(20)*pol_z(:,3,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,5)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,5)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,5)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,5)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,8)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,8)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,8)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,8)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,9)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,9)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,9)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,9)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,3,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(11)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(12)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(13)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(14)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(15)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(16)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(17)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(18)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(19)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(20)*pol_z(:, 3, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 5)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 5)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 5)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 5)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 8)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 8)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 8)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 8)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 9)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 9)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 9)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 9)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 3, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -510,206 +510,206 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(16)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(16)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(17)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(17)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(18)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(18)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(19)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(19)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(20)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(20)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(21)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(21)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(26)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(26)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(27)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(27)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(28)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(28)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(29)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(29)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(30)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(30)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(31)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(31)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(32)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(32)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(33)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(33)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(35)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(35)*pol_z(2,4,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,13)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,13)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,13)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,13)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,14)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,14)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,14)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,14)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,15)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,15)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,15)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(16)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(16)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(17)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(17)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(18)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(18)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(19)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(19)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(20)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(20)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(21)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(21)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(26)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(26)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(27)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(27)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(28)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(28)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(29)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(29)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(30)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(30)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(31)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(31)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(32)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(32)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(33)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(33)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(35)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(35)*pol_z(2, 4, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 13)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 13)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 13)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 13)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 14)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 14)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 14)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 14)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 15)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 15)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 15)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -724,216 +724,216 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(26)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(26)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(27)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(27)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(28)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(28)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(41)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(41)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(42)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(42)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(43)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(43)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(44)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(44)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(45)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(45)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(46)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(46)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(47)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(47)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(48)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(48)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(49)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(49)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(50)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(50)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(51)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(51)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(52)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(52)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(53)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(53)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(54)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(54)*pol_z(2,4,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(55)*pol_z(1,4,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(55)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,5,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,13)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,13)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,21)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(26)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(26)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(27)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(27)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(28)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(28)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(41)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(41)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(42)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(42)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(43)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(43)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(44)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(44)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(45)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(45)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(46)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(46)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(47)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(47)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(48)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(48)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(49)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(49)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(50)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(50)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(51)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(51)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(52)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(52)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(53)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(53)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(54)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(54)*pol_z(2, 4, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(55)*pol_z(1, 4, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(55)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 5, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 13)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 13)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 21)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -948,258 +948,258 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(29)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(30)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(31)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(32)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(33)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(34)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(35)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(36)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(37)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(38)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(39)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(40)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(41)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(42)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(43)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(44)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(45)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(50)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(51)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(52)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(53)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(54)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(55)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(56)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(57)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(58)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(59)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(60)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(61)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(62)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(63)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(64)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(65)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(66)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(67)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(68)*pol_z(:,3,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(69)*pol_z(:,3,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(70)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(71)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(72)*pol_z(:,3,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(73)*pol_z(:,3,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(74)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(75)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(76)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(77)*pol_z(:,4,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(78)*pol_z(:,4,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(79)*pol_z(:,4,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(80)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(81)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(82)*pol_z(:,5,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(83)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(84)*pol_z(:,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,14)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,14)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,14)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,14)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,15)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,15)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,15)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,15)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,19)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,19)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,19)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,19)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,20)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,20)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,20)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,20)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,21)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,21)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,21)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,21)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,23)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,23)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,23)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,23)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,24)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,24)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,24)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,24)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,25)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,25)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,25)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,25)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,26)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,26)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,26)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,26)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,27)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,27)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,27)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,27)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,6,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(29)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(30)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(31)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(32)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(33)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(34)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(35)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(36)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(37)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(38)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(39)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(40)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(41)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(42)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(43)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(44)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(45)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(50)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(51)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(52)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(53)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(54)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(55)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(56)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(57)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(58)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(59)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(60)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(61)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(62)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(63)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(64)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(65)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(66)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(67)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(68)*pol_z(:, 3, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(69)*pol_z(:, 3, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(70)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(71)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(72)*pol_z(:, 3, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(73)*pol_z(:, 3, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(74)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(75)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(76)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(77)*pol_z(:, 4, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(78)*pol_z(:, 4, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(79)*pol_z(:, 4, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(80)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(81)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(82)*pol_z(:, 5, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(83)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(84)*pol_z(:, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 14)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 14)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 14)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 14)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 15)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 15)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 15)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 15)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 19)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 19)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 19)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 19)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 20)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 20)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 20)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 20)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 21)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 21)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 21)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 21)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 23)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 23)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 23)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 23)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 24)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 24)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 24)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 24)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 25)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 25)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 25)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 25)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 26)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 26)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 26)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 26)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 27)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 27)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 27)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 27)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 6, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1214,326 +1214,326 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(37)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(38)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(39)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(40)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(41)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(42)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(43)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(44)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(45)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(50)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(51)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(52)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(53)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(54)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(55)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(65)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(66)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(67)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(68)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(69)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(70)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(71)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(72)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(73)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(74)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(75)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(76)*pol_z(:,2,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(77)*pol_z(:,2,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(78)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(79)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(80)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(81)*pol_z(:,2,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(82)*pol_z(:,2,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(83)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(84)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(85)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(86)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(87)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(88)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(89)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(90)*pol_z(:,3,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(91)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(92)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(93)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(94)*pol_z(:,3,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(95)*pol_z(:,3,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(96)*pol_z(:,3,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(97)*pol_z(:,3,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(98)*pol_z(:,3,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(99)*pol_z(:,3,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(100)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(101)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(102)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(103)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(104)*pol_z(:,4,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(105)*pol_z(:,4,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(106)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(107)*pol_z(:,4,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(108)*pol_z(:,4,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(109)*pol_z(:,4,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(110)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(111)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(112)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(113)*pol_z(:,5,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(114)*pol_z(:,5,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(115)*pol_z(:,5,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(116)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(117)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(118)*pol_z(:,6,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(119)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(120)*pol_z(:,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,23)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,23)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,23)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,23)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,24)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,24)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,24)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,24)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,27)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,27)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,27)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,27)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,28)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,28)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,28)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,28)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,29)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,29)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,29)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,29)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,30)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,30)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,30)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,30)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,34)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,34)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,34)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,34)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,35)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,35)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,35)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,35)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(37)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(38)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(39)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(40)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(41)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(42)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(43)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(44)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(45)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(50)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(51)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(52)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(53)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(54)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(55)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(65)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(66)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(67)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(68)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(69)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(70)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(71)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(72)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(73)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(74)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(75)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(76)*pol_z(:, 2, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(77)*pol_z(:, 2, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(78)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(79)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(80)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(81)*pol_z(:, 2, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(82)*pol_z(:, 2, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(83)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(84)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(85)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(86)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(87)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(88)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(89)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(90)*pol_z(:, 3, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(91)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(92)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(93)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(94)*pol_z(:, 3, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(95)*pol_z(:, 3, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(96)*pol_z(:, 3, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(97)*pol_z(:, 3, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(98)*pol_z(:, 3, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(99)*pol_z(:, 3, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(100)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(101)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(102)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(103)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(104)*pol_z(:, 4, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(105)*pol_z(:, 4, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(106)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(107)*pol_z(:, 4, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(108)*pol_z(:, 4, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(109)*pol_z(:, 4, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(110)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(111)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(112)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(113)*pol_z(:, 5, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(114)*pol_z(:, 5, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(115)*pol_z(:, 5, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(116)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(117)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(118)*pol_z(:, 6, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(119)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(120)*pol_z(:, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 23)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 23)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 23)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 23)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 24)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 24)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 24)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 24)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 27)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 27)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 27)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 27)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 28)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 28)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 28)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 28)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 29)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 29)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 29)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 29)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 30)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 30)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 30)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 30)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 34)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 34)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 34)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 34)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 35)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 35)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 35)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 35)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1548,407 +1548,407 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(37)*pol_z(:,0,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(38)*pol_z(:,0,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(39)*pol_z(:,0,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(40)*pol_z(:,0,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(41)*pol_z(:,0,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(42)*pol_z(:,0,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(43)*pol_z(:,0,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(44)*pol_z(:,0,kg) - coef_xy(:,45)=coef_xy(:,45)+coef_xyz(45)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(46)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(47)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(48)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(49)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(50)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(51)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(52)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(53)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(54)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(55)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(65)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(66)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(67)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(68)*pol_z(:,1,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(69)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(70)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(71)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(72)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(73)*pol_z(:,1,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(74)*pol_z(:,1,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(75)*pol_z(:,1,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(76)*pol_z(:,1,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(77)*pol_z(:,1,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(78)*pol_z(:,1,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(79)*pol_z(:,1,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(80)*pol_z(:,1,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(81)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(82)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(83)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(84)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(85)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(86)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(87)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(88)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(89)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(90)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(91)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(92)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(93)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(94)*pol_z(:,2,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(95)*pol_z(:,2,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(96)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(97)*pol_z(:,2,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(98)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(99)*pol_z(:,2,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(100)*pol_z(:,2,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(101)*pol_z(:,2,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(102)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(103)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(104)*pol_z(:,2,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(105)*pol_z(:,2,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(106)*pol_z(:,2,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(107)*pol_z(:,2,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(108)*pol_z(:,2,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(109)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(110)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(111)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(112)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(113)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(114)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(115)*pol_z(:,3,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(116)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(117)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(118)*pol_z(:,3,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(119)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(120)*pol_z(:,3,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(121)*pol_z(:,3,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(122)*pol_z(:,3,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(123)*pol_z(:,3,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(124)*pol_z(:,3,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(125)*pol_z(:,3,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(126)*pol_z(:,3,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(127)*pol_z(:,3,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(128)*pol_z(:,3,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(129)*pol_z(:,3,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(130)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(131)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(132)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(133)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(134)*pol_z(:,4,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(135)*pol_z(:,4,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(136)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(137)*pol_z(:,4,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(138)*pol_z(:,4,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(139)*pol_z(:,4,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(140)*pol_z(:,4,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(141)*pol_z(:,4,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(142)*pol_z(:,4,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(143)*pol_z(:,4,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(144)*pol_z(:,4,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(145)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(146)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(147)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(148)*pol_z(:,5,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(149)*pol_z(:,5,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(150)*pol_z(:,5,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(151)*pol_z(:,5,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(152)*pol_z(:,5,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(153)*pol_z(:,5,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(154)*pol_z(:,5,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(155)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(156)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(157)*pol_z(:,6,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(158)*pol_z(:,6,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(159)*pol_z(:,6,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(160)*pol_z(:,6,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(161)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(162)*pol_z(:,7,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(163)*pol_z(:,7,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(164)*pol_z(:,7,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(165)*pol_z(:,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,27)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,27)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,27)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,27)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,34)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,34)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,34)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,34)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,37)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,37)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,37)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,37)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,38)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,38)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,38)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,38)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,39)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,39)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,39)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,39)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,40)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,40)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,40)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,40)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,41)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,41)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,41)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,41)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,42)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,42)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,42)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,42)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,43)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,43)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,43)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,43)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,44)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,44)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,44)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,44)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,45)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,45)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,45)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(37)*pol_z(:, 0, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(38)*pol_z(:, 0, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(39)*pol_z(:, 0, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(40)*pol_z(:, 0, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(41)*pol_z(:, 0, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(42)*pol_z(:, 0, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(43)*pol_z(:, 0, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(44)*pol_z(:, 0, kg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_xyz(45)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(46)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(47)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(48)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(49)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(50)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(51)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(52)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(53)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(54)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(55)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(65)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(66)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(67)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(68)*pol_z(:, 1, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(69)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(70)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(71)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(72)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(73)*pol_z(:, 1, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(74)*pol_z(:, 1, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(75)*pol_z(:, 1, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(76)*pol_z(:, 1, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(77)*pol_z(:, 1, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(78)*pol_z(:, 1, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(79)*pol_z(:, 1, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(80)*pol_z(:, 1, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(81)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(82)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(83)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(84)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(85)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(86)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(87)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(88)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(89)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(90)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(91)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(92)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(93)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(94)*pol_z(:, 2, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(95)*pol_z(:, 2, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(96)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(97)*pol_z(:, 2, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(98)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(99)*pol_z(:, 2, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(100)*pol_z(:, 2, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(101)*pol_z(:, 2, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(102)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(103)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(104)*pol_z(:, 2, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(105)*pol_z(:, 2, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(106)*pol_z(:, 2, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(107)*pol_z(:, 2, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(108)*pol_z(:, 2, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(109)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(110)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(111)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(112)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(113)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(114)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(115)*pol_z(:, 3, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(116)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(117)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(118)*pol_z(:, 3, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(119)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(120)*pol_z(:, 3, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(121)*pol_z(:, 3, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(122)*pol_z(:, 3, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(123)*pol_z(:, 3, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(124)*pol_z(:, 3, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(125)*pol_z(:, 3, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(126)*pol_z(:, 3, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(127)*pol_z(:, 3, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(128)*pol_z(:, 3, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(129)*pol_z(:, 3, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(130)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(131)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(132)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(133)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(134)*pol_z(:, 4, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(135)*pol_z(:, 4, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(136)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(137)*pol_z(:, 4, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(138)*pol_z(:, 4, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(139)*pol_z(:, 4, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(140)*pol_z(:, 4, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(141)*pol_z(:, 4, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(142)*pol_z(:, 4, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(143)*pol_z(:, 4, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(144)*pol_z(:, 4, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(145)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(146)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(147)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(148)*pol_z(:, 5, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(149)*pol_z(:, 5, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(150)*pol_z(:, 5, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(151)*pol_z(:, 5, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(152)*pol_z(:, 5, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(153)*pol_z(:, 5, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(154)*pol_z(:, 5, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(155)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(156)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(157)*pol_z(:, 6, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(158)*pol_z(:, 6, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(159)*pol_z(:, 6, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(160)*pol_z(:, 6, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(161)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(162)*pol_z(:, 7, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(163)*pol_z(:, 7, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(164)*pol_z(:, 7, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(165)*pol_z(:, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 27)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 27)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 27)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 27)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 34)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 34)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 34)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 34)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 37)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 37)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 37)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 37)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 38)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 38)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 38)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 38)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 39)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 39)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 39)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 39)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 40)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 40)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 40)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 40)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 41)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 41)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 41)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 41)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 42)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 42)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 42)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 42)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 43)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 43)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 43)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 43)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 44)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 44)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 44)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 44)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 45)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 45)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 45)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -1963,501 +1963,501 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(22)*pol_z(:,0,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(23)*pol_z(:,0,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(24)*pol_z(:,0,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(25)*pol_z(:,0,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(26)*pol_z(:,0,kg) - coef_xy(:,27)=coef_xy(:,27)+coef_xyz(27)*pol_z(:,0,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(28)*pol_z(:,0,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(29)*pol_z(:,0,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(30)*pol_z(:,0,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(31)*pol_z(:,0,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(32)*pol_z(:,0,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(33)*pol_z(:,0,kg) - coef_xy(:,34)=coef_xy(:,34)+coef_xyz(34)*pol_z(:,0,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(35)*pol_z(:,0,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(36)*pol_z(:,0,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(37)*pol_z(:,0,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(38)*pol_z(:,0,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(39)*pol_z(:,0,kg) - coef_xy(:,40)=coef_xy(:,40)+coef_xyz(40)*pol_z(:,0,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(41)*pol_z(:,0,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(42)*pol_z(:,0,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(43)*pol_z(:,0,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(44)*pol_z(:,0,kg) - coef_xy(:,45)=coef_xy(:,45)+coef_xyz(45)*pol_z(:,0,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(46)*pol_z(:,0,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(47)*pol_z(:,0,kg) - coef_xy(:,48)=coef_xy(:,48)+coef_xyz(48)*pol_z(:,0,kg) - coef_xy(:,49)=coef_xy(:,49)+coef_xyz(49)*pol_z(:,0,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(50)*pol_z(:,0,kg) - coef_xy(:,51)=coef_xy(:,51)+coef_xyz(51)*pol_z(:,0,kg) - coef_xy(:,52)=coef_xy(:,52)+coef_xyz(52)*pol_z(:,0,kg) - coef_xy(:,53)=coef_xy(:,53)+coef_xyz(53)*pol_z(:,0,kg) - coef_xy(:,54)=coef_xy(:,54)+coef_xyz(54)*pol_z(:,0,kg) - coef_xy(:,55)=coef_xy(:,55)+coef_xyz(55)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(56)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(57)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(58)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(59)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(60)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(61)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(62)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(63)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(64)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(65)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(66)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(67)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(68)*pol_z(:,1,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(69)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(70)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(71)*pol_z(:,1,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(72)*pol_z(:,1,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(73)*pol_z(:,1,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(74)*pol_z(:,1,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(75)*pol_z(:,1,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(76)*pol_z(:,1,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(77)*pol_z(:,1,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(78)*pol_z(:,1,kg) - coef_xy(:,26)=coef_xy(:,26)+coef_xyz(79)*pol_z(:,1,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(80)*pol_z(:,1,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(81)*pol_z(:,1,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(82)*pol_z(:,1,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(83)*pol_z(:,1,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(84)*pol_z(:,1,kg) - coef_xy(:,33)=coef_xy(:,33)+coef_xyz(85)*pol_z(:,1,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(86)*pol_z(:,1,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(87)*pol_z(:,1,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(88)*pol_z(:,1,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(89)*pol_z(:,1,kg) - coef_xy(:,39)=coef_xy(:,39)+coef_xyz(90)*pol_z(:,1,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(91)*pol_z(:,1,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(92)*pol_z(:,1,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(93)*pol_z(:,1,kg) - coef_xy(:,44)=coef_xy(:,44)+coef_xyz(94)*pol_z(:,1,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(95)*pol_z(:,1,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(96)*pol_z(:,1,kg) - coef_xy(:,48)=coef_xy(:,48)+coef_xyz(97)*pol_z(:,1,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(98)*pol_z(:,1,kg) - coef_xy(:,51)=coef_xy(:,51)+coef_xyz(99)*pol_z(:,1,kg) - coef_xy(:,53)=coef_xy(:,53)+coef_xyz(100)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(101)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(102)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(103)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(104)*pol_z(:,2,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(105)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(106)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(107)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(108)*pol_z(:,2,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(109)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(110)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(111)*pol_z(:,2,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(112)*pol_z(:,2,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(113)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(114)*pol_z(:,2,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(115)*pol_z(:,2,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(116)*pol_z(:,2,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(117)*pol_z(:,2,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(118)*pol_z(:,2,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(119)*pol_z(:,2,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(120)*pol_z(:,2,kg) - coef_xy(:,25)=coef_xy(:,25)+coef_xyz(121)*pol_z(:,2,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(122)*pol_z(:,2,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(123)*pol_z(:,2,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(124)*pol_z(:,2,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(125)*pol_z(:,2,kg) - coef_xy(:,32)=coef_xy(:,32)+coef_xyz(126)*pol_z(:,2,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(127)*pol_z(:,2,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(128)*pol_z(:,2,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(129)*pol_z(:,2,kg) - coef_xy(:,38)=coef_xy(:,38)+coef_xyz(130)*pol_z(:,2,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(131)*pol_z(:,2,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(132)*pol_z(:,2,kg) - coef_xy(:,43)=coef_xy(:,43)+coef_xyz(133)*pol_z(:,2,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(134)*pol_z(:,2,kg) - coef_xy(:,47)=coef_xy(:,47)+coef_xyz(135)*pol_z(:,2,kg) - coef_xy(:,50)=coef_xy(:,50)+coef_xyz(136)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(137)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(138)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(139)*pol_z(:,3,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(140)*pol_z(:,3,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(141)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(142)*pol_z(:,3,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(143)*pol_z(:,3,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(144)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(145)*pol_z(:,3,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(146)*pol_z(:,3,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(147)*pol_z(:,3,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(148)*pol_z(:,3,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(149)*pol_z(:,3,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(150)*pol_z(:,3,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(151)*pol_z(:,3,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(152)*pol_z(:,3,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(153)*pol_z(:,3,kg) - coef_xy(:,24)=coef_xy(:,24)+coef_xyz(154)*pol_z(:,3,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(155)*pol_z(:,3,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(156)*pol_z(:,3,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(157)*pol_z(:,3,kg) - coef_xy(:,31)=coef_xy(:,31)+coef_xyz(158)*pol_z(:,3,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(159)*pol_z(:,3,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(160)*pol_z(:,3,kg) - coef_xy(:,37)=coef_xy(:,37)+coef_xyz(161)*pol_z(:,3,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(162)*pol_z(:,3,kg) - coef_xy(:,42)=coef_xy(:,42)+coef_xyz(163)*pol_z(:,3,kg) - coef_xy(:,46)=coef_xy(:,46)+coef_xyz(164)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(165)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(166)*pol_z(:,4,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(167)*pol_z(:,4,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(168)*pol_z(:,4,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(169)*pol_z(:,4,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(170)*pol_z(:,4,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(171)*pol_z(:,4,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(172)*pol_z(:,4,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(173)*pol_z(:,4,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(174)*pol_z(:,4,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(175)*pol_z(:,4,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(176)*pol_z(:,4,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(177)*pol_z(:,4,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(178)*pol_z(:,4,kg) - coef_xy(:,23)=coef_xy(:,23)+coef_xyz(179)*pol_z(:,4,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(180)*pol_z(:,4,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(181)*pol_z(:,4,kg) - coef_xy(:,30)=coef_xy(:,30)+coef_xyz(182)*pol_z(:,4,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(183)*pol_z(:,4,kg) - coef_xy(:,36)=coef_xy(:,36)+coef_xyz(184)*pol_z(:,4,kg) - coef_xy(:,41)=coef_xy(:,41)+coef_xyz(185)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(186)*pol_z(:,5,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(187)*pol_z(:,5,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(188)*pol_z(:,5,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(189)*pol_z(:,5,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(190)*pol_z(:,5,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(191)*pol_z(:,5,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(192)*pol_z(:,5,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(193)*pol_z(:,5,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(194)*pol_z(:,5,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(195)*pol_z(:,5,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(196)*pol_z(:,5,kg) - coef_xy(:,22)=coef_xy(:,22)+coef_xyz(197)*pol_z(:,5,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(198)*pol_z(:,5,kg) - coef_xy(:,29)=coef_xy(:,29)+coef_xyz(199)*pol_z(:,5,kg) - coef_xy(:,35)=coef_xy(:,35)+coef_xyz(200)*pol_z(:,5,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(201)*pol_z(:,6,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(202)*pol_z(:,6,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(203)*pol_z(:,6,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(204)*pol_z(:,6,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(205)*pol_z(:,6,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(206)*pol_z(:,6,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(207)*pol_z(:,6,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(208)*pol_z(:,6,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(209)*pol_z(:,6,kg) - coef_xy(:,28)=coef_xy(:,28)+coef_xyz(210)*pol_z(:,6,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(211)*pol_z(:,7,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(212)*pol_z(:,7,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(213)*pol_z(:,7,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(214)*pol_z(:,7,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(215)*pol_z(:,7,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(216)*pol_z(:,7,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(217)*pol_z(:,8,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(218)*pol_z(:,8,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(219)*pol_z(:,8,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(220)*pol_z(:,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,9)=coef_x(1,9)+coef_xy(1,10)*pol_y(1,0,jg) - coef_x(2,9)=coef_x(2,9)+coef_xy(2,10)*pol_y(1,0,jg) - coef_x(3,9)=coef_x(3,9)+coef_xy(1,10)*pol_y(2,0,jg) - coef_x(4,9)=coef_x(4,9)+coef_xy(2,10)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,18)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,18)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,18)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,18)*pol_y(2,1,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,19)*pol_y(1,1,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,19)*pol_y(1,1,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,19)*pol_y(2,1,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,19)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,25)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,25)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,25)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,25)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,26)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,26)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,26)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,26)*pol_y(2,2,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,27)*pol_y(1,2,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,27)*pol_y(1,2,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,27)*pol_y(2,2,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,27)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,31)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,31)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,31)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,31)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,32)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,32)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,32)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,32)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,33)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,33)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,33)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,33)*pol_y(2,3,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,34)*pol_y(1,3,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,34)*pol_y(1,3,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,34)*pol_y(2,3,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,34)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,36)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,36)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,36)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,36)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,37)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,37)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,37)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,37)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,38)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,38)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,38)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,38)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,39)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,39)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,39)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,39)*pol_y(2,4,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,40)*pol_y(1,4,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,40)*pol_y(1,4,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,40)*pol_y(2,4,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,40)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,41)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,41)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,41)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,41)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,42)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,42)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,42)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,42)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,43)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,43)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,43)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,43)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,44)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,44)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,44)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,44)*pol_y(2,5,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,45)*pol_y(1,5,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,45)*pol_y(1,5,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,45)*pol_y(2,5,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,45)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,46)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,46)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,46)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,46)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,47)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,47)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,47)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,47)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,48)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,48)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,48)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,48)*pol_y(2,6,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,49)*pol_y(1,6,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,49)*pol_y(1,6,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,49)*pol_y(2,6,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,49)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,50)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,50)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,50)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,50)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,51)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,51)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,51)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,51)*pol_y(2,7,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,52)*pol_y(1,7,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,52)*pol_y(1,7,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,52)*pol_y(2,7,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,52)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,53)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,53)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,53)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,53)*pol_y(2,8,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,54)*pol_y(1,8,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,54)*pol_y(1,8,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,54)*pol_y(2,8,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,54)*pol_y(2,8,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,55)*pol_y(1,9,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,55)*pol_y(1,9,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,55)*pol_y(2,9,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(22)*pol_z(:, 0, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(23)*pol_z(:, 0, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(24)*pol_z(:, 0, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(25)*pol_z(:, 0, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(26)*pol_z(:, 0, kg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_xyz(27)*pol_z(:, 0, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(28)*pol_z(:, 0, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(29)*pol_z(:, 0, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(30)*pol_z(:, 0, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(31)*pol_z(:, 0, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(32)*pol_z(:, 0, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(33)*pol_z(:, 0, kg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_xyz(34)*pol_z(:, 0, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(35)*pol_z(:, 0, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(36)*pol_z(:, 0, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(37)*pol_z(:, 0, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(38)*pol_z(:, 0, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(39)*pol_z(:, 0, kg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_xyz(40)*pol_z(:, 0, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(41)*pol_z(:, 0, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(42)*pol_z(:, 0, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(43)*pol_z(:, 0, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(44)*pol_z(:, 0, kg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_xyz(45)*pol_z(:, 0, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(46)*pol_z(:, 0, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(47)*pol_z(:, 0, kg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_xyz(48)*pol_z(:, 0, kg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_xyz(49)*pol_z(:, 0, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(50)*pol_z(:, 0, kg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_xyz(51)*pol_z(:, 0, kg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_xyz(52)*pol_z(:, 0, kg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_xyz(53)*pol_z(:, 0, kg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_xyz(54)*pol_z(:, 0, kg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_xyz(55)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(56)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(57)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(58)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(59)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(60)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(61)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(62)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(63)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(64)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(65)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(66)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(67)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(68)*pol_z(:, 1, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(69)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(70)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(71)*pol_z(:, 1, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(72)*pol_z(:, 1, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(73)*pol_z(:, 1, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(74)*pol_z(:, 1, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(75)*pol_z(:, 1, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(76)*pol_z(:, 1, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(77)*pol_z(:, 1, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(78)*pol_z(:, 1, kg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_xyz(79)*pol_z(:, 1, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(80)*pol_z(:, 1, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(81)*pol_z(:, 1, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(82)*pol_z(:, 1, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(83)*pol_z(:, 1, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(84)*pol_z(:, 1, kg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_xyz(85)*pol_z(:, 1, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(86)*pol_z(:, 1, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(87)*pol_z(:, 1, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(88)*pol_z(:, 1, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(89)*pol_z(:, 1, kg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_xyz(90)*pol_z(:, 1, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(91)*pol_z(:, 1, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(92)*pol_z(:, 1, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(93)*pol_z(:, 1, kg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_xyz(94)*pol_z(:, 1, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(95)*pol_z(:, 1, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(96)*pol_z(:, 1, kg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_xyz(97)*pol_z(:, 1, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(98)*pol_z(:, 1, kg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_xyz(99)*pol_z(:, 1, kg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_xyz(100)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(101)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(102)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(103)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(104)*pol_z(:, 2, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(105)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(106)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(107)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(108)*pol_z(:, 2, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(109)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(110)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(111)*pol_z(:, 2, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(112)*pol_z(:, 2, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(113)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(114)*pol_z(:, 2, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(115)*pol_z(:, 2, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(116)*pol_z(:, 2, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(117)*pol_z(:, 2, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(118)*pol_z(:, 2, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(119)*pol_z(:, 2, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(120)*pol_z(:, 2, kg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_xyz(121)*pol_z(:, 2, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(122)*pol_z(:, 2, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(123)*pol_z(:, 2, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(124)*pol_z(:, 2, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(125)*pol_z(:, 2, kg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_xyz(126)*pol_z(:, 2, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(127)*pol_z(:, 2, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(128)*pol_z(:, 2, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(129)*pol_z(:, 2, kg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_xyz(130)*pol_z(:, 2, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(131)*pol_z(:, 2, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(132)*pol_z(:, 2, kg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_xyz(133)*pol_z(:, 2, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(134)*pol_z(:, 2, kg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_xyz(135)*pol_z(:, 2, kg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_xyz(136)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(137)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(138)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(139)*pol_z(:, 3, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(140)*pol_z(:, 3, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(141)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(142)*pol_z(:, 3, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(143)*pol_z(:, 3, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(144)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(145)*pol_z(:, 3, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(146)*pol_z(:, 3, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(147)*pol_z(:, 3, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(148)*pol_z(:, 3, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(149)*pol_z(:, 3, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(150)*pol_z(:, 3, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(151)*pol_z(:, 3, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(152)*pol_z(:, 3, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(153)*pol_z(:, 3, kg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_xyz(154)*pol_z(:, 3, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(155)*pol_z(:, 3, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(156)*pol_z(:, 3, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(157)*pol_z(:, 3, kg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_xyz(158)*pol_z(:, 3, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(159)*pol_z(:, 3, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(160)*pol_z(:, 3, kg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_xyz(161)*pol_z(:, 3, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(162)*pol_z(:, 3, kg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_xyz(163)*pol_z(:, 3, kg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_xyz(164)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(165)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(166)*pol_z(:, 4, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(167)*pol_z(:, 4, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(168)*pol_z(:, 4, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(169)*pol_z(:, 4, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(170)*pol_z(:, 4, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(171)*pol_z(:, 4, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(172)*pol_z(:, 4, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(173)*pol_z(:, 4, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(174)*pol_z(:, 4, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(175)*pol_z(:, 4, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(176)*pol_z(:, 4, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(177)*pol_z(:, 4, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(178)*pol_z(:, 4, kg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_xyz(179)*pol_z(:, 4, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(180)*pol_z(:, 4, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(181)*pol_z(:, 4, kg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_xyz(182)*pol_z(:, 4, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(183)*pol_z(:, 4, kg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_xyz(184)*pol_z(:, 4, kg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_xyz(185)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(186)*pol_z(:, 5, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(187)*pol_z(:, 5, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(188)*pol_z(:, 5, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(189)*pol_z(:, 5, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(190)*pol_z(:, 5, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(191)*pol_z(:, 5, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(192)*pol_z(:, 5, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(193)*pol_z(:, 5, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(194)*pol_z(:, 5, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(195)*pol_z(:, 5, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(196)*pol_z(:, 5, kg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_xyz(197)*pol_z(:, 5, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(198)*pol_z(:, 5, kg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_xyz(199)*pol_z(:, 5, kg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_xyz(200)*pol_z(:, 5, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(201)*pol_z(:, 6, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(202)*pol_z(:, 6, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(203)*pol_z(:, 6, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(204)*pol_z(:, 6, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(205)*pol_z(:, 6, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(206)*pol_z(:, 6, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(207)*pol_z(:, 6, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(208)*pol_z(:, 6, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(209)*pol_z(:, 6, kg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_xyz(210)*pol_z(:, 6, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(211)*pol_z(:, 7, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(212)*pol_z(:, 7, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(213)*pol_z(:, 7, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(214)*pol_z(:, 7, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(215)*pol_z(:, 7, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(216)*pol_z(:, 7, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(217)*pol_z(:, 8, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(218)*pol_z(:, 8, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(219)*pol_z(:, 8, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(220)*pol_z(:, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 9) = coef_x(1, 9)+coef_xy(1, 10)*pol_y(1, 0, jg) + coef_x(2, 9) = coef_x(2, 9)+coef_xy(2, 10)*pol_y(1, 0, jg) + coef_x(3, 9) = coef_x(3, 9)+coef_xy(1, 10)*pol_y(2, 0, jg) + coef_x(4, 9) = coef_x(4, 9)+coef_xy(2, 10)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 18)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 18)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 18)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 18)*pol_y(2, 1, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 19)*pol_y(1, 1, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 19)*pol_y(1, 1, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 19)*pol_y(2, 1, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 19)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 25)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 25)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 25)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 25)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 26)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 26)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 26)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 26)*pol_y(2, 2, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 27)*pol_y(1, 2, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 27)*pol_y(1, 2, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 27)*pol_y(2, 2, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 27)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 31)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 31)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 31)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 31)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 32)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 32)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 32)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 32)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 33)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 33)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 33)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 33)*pol_y(2, 3, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 34)*pol_y(1, 3, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 34)*pol_y(1, 3, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 34)*pol_y(2, 3, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 34)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 36)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 36)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 36)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 36)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 37)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 37)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 37)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 37)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 38)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 38)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 38)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 38)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 39)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 39)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 39)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 39)*pol_y(2, 4, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 40)*pol_y(1, 4, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 40)*pol_y(1, 4, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 40)*pol_y(2, 4, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 40)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 41)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 41)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 41)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 41)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 42)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 42)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 42)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 42)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 43)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 43)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 43)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 43)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 44)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 44)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 44)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 44)*pol_y(2, 5, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 45)*pol_y(1, 5, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 45)*pol_y(1, 5, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 45)*pol_y(2, 5, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 45)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 46)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 46)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 46)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 46)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 47)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 47)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 47)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 47)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 48)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 48)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 48)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 48)*pol_y(2, 6, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 49)*pol_y(1, 6, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 49)*pol_y(1, 6, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 49)*pol_y(2, 6, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 49)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 50)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 50)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 50)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 50)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 51)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 51)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 51)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 51)*pol_y(2, 7, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 52)*pol_y(1, 7, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 52)*pol_y(1, 7, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 52)*pol_y(2, 7, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 52)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 53)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 53)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 53)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 53)*pol_y(2, 8, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 54)*pol_y(1, 8, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 54)*pol_y(1, 8, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 54)*pol_y(2, 8, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 54)*pol_y(2, 8, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 55)*pol_y(1, 9, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 55)*pol_y(1, 9, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 55)*pol_y(2, 9, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/collocate_fast_5.f90 b/src/grid/collocate_fast_5.f90 index ab4b2a0840..2e043751f1 100644 --- a/src/grid/collocate_fast_5.f90 +++ b/src/grid/collocate_fast_5.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,68 +111,68 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -187,71 +187,71 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(4)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(4)*pol_z(2,1,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(4)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(4)*pol_z(2, 1, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -266,80 +266,80 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(7)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(8)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(9)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(10)*pol_z(:,2,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(7)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(8)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(9)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(10)*pol_z(:, 2, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -354,95 +354,95 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,6)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,6)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,8)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,8)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,9)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,9)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,10)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,10)*pol_y(2,3,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 6)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 6)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 8)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 8)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 9)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 9)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 10)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 10)*pol_y(2, 3, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -457,171 +457,171 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(16)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(17)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(18)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(19)*pol_z(:,1,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(20)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(21)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(22)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(23)*pol_z(:,1,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(24)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(25)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(26)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(27)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(28)*pol_z(:,2,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(29)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(30)*pol_z(:,2,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(31)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(32)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(33)*pol_z(:,3,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(34)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(35)*pol_z(:,4,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,13)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,13)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,13)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,13)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,14)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,14)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,14)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,14)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,15)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,15)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,15)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(16)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(17)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(18)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(19)*pol_z(:, 1, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(20)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(21)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(22)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(23)*pol_z(:, 1, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(24)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(25)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(26)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(27)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(28)*pol_z(:, 2, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(29)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(30)*pol_z(:, 2, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(31)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(32)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(33)*pol_z(:, 3, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(34)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(35)*pol_z(:, 4, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 13)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 13)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 13)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 13)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 14)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 14)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 14)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 14)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 15)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 15)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 15)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -636,234 +636,234 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(26)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(26)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(27)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(27)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(28)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(28)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(41)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(41)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(42)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(42)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(43)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(43)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(44)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(44)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(45)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(45)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(46)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(46)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(47)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(47)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(48)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(48)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(49)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(49)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(50)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(50)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(51)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(51)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(52)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(52)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(53)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(53)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(54)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(54)*pol_z(2,4,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(55)*pol_z(1,4,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(55)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,5,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,13)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,13)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,21)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(26)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(26)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(27)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(27)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(28)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(28)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(41)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(41)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(42)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(42)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(43)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(43)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(44)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(44)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(45)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(45)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(46)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(46)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(47)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(47)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(48)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(48)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(49)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(49)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(50)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(50)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(51)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(51)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(52)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(52)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(53)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(53)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(54)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(54)*pol_z(2, 4, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(55)*pol_z(1, 4, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(55)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 5, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 13)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 13)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 21)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -878,260 +878,260 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(50)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(50)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(51)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(51)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(52)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(52)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(53)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(53)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(54)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(54)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(55)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(55)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(56)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(56)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(57)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(57)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(58)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(58)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(59)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(59)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(60)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(60)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(61)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(61)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(64)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(64)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(69)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(69)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(70)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(70)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(71)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(71)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(72)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(72)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(73)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(73)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(74)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(74)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(75)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(75)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(76)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(76)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(77)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(77)*pol_z(2,4,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(78)*pol_z(1,4,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(78)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(79)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(79)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(80)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(80)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(81)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(81)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(82)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(82)*pol_z(2,5,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(83)*pol_z(1,5,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(83)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(84)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(84)*pol_z(2,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(50)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(50)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(51)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(51)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(52)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(52)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(53)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(53)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(54)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(54)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(55)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(55)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(56)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(56)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(57)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(57)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(58)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(58)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(59)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(59)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(60)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(60)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(61)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(61)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(64)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(64)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(69)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(69)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(70)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(70)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(71)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(71)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(72)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(72)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(73)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(73)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(74)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(74)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(75)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(75)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(76)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(76)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(77)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(77)*pol_z(2, 4, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(78)*pol_z(1, 4, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(78)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(79)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(79)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(80)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(80)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(81)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(81)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(82)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(82)*pol_z(2, 5, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(83)*pol_z(1, 5, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(83)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(84)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(84)*pol_z(2, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1146,445 +1146,445 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(69)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(69)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(70)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(70)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(71)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(71)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(72)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(72)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(73)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(73)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(74)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(74)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(75)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(75)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(76)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(76)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(77)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(77)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(78)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(78)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(79)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(79)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(80)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(80)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(81)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(81)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(86)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(86)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(87)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(87)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(88)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(88)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(89)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(89)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(90)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(90)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(91)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(91)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(92)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(92)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(93)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(93)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(94)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(94)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(95)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(95)*pol_z(2,3,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(96)*pol_z(1,3,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(96)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(97)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(97)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(98)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(98)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(99)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(99)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(100)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(100)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(105)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(105)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(106)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(106)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(107)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(107)*pol_z(2,4,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(108)*pol_z(1,4,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(108)*pol_z(2,4,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(109)*pol_z(1,4,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(109)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(110)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(110)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(111)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(111)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(112)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(112)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(113)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(113)*pol_z(2,5,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(114)*pol_z(1,5,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(114)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(115)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(115)*pol_z(2,5,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(116)*pol_z(1,5,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(116)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(117)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(117)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(118)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(118)*pol_z(2,6,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(119)*pol_z(1,6,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(119)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(120)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(120)*pol_z(2,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,16)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,16)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,16)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,16)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,17)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,17)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,17)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,17)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,22)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,22)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,22)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,22)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,23)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,23)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,23)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,23)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,24)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,24)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,24)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,24)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,27)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,27)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,27)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,27)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,28)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,28)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,28)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,28)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,29)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,29)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,29)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,29)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,30)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,30)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,30)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,30)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,34)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,34)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,34)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,34)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,35)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,35)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,35)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,35)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - s(:)=s(:)+coef_x(:,2)*pol_x(2,ig) - s(:)=s(:)+coef_x(:,3)*pol_x(3,ig) - s(:)=s(:)+coef_x(:,4)*pol_x(4,ig) - s(:)=s(:)+coef_x(:,5)*pol_x(5,ig) - s(:)=s(:)+coef_x(:,6)*pol_x(6,ig) - s(:)=s(:)+coef_x(:,7)*pol_x(7,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(69)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(69)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(70)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(70)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(71)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(71)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(72)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(72)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(73)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(73)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(74)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(74)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(75)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(75)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(76)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(76)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(77)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(77)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(78)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(78)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(79)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(79)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(80)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(80)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(81)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(81)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(86)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(86)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(87)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(87)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(88)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(88)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(89)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(89)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(90)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(90)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(91)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(91)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(92)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(92)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(93)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(93)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(94)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(94)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(95)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(95)*pol_z(2, 3, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(96)*pol_z(1, 3, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(96)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(97)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(97)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(98)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(98)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(99)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(99)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(100)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(100)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(105)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(105)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(106)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(106)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(107)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(107)*pol_z(2, 4, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(108)*pol_z(1, 4, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(108)*pol_z(2, 4, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(109)*pol_z(1, 4, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(109)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(110)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(110)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(111)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(111)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(112)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(112)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(113)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(113)*pol_z(2, 5, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(114)*pol_z(1, 5, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(114)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(115)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(115)*pol_z(2, 5, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(116)*pol_z(1, 5, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(116)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(117)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(117)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(118)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(118)*pol_z(2, 6, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(119)*pol_z(1, 6, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(119)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(120)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(120)*pol_z(2, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 16)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 16)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 16)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 16)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 17)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 17)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 17)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 17)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 22)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 22)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 22)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 22)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 23)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 23)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 23)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 23)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 24)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 24)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 24)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 24)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 27)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 27)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 27)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 27)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 28)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 28)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 28)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 28)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 29)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 29)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 29)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 29)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 30)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 30)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 30)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 30)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 34)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 34)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 34)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 34)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 35)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 35)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 35)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 35)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + s(:) = s(:)+coef_x(:, 2)*pol_x(2, ig) + s(:) = s(:)+coef_x(:, 3)*pol_x(3, ig) + s(:) = s(:)+coef_x(:, 4)*pol_x(4, ig) + s(:) = s(:)+coef_x(:, 5)*pol_x(5, ig) + s(:) = s(:)+coef_x(:, 6)*pol_x(6, ig) + s(:) = s(:)+coef_x(:, 7)*pol_x(7, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1599,572 +1599,572 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(86)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(86)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(87)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(87)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(88)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(88)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(89)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(89)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(90)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(90)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(91)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(91)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(92)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(92)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(93)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(93)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(94)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(94)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(95)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(95)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(96)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(96)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(97)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(97)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(98)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(98)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(99)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(99)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(100)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(100)*pol_z(2,2,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(110)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(110)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(111)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(111)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(112)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(112)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(113)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(113)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(114)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(114)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(115)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(115)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(116)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(116)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(117)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(117)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(118)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(118)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(119)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(119)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(120)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(120)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(121)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(121)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(122)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(122)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(123)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(123)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(124)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(124)*pol_z(2,3,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(125)*pol_z(1,3,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(125)*pol_z(2,3,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(126)*pol_z(1,3,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(126)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(127)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(127)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(128)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(128)*pol_z(2,3,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(129)*pol_z(1,3,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(129)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(130)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(130)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(131)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(131)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(132)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(132)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(133)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(133)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(134)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(134)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(135)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(135)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(136)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(136)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(137)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(137)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(138)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(138)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(139)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(139)*pol_z(2,4,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(140)*pol_z(1,4,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(140)*pol_z(2,4,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(141)*pol_z(1,4,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(141)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(142)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(142)*pol_z(2,4,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(143)*pol_z(1,4,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(143)*pol_z(2,4,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(144)*pol_z(1,4,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(144)*pol_z(2,4,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(145)*pol_z(1,4,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(145)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(146)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(146)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(147)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(147)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(148)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(148)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(149)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(149)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(150)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(150)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(151)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(151)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(152)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(152)*pol_z(2,5,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(153)*pol_z(1,5,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(153)*pol_z(2,5,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(154)*pol_z(1,5,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(154)*pol_z(2,5,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(155)*pol_z(1,5,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(155)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(156)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(156)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(157)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(157)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(158)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(158)*pol_z(2,6,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(159)*pol_z(1,6,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(159)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(160)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(160)*pol_z(2,6,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(161)*pol_z(1,6,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(161)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(162)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(162)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(163)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(163)*pol_z(2,7,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(164)*pol_z(1,7,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(164)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,18)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,18)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,18)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,18)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,19)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,19)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,19)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,19)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,25)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,25)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,25)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,25)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,26)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,26)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,26)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,26)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,27)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,27)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,27)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,27)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,31)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,31)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,31)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,31)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,32)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,32)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,32)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,32)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,33)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,33)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,33)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,33)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,34)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,34)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,34)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,34)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,36)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,36)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,36)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,36)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,37)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,37)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,37)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,37)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,38)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,38)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,38)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,38)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,39)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,39)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,39)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,39)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,40)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,40)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,40)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,40)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,41)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,41)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,41)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,41)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,42)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,42)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,42)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,42)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,43)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,43)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,43)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,43)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,44)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,44)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,44)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,44)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,45)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,45)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,45)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - s(:)=s(:)+coef_x(:,2)*pol_x(2,ig) - s(:)=s(:)+coef_x(:,3)*pol_x(3,ig) - s(:)=s(:)+coef_x(:,4)*pol_x(4,ig) - s(:)=s(:)+coef_x(:,5)*pol_x(5,ig) - s(:)=s(:)+coef_x(:,6)*pol_x(6,ig) - s(:)=s(:)+coef_x(:,7)*pol_x(7,ig) - s(:)=s(:)+coef_x(:,8)*pol_x(8,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(86)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(86)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(87)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(87)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(88)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(88)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(89)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(89)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(90)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(90)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(91)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(91)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(92)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(92)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(93)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(93)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(94)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(94)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(95)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(95)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(96)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(96)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(97)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(97)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(98)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(98)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(99)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(99)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(100)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(100)*pol_z(2, 2, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(110)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(110)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(111)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(111)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(112)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(112)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(113)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(113)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(114)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(114)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(115)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(115)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(116)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(116)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(117)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(117)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(118)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(118)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(119)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(119)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(120)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(120)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(121)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(121)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(122)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(122)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(123)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(123)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(124)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(124)*pol_z(2, 3, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(125)*pol_z(1, 3, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(125)*pol_z(2, 3, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(126)*pol_z(1, 3, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(126)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(127)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(127)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(128)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(128)*pol_z(2, 3, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(129)*pol_z(1, 3, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(129)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(130)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(130)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(131)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(131)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(132)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(132)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(133)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(133)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(134)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(134)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(135)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(135)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(136)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(136)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(137)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(137)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(138)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(138)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(139)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(139)*pol_z(2, 4, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(140)*pol_z(1, 4, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(140)*pol_z(2, 4, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(141)*pol_z(1, 4, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(141)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(142)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(142)*pol_z(2, 4, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(143)*pol_z(1, 4, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(143)*pol_z(2, 4, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(144)*pol_z(1, 4, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(144)*pol_z(2, 4, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(145)*pol_z(1, 4, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(145)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(146)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(146)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(147)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(147)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(148)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(148)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(149)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(149)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(150)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(150)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(151)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(151)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(152)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(152)*pol_z(2, 5, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(153)*pol_z(1, 5, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(153)*pol_z(2, 5, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(154)*pol_z(1, 5, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(154)*pol_z(2, 5, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(155)*pol_z(1, 5, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(155)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(156)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(156)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(157)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(157)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(158)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(158)*pol_z(2, 6, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(159)*pol_z(1, 6, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(159)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(160)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(160)*pol_z(2, 6, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(161)*pol_z(1, 6, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(161)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(162)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(162)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(163)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(163)*pol_z(2, 7, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(164)*pol_z(1, 7, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(164)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 18)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 18)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 18)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 18)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 19)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 19)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 19)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 19)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 25)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 25)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 25)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 25)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 26)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 26)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 26)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 26)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 27)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 27)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 27)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 27)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 31)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 31)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 31)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 31)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 32)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 32)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 32)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 32)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 33)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 33)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 33)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 33)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 34)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 34)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 34)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 34)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 36)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 36)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 36)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 36)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 37)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 37)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 37)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 37)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 38)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 38)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 38)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 38)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 39)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 39)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 39)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 39)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 40)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 40)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 40)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 40)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 41)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 41)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 41)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 41)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 42)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 42)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 42)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 42)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 43)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 43)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 43)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 43)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 44)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 44)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 44)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 44)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 45)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 45)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 45)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + s(:) = s(:)+coef_x(:, 2)*pol_x(2, ig) + s(:) = s(:)+coef_x(:, 3)*pol_x(3, ig) + s(:) = s(:)+coef_x(:, 4)*pol_x(4, ig) + s(:) = s(:)+coef_x(:, 5)*pol_x(5, ig) + s(:) = s(:)+coef_x(:, 6)*pol_x(6, ig) + s(:) = s(:)+coef_x(:, 7)*pol_x(7, ig) + s(:) = s(:)+coef_x(:, 8)*pol_x(8, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -2179,722 +2179,722 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(46)*pol_z(1,0,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(46)*pol_z(2,0,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(47)*pol_z(1,0,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(47)*pol_z(2,0,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(48)*pol_z(1,0,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(48)*pol_z(2,0,kg) - coef_xy(1,49)=coef_xy(1,49)+coef_xyz(49)*pol_z(1,0,kg) - coef_xy(2,49)=coef_xy(2,49)+coef_xyz(49)*pol_z(2,0,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(50)*pol_z(1,0,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(50)*pol_z(2,0,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(51)*pol_z(1,0,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(51)*pol_z(2,0,kg) - coef_xy(1,52)=coef_xy(1,52)+coef_xyz(52)*pol_z(1,0,kg) - coef_xy(2,52)=coef_xy(2,52)+coef_xyz(52)*pol_z(2,0,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(53)*pol_z(1,0,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(53)*pol_z(2,0,kg) - coef_xy(1,54)=coef_xy(1,54)+coef_xyz(54)*pol_z(1,0,kg) - coef_xy(2,54)=coef_xy(2,54)+coef_xyz(54)*pol_z(2,0,kg) - coef_xy(1,55)=coef_xy(1,55)+coef_xyz(55)*pol_z(1,0,kg) - coef_xy(2,55)=coef_xy(2,55)+coef_xyz(55)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(82)*pol_z(1,1,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(82)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(83)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(83)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(84)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(84)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(85)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(85)*pol_z(2,1,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(86)*pol_z(1,1,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(86)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(87)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(87)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(88)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(88)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(89)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(89)*pol_z(2,1,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(90)*pol_z(1,1,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(90)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(91)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(91)*pol_z(2,1,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(92)*pol_z(1,1,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(92)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(93)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(93)*pol_z(2,1,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(94)*pol_z(1,1,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(94)*pol_z(2,1,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(95)*pol_z(1,1,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(95)*pol_z(2,1,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(96)*pol_z(1,1,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(96)*pol_z(2,1,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(97)*pol_z(1,1,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(97)*pol_z(2,1,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(98)*pol_z(1,1,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(98)*pol_z(2,1,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(99)*pol_z(1,1,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(99)*pol_z(2,1,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(100)*pol_z(1,1,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(100)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(110)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(110)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(111)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(111)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(112)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(112)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(113)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(113)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(114)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(114)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(115)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(115)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(116)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(116)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(117)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(117)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(118)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(118)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(119)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(119)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(120)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(120)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(121)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(121)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(122)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(122)*pol_z(2,2,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(123)*pol_z(1,2,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(123)*pol_z(2,2,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(124)*pol_z(1,2,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(124)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(125)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(125)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(126)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(126)*pol_z(2,2,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(127)*pol_z(1,2,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(127)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(128)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(128)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(129)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(129)*pol_z(2,2,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(130)*pol_z(1,2,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(130)*pol_z(2,2,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(131)*pol_z(1,2,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(131)*pol_z(2,2,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(132)*pol_z(1,2,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(132)*pol_z(2,2,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(133)*pol_z(1,2,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(133)*pol_z(2,2,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(134)*pol_z(1,2,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(134)*pol_z(2,2,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(135)*pol_z(1,2,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(135)*pol_z(2,2,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(136)*pol_z(1,2,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(136)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(137)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(137)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(138)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(138)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(139)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(139)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(140)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(140)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(141)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(141)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(142)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(142)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(143)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(143)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(144)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(144)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(145)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(145)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(146)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(146)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(147)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(147)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(148)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(148)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(149)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(149)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(150)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(150)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(151)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(151)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(152)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(152)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(153)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(153)*pol_z(2,3,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(154)*pol_z(1,3,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(154)*pol_z(2,3,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(155)*pol_z(1,3,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(155)*pol_z(2,3,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(156)*pol_z(1,3,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(156)*pol_z(2,3,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(157)*pol_z(1,3,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(157)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(158)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(158)*pol_z(2,3,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(159)*pol_z(1,3,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(159)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(160)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(160)*pol_z(2,3,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(161)*pol_z(1,3,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(161)*pol_z(2,3,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(162)*pol_z(1,3,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(162)*pol_z(2,3,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(163)*pol_z(1,3,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(163)*pol_z(2,3,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(164)*pol_z(1,3,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(164)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(166)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(166)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(167)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(167)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(168)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(168)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(169)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(169)*pol_z(2,4,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(170)*pol_z(1,4,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(170)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(171)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(171)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(172)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(172)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(173)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(173)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(174)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(174)*pol_z(2,4,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(175)*pol_z(1,4,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(175)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(176)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(176)*pol_z(2,4,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(177)*pol_z(1,4,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(177)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(178)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(178)*pol_z(2,4,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(179)*pol_z(1,4,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(179)*pol_z(2,4,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(180)*pol_z(1,4,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(180)*pol_z(2,4,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(181)*pol_z(1,4,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(181)*pol_z(2,4,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(182)*pol_z(1,4,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(182)*pol_z(2,4,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(183)*pol_z(1,4,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(183)*pol_z(2,4,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(184)*pol_z(1,4,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(184)*pol_z(2,4,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(185)*pol_z(1,4,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(185)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(186)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(186)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(187)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(187)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(188)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(188)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(189)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(189)*pol_z(2,5,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(190)*pol_z(1,5,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(190)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(191)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(191)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(192)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(192)*pol_z(2,5,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(193)*pol_z(1,5,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(193)*pol_z(2,5,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(194)*pol_z(1,5,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(194)*pol_z(2,5,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(195)*pol_z(1,5,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(195)*pol_z(2,5,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(196)*pol_z(1,5,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(196)*pol_z(2,5,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(197)*pol_z(1,5,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(197)*pol_z(2,5,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(198)*pol_z(1,5,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(198)*pol_z(2,5,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(199)*pol_z(1,5,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(199)*pol_z(2,5,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(200)*pol_z(1,5,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(200)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(201)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(201)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(202)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(202)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(203)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(203)*pol_z(2,6,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(204)*pol_z(1,6,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(204)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(205)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(205)*pol_z(2,6,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(206)*pol_z(1,6,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(206)*pol_z(2,6,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(207)*pol_z(1,6,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(207)*pol_z(2,6,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(208)*pol_z(1,6,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(208)*pol_z(2,6,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(209)*pol_z(1,6,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(209)*pol_z(2,6,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(210)*pol_z(1,6,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(210)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(211)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(211)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(212)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(212)*pol_z(2,7,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(213)*pol_z(1,7,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(213)*pol_z(2,7,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(214)*pol_z(1,7,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(214)*pol_z(2,7,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(215)*pol_z(1,7,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(215)*pol_z(2,7,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(216)*pol_z(1,7,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(216)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(217)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(217)*pol_z(2,8,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(218)*pol_z(1,8,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(218)*pol_z(2,8,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(219)*pol_z(1,8,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(219)*pol_z(2,8,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(220)*pol_z(1,9,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(220)*pol_z(2,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,6)*pol_y(1,0,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,6)*pol_y(1,0,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,6)*pol_y(2,0,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,6)*pol_y(2,0,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,7)*pol_y(1,0,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,7)*pol_y(1,0,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,7)*pol_y(2,0,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,7)*pol_y(2,0,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,8)*pol_y(1,0,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,8)*pol_y(1,0,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,8)*pol_y(2,0,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,8)*pol_y(2,0,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,9)*pol_y(1,0,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,9)*pol_y(1,0,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,9)*pol_y(2,0,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,9)*pol_y(2,0,jg) - coef_x(1,9)=coef_x(1,9)+coef_xy(1,10)*pol_y(1,0,jg) - coef_x(2,9)=coef_x(2,9)+coef_xy(2,10)*pol_y(1,0,jg) - coef_x(3,9)=coef_x(3,9)+coef_xy(1,10)*pol_y(2,0,jg) - coef_x(4,9)=coef_x(4,9)+coef_xy(2,10)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,11)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,11)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,11)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,11)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,12)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,12)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,12)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,12)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,13)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,13)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,13)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,13)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,14)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,14)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,14)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,14)*pol_y(2,1,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,15)*pol_y(1,1,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,15)*pol_y(1,1,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,15)*pol_y(2,1,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,15)*pol_y(2,1,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,16)*pol_y(1,1,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,16)*pol_y(1,1,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,16)*pol_y(2,1,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,16)*pol_y(2,1,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,17)*pol_y(1,1,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,17)*pol_y(1,1,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,17)*pol_y(2,1,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,17)*pol_y(2,1,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,18)*pol_y(1,1,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,18)*pol_y(1,1,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,18)*pol_y(2,1,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,18)*pol_y(2,1,jg) - coef_x(1,8)=coef_x(1,8)+coef_xy(1,19)*pol_y(1,1,jg) - coef_x(2,8)=coef_x(2,8)+coef_xy(2,19)*pol_y(1,1,jg) - coef_x(3,8)=coef_x(3,8)+coef_xy(1,19)*pol_y(2,1,jg) - coef_x(4,8)=coef_x(4,8)+coef_xy(2,19)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,20)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,20)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,20)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,20)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,21)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,21)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,21)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,21)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,22)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,22)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,22)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,22)*pol_y(2,2,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,23)*pol_y(1,2,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,23)*pol_y(1,2,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,23)*pol_y(2,2,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,23)*pol_y(2,2,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,24)*pol_y(1,2,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,24)*pol_y(1,2,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,24)*pol_y(2,2,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,24)*pol_y(2,2,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,25)*pol_y(1,2,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,25)*pol_y(1,2,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,25)*pol_y(2,2,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,25)*pol_y(2,2,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,26)*pol_y(1,2,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,26)*pol_y(1,2,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,26)*pol_y(2,2,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,26)*pol_y(2,2,jg) - coef_x(1,7)=coef_x(1,7)+coef_xy(1,27)*pol_y(1,2,jg) - coef_x(2,7)=coef_x(2,7)+coef_xy(2,27)*pol_y(1,2,jg) - coef_x(3,7)=coef_x(3,7)+coef_xy(1,27)*pol_y(2,2,jg) - coef_x(4,7)=coef_x(4,7)+coef_xy(2,27)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,28)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,28)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,28)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,28)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,29)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,29)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,29)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,29)*pol_y(2,3,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,30)*pol_y(1,3,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,30)*pol_y(1,3,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,30)*pol_y(2,3,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,30)*pol_y(2,3,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,31)*pol_y(1,3,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,31)*pol_y(1,3,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,31)*pol_y(2,3,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,31)*pol_y(2,3,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,32)*pol_y(1,3,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,32)*pol_y(1,3,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,32)*pol_y(2,3,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,32)*pol_y(2,3,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,33)*pol_y(1,3,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,33)*pol_y(1,3,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,33)*pol_y(2,3,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,33)*pol_y(2,3,jg) - coef_x(1,6)=coef_x(1,6)+coef_xy(1,34)*pol_y(1,3,jg) - coef_x(2,6)=coef_x(2,6)+coef_xy(2,34)*pol_y(1,3,jg) - coef_x(3,6)=coef_x(3,6)+coef_xy(1,34)*pol_y(2,3,jg) - coef_x(4,6)=coef_x(4,6)+coef_xy(2,34)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,35)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,35)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,35)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,35)*pol_y(2,4,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,36)*pol_y(1,4,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,36)*pol_y(1,4,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,36)*pol_y(2,4,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,36)*pol_y(2,4,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,37)*pol_y(1,4,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,37)*pol_y(1,4,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,37)*pol_y(2,4,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,37)*pol_y(2,4,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,38)*pol_y(1,4,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,38)*pol_y(1,4,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,38)*pol_y(2,4,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,38)*pol_y(2,4,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,39)*pol_y(1,4,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,39)*pol_y(1,4,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,39)*pol_y(2,4,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,39)*pol_y(2,4,jg) - coef_x(1,5)=coef_x(1,5)+coef_xy(1,40)*pol_y(1,4,jg) - coef_x(2,5)=coef_x(2,5)+coef_xy(2,40)*pol_y(1,4,jg) - coef_x(3,5)=coef_x(3,5)+coef_xy(1,40)*pol_y(2,4,jg) - coef_x(4,5)=coef_x(4,5)+coef_xy(2,40)*pol_y(2,4,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,41)*pol_y(1,5,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,41)*pol_y(1,5,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,41)*pol_y(2,5,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,41)*pol_y(2,5,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,42)*pol_y(1,5,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,42)*pol_y(1,5,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,42)*pol_y(2,5,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,42)*pol_y(2,5,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,43)*pol_y(1,5,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,43)*pol_y(1,5,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,43)*pol_y(2,5,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,43)*pol_y(2,5,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,44)*pol_y(1,5,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,44)*pol_y(1,5,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,44)*pol_y(2,5,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,44)*pol_y(2,5,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,45)*pol_y(1,5,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,45)*pol_y(1,5,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,45)*pol_y(2,5,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,45)*pol_y(2,5,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,46)*pol_y(1,6,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,46)*pol_y(1,6,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,46)*pol_y(2,6,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,46)*pol_y(2,6,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,47)*pol_y(1,6,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,47)*pol_y(1,6,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,47)*pol_y(2,6,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,47)*pol_y(2,6,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,48)*pol_y(1,6,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,48)*pol_y(1,6,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,48)*pol_y(2,6,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,48)*pol_y(2,6,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,49)*pol_y(1,6,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,49)*pol_y(1,6,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,49)*pol_y(2,6,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,49)*pol_y(2,6,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,50)*pol_y(1,7,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,50)*pol_y(1,7,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,50)*pol_y(2,7,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,50)*pol_y(2,7,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,51)*pol_y(1,7,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,51)*pol_y(1,7,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,51)*pol_y(2,7,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,51)*pol_y(2,7,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,52)*pol_y(1,7,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,52)*pol_y(1,7,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,52)*pol_y(2,7,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,52)*pol_y(2,7,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,53)*pol_y(1,8,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,53)*pol_y(1,8,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,53)*pol_y(2,8,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,53)*pol_y(2,8,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,54)*pol_y(1,8,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,54)*pol_y(1,8,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,54)*pol_y(2,8,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,54)*pol_y(2,8,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,55)*pol_y(1,9,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,55)*pol_y(1,9,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,55)*pol_y(2,9,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - s(:)=s(:)+coef_x(:,2)*pol_x(2,ig) - s(:)=s(:)+coef_x(:,3)*pol_x(3,ig) - s(:)=s(:)+coef_x(:,4)*pol_x(4,ig) - s(:)=s(:)+coef_x(:,5)*pol_x(5,ig) - s(:)=s(:)+coef_x(:,6)*pol_x(6,ig) - s(:)=s(:)+coef_x(:,7)*pol_x(7,ig) - s(:)=s(:)+coef_x(:,8)*pol_x(8,ig) - s(:)=s(:)+coef_x(:,9)*pol_x(9,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(46)*pol_z(1, 0, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(46)*pol_z(2, 0, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(47)*pol_z(1, 0, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(47)*pol_z(2, 0, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(48)*pol_z(1, 0, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(48)*pol_z(2, 0, kg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_xyz(49)*pol_z(1, 0, kg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_xyz(49)*pol_z(2, 0, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(50)*pol_z(1, 0, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(50)*pol_z(2, 0, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(51)*pol_z(1, 0, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(51)*pol_z(2, 0, kg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_xyz(52)*pol_z(1, 0, kg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_xyz(52)*pol_z(2, 0, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(53)*pol_z(1, 0, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(53)*pol_z(2, 0, kg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_xyz(54)*pol_z(1, 0, kg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_xyz(54)*pol_z(2, 0, kg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_xyz(55)*pol_z(1, 0, kg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_xyz(55)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(82)*pol_z(1, 1, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(82)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(83)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(83)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(84)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(84)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(85)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(85)*pol_z(2, 1, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(86)*pol_z(1, 1, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(86)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(87)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(87)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(88)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(88)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(89)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(89)*pol_z(2, 1, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(90)*pol_z(1, 1, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(90)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(91)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(91)*pol_z(2, 1, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(92)*pol_z(1, 1, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(92)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(93)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(93)*pol_z(2, 1, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(94)*pol_z(1, 1, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(94)*pol_z(2, 1, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(95)*pol_z(1, 1, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(95)*pol_z(2, 1, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(96)*pol_z(1, 1, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(96)*pol_z(2, 1, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(97)*pol_z(1, 1, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(97)*pol_z(2, 1, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(98)*pol_z(1, 1, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(98)*pol_z(2, 1, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(99)*pol_z(1, 1, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(99)*pol_z(2, 1, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(100)*pol_z(1, 1, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(100)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(110)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(110)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(111)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(111)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(112)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(112)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(113)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(113)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(114)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(114)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(115)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(115)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(116)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(116)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(117)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(117)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(118)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(118)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(119)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(119)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(120)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(120)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(121)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(121)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(122)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(122)*pol_z(2, 2, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(123)*pol_z(1, 2, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(123)*pol_z(2, 2, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(124)*pol_z(1, 2, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(124)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(125)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(125)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(126)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(126)*pol_z(2, 2, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(127)*pol_z(1, 2, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(127)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(128)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(128)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(129)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(129)*pol_z(2, 2, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(130)*pol_z(1, 2, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(130)*pol_z(2, 2, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(131)*pol_z(1, 2, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(131)*pol_z(2, 2, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(132)*pol_z(1, 2, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(132)*pol_z(2, 2, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(133)*pol_z(1, 2, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(133)*pol_z(2, 2, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(134)*pol_z(1, 2, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(134)*pol_z(2, 2, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(135)*pol_z(1, 2, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(135)*pol_z(2, 2, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(136)*pol_z(1, 2, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(136)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(137)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(137)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(138)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(138)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(139)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(139)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(140)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(140)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(141)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(141)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(142)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(142)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(143)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(143)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(144)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(144)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(145)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(145)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(146)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(146)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(147)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(147)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(148)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(148)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(149)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(149)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(150)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(150)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(151)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(151)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(152)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(152)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(153)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(153)*pol_z(2, 3, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(154)*pol_z(1, 3, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(154)*pol_z(2, 3, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(155)*pol_z(1, 3, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(155)*pol_z(2, 3, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(156)*pol_z(1, 3, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(156)*pol_z(2, 3, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(157)*pol_z(1, 3, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(157)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(158)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(158)*pol_z(2, 3, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(159)*pol_z(1, 3, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(159)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(160)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(160)*pol_z(2, 3, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(161)*pol_z(1, 3, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(161)*pol_z(2, 3, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(162)*pol_z(1, 3, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(162)*pol_z(2, 3, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(163)*pol_z(1, 3, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(163)*pol_z(2, 3, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(164)*pol_z(1, 3, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(164)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(166)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(166)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(167)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(167)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(168)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(168)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(169)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(169)*pol_z(2, 4, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(170)*pol_z(1, 4, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(170)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(171)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(171)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(172)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(172)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(173)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(173)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(174)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(174)*pol_z(2, 4, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(175)*pol_z(1, 4, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(175)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(176)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(176)*pol_z(2, 4, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(177)*pol_z(1, 4, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(177)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(178)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(178)*pol_z(2, 4, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(179)*pol_z(1, 4, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(179)*pol_z(2, 4, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(180)*pol_z(1, 4, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(180)*pol_z(2, 4, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(181)*pol_z(1, 4, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(181)*pol_z(2, 4, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(182)*pol_z(1, 4, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(182)*pol_z(2, 4, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(183)*pol_z(1, 4, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(183)*pol_z(2, 4, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(184)*pol_z(1, 4, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(184)*pol_z(2, 4, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(185)*pol_z(1, 4, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(185)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(186)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(186)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(187)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(187)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(188)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(188)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(189)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(189)*pol_z(2, 5, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(190)*pol_z(1, 5, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(190)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(191)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(191)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(192)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(192)*pol_z(2, 5, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(193)*pol_z(1, 5, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(193)*pol_z(2, 5, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(194)*pol_z(1, 5, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(194)*pol_z(2, 5, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(195)*pol_z(1, 5, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(195)*pol_z(2, 5, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(196)*pol_z(1, 5, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(196)*pol_z(2, 5, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(197)*pol_z(1, 5, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(197)*pol_z(2, 5, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(198)*pol_z(1, 5, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(198)*pol_z(2, 5, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(199)*pol_z(1, 5, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(199)*pol_z(2, 5, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(200)*pol_z(1, 5, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(200)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(201)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(201)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(202)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(202)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(203)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(203)*pol_z(2, 6, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(204)*pol_z(1, 6, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(204)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(205)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(205)*pol_z(2, 6, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(206)*pol_z(1, 6, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(206)*pol_z(2, 6, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(207)*pol_z(1, 6, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(207)*pol_z(2, 6, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(208)*pol_z(1, 6, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(208)*pol_z(2, 6, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(209)*pol_z(1, 6, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(209)*pol_z(2, 6, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(210)*pol_z(1, 6, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(210)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(211)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(211)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(212)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(212)*pol_z(2, 7, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(213)*pol_z(1, 7, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(213)*pol_z(2, 7, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(214)*pol_z(1, 7, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(214)*pol_z(2, 7, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(215)*pol_z(1, 7, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(215)*pol_z(2, 7, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(216)*pol_z(1, 7, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(216)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(217)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(217)*pol_z(2, 8, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(218)*pol_z(1, 8, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(218)*pol_z(2, 8, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(219)*pol_z(1, 8, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(219)*pol_z(2, 8, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(220)*pol_z(1, 9, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(220)*pol_z(2, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 6)*pol_y(1, 0, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 6)*pol_y(1, 0, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 6)*pol_y(2, 0, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 6)*pol_y(2, 0, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 7)*pol_y(1, 0, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 7)*pol_y(1, 0, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 7)*pol_y(2, 0, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 7)*pol_y(2, 0, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 8)*pol_y(1, 0, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 8)*pol_y(1, 0, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 8)*pol_y(2, 0, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 8)*pol_y(2, 0, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 9)*pol_y(1, 0, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 9)*pol_y(1, 0, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 9)*pol_y(2, 0, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 9)*pol_y(2, 0, jg) + coef_x(1, 9) = coef_x(1, 9)+coef_xy(1, 10)*pol_y(1, 0, jg) + coef_x(2, 9) = coef_x(2, 9)+coef_xy(2, 10)*pol_y(1, 0, jg) + coef_x(3, 9) = coef_x(3, 9)+coef_xy(1, 10)*pol_y(2, 0, jg) + coef_x(4, 9) = coef_x(4, 9)+coef_xy(2, 10)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 11)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 11)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 11)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 11)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 12)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 12)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 12)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 12)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 13)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 13)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 13)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 13)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 14)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 14)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 14)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 14)*pol_y(2, 1, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 15)*pol_y(1, 1, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 15)*pol_y(1, 1, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 15)*pol_y(2, 1, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 15)*pol_y(2, 1, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 16)*pol_y(1, 1, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 16)*pol_y(1, 1, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 16)*pol_y(2, 1, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 16)*pol_y(2, 1, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 17)*pol_y(1, 1, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 17)*pol_y(1, 1, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 17)*pol_y(2, 1, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 17)*pol_y(2, 1, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 18)*pol_y(1, 1, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 18)*pol_y(1, 1, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 18)*pol_y(2, 1, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 18)*pol_y(2, 1, jg) + coef_x(1, 8) = coef_x(1, 8)+coef_xy(1, 19)*pol_y(1, 1, jg) + coef_x(2, 8) = coef_x(2, 8)+coef_xy(2, 19)*pol_y(1, 1, jg) + coef_x(3, 8) = coef_x(3, 8)+coef_xy(1, 19)*pol_y(2, 1, jg) + coef_x(4, 8) = coef_x(4, 8)+coef_xy(2, 19)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 20)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 20)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 20)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 20)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 21)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 21)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 21)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 21)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 22)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 22)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 22)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 22)*pol_y(2, 2, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 23)*pol_y(1, 2, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 23)*pol_y(1, 2, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 23)*pol_y(2, 2, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 23)*pol_y(2, 2, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 24)*pol_y(1, 2, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 24)*pol_y(1, 2, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 24)*pol_y(2, 2, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 24)*pol_y(2, 2, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 25)*pol_y(1, 2, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 25)*pol_y(1, 2, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 25)*pol_y(2, 2, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 25)*pol_y(2, 2, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 26)*pol_y(1, 2, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 26)*pol_y(1, 2, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 26)*pol_y(2, 2, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 26)*pol_y(2, 2, jg) + coef_x(1, 7) = coef_x(1, 7)+coef_xy(1, 27)*pol_y(1, 2, jg) + coef_x(2, 7) = coef_x(2, 7)+coef_xy(2, 27)*pol_y(1, 2, jg) + coef_x(3, 7) = coef_x(3, 7)+coef_xy(1, 27)*pol_y(2, 2, jg) + coef_x(4, 7) = coef_x(4, 7)+coef_xy(2, 27)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 28)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 28)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 28)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 28)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 29)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 29)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 29)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 29)*pol_y(2, 3, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 30)*pol_y(1, 3, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 30)*pol_y(1, 3, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 30)*pol_y(2, 3, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 30)*pol_y(2, 3, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 31)*pol_y(1, 3, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 31)*pol_y(1, 3, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 31)*pol_y(2, 3, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 31)*pol_y(2, 3, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 32)*pol_y(1, 3, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 32)*pol_y(1, 3, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 32)*pol_y(2, 3, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 32)*pol_y(2, 3, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 33)*pol_y(1, 3, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 33)*pol_y(1, 3, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 33)*pol_y(2, 3, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 33)*pol_y(2, 3, jg) + coef_x(1, 6) = coef_x(1, 6)+coef_xy(1, 34)*pol_y(1, 3, jg) + coef_x(2, 6) = coef_x(2, 6)+coef_xy(2, 34)*pol_y(1, 3, jg) + coef_x(3, 6) = coef_x(3, 6)+coef_xy(1, 34)*pol_y(2, 3, jg) + coef_x(4, 6) = coef_x(4, 6)+coef_xy(2, 34)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 35)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 35)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 35)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 35)*pol_y(2, 4, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 36)*pol_y(1, 4, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 36)*pol_y(1, 4, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 36)*pol_y(2, 4, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 36)*pol_y(2, 4, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 37)*pol_y(1, 4, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 37)*pol_y(1, 4, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 37)*pol_y(2, 4, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 37)*pol_y(2, 4, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 38)*pol_y(1, 4, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 38)*pol_y(1, 4, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 38)*pol_y(2, 4, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 38)*pol_y(2, 4, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 39)*pol_y(1, 4, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 39)*pol_y(1, 4, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 39)*pol_y(2, 4, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 39)*pol_y(2, 4, jg) + coef_x(1, 5) = coef_x(1, 5)+coef_xy(1, 40)*pol_y(1, 4, jg) + coef_x(2, 5) = coef_x(2, 5)+coef_xy(2, 40)*pol_y(1, 4, jg) + coef_x(3, 5) = coef_x(3, 5)+coef_xy(1, 40)*pol_y(2, 4, jg) + coef_x(4, 5) = coef_x(4, 5)+coef_xy(2, 40)*pol_y(2, 4, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 41)*pol_y(1, 5, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 41)*pol_y(1, 5, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 41)*pol_y(2, 5, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 41)*pol_y(2, 5, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 42)*pol_y(1, 5, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 42)*pol_y(1, 5, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 42)*pol_y(2, 5, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 42)*pol_y(2, 5, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 43)*pol_y(1, 5, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 43)*pol_y(1, 5, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 43)*pol_y(2, 5, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 43)*pol_y(2, 5, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 44)*pol_y(1, 5, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 44)*pol_y(1, 5, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 44)*pol_y(2, 5, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 44)*pol_y(2, 5, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 45)*pol_y(1, 5, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 45)*pol_y(1, 5, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 45)*pol_y(2, 5, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 45)*pol_y(2, 5, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 46)*pol_y(1, 6, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 46)*pol_y(1, 6, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 46)*pol_y(2, 6, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 46)*pol_y(2, 6, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 47)*pol_y(1, 6, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 47)*pol_y(1, 6, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 47)*pol_y(2, 6, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 47)*pol_y(2, 6, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 48)*pol_y(1, 6, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 48)*pol_y(1, 6, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 48)*pol_y(2, 6, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 48)*pol_y(2, 6, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 49)*pol_y(1, 6, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 49)*pol_y(1, 6, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 49)*pol_y(2, 6, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 49)*pol_y(2, 6, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 50)*pol_y(1, 7, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 50)*pol_y(1, 7, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 50)*pol_y(2, 7, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 50)*pol_y(2, 7, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 51)*pol_y(1, 7, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 51)*pol_y(1, 7, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 51)*pol_y(2, 7, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 51)*pol_y(2, 7, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 52)*pol_y(1, 7, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 52)*pol_y(1, 7, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 52)*pol_y(2, 7, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 52)*pol_y(2, 7, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 53)*pol_y(1, 8, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 53)*pol_y(1, 8, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 53)*pol_y(2, 8, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 53)*pol_y(2, 8, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 54)*pol_y(1, 8, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 54)*pol_y(1, 8, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 54)*pol_y(2, 8, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 54)*pol_y(2, 8, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 55)*pol_y(1, 9, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 55)*pol_y(1, 9, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 55)*pol_y(2, 9, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + s(:) = s(:)+coef_x(:, 2)*pol_x(2, ig) + s(:) = s(:)+coef_x(:, 3)*pol_x(3, ig) + s(:) = s(:)+coef_x(:, 4)*pol_x(4, ig) + s(:) = s(:)+coef_x(:, 5)*pol_x(5, ig) + s(:) = s(:)+coef_x(:, 6)*pol_x(6, ig) + s(:) = s(:)+coef_x(:, 7)*pol_x(7, ig) + s(:) = s(:)+coef_x(:, 8)*pol_x(8, ig) + s(:) = s(:)+coef_x(:, 9)*pol_x(9, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/collocate_fast_6.f90 b/src/grid/collocate_fast_6.f90 index 11a61911ca..4a1ce2120b 100644 --- a/src/grid/collocate_fast_6.f90 +++ b/src/grid/collocate_fast_6.f90 @@ -11,92 +11,92 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE collocate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(IN) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO - END DO - END DO + END DO + END DO END SUBROUTINE collocate_core_default ! ************************************************************************************************** @@ -111,81 +111,81 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1:2,lxp)=coef_x(1:2,lxp)+coef_xy(1:2,lxy)*pol_y(1,lyp,jg) - coef_x(3:4,lxp)=coef_x(3:4,lxp)+coef_xy(1:2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1:2, lxp) = coef_x(1:2, lxp)+coef_xy(1:2, lxy)*pol_y(1, lyp, jg) + coef_x(3:4, lxp) = coef_x(3:4, lxp)+coef_xy(1:2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_0 ! ************************************************************************************************** @@ -200,72 +200,72 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(4)*pol_z(:,1,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,3)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,3)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,3)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,3)*pol_y(2,1,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - DO lxp=0,lp - s(:)=s(:)+coef_x(:,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(4)*pol_z(:, 1, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 3)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 3)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 3)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 3)*pol_y(2, 1, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + DO lxp = 0, lp + s(:) = s(:)+coef_x(:, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_1 ! ************************************************************************************************** @@ -280,81 +280,81 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_xyz(lxyz)*pol_z(1,lzp,kg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_xyz(lxyz)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,4)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,4)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,5)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,5)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,6)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,6)*pol_y(2,2,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - s(:)=s(:)+coef_x(:,2)*pol_x(2,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_xyz(lxyz)*pol_z(1, lzp, kg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_xyz(lxyz)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 4)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 4)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 5)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 5)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 6)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 6)*pol_y(2, 2, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + s(:) = s(:)+coef_x(:, 2)*pol_x(2, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_2 ! ************************************************************************************************** @@ -369,84 +369,84 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_xyz(lxyz)*pol_z(:,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_x(1,lxp)=coef_x(1,lxp)+coef_xy(1,lxy)*pol_y(1,lyp,jg) - coef_x(2,lxp)=coef_x(2,lxp)+coef_xy(2,lxy)*pol_y(1,lyp,jg) - coef_x(3,lxp)=coef_x(3,lxp)+coef_xy(1,lxy)*pol_y(2,lyp,jg) - coef_x(4,lxp)=coef_x(4,lxp)+coef_xy(2,lxy)*pol_y(2,lyp,jg) - ENDDO - ENDDO - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_xyz(lxyz)*pol_z(:, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_x(1, lxp) = coef_x(1, lxp)+coef_xy(1, lxy)*pol_y(1, lyp, jg) + coef_x(2, lxp) = coef_x(2, lxp)+coef_xy(2, lxy)*pol_y(1, lyp, jg) + coef_x(3, lxp) = coef_x(3, lxp)+coef_xy(1, lxy)*pol_y(2, lyp, jg) + coef_x(4, lxp) = coef_x(4, lxp)+coef_xy(2, lxy)*pol_y(2, lyp, jg) + ENDDO + ENDDO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_3 ! ************************************************************************************************** @@ -461,186 +461,186 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(16)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(16)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(17)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(17)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(18)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(18)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(19)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(19)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(20)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(20)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(21)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(21)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(22)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(22)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(23)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(23)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(24)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(24)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(25)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(25)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(26)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(26)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(27)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(27)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(28)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(28)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(29)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(29)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(30)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(30)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(31)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(31)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(32)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(32)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(33)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(33)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(35)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(35)*pol_z(2,4,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1,0)=coef_x(1,0)+coef_xy(1,1)*pol_y(1,0,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,1)*pol_y(1,0,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,1)*pol_y(2,0,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,1)*pol_y(2,0,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,2)*pol_y(1,0,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,2)*pol_y(1,0,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,2)*pol_y(2,0,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,2)*pol_y(2,0,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,3)*pol_y(1,0,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,3)*pol_y(1,0,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,3)*pol_y(2,0,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,3)*pol_y(2,0,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,4)*pol_y(1,0,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,4)*pol_y(1,0,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,4)*pol_y(2,0,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,4)*pol_y(2,0,jg) - coef_x(1,4)=coef_x(1,4)+coef_xy(1,5)*pol_y(1,0,jg) - coef_x(2,4)=coef_x(2,4)+coef_xy(2,5)*pol_y(1,0,jg) - coef_x(3,4)=coef_x(3,4)+coef_xy(1,5)*pol_y(2,0,jg) - coef_x(4,4)=coef_x(4,4)+coef_xy(2,5)*pol_y(2,0,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,6)*pol_y(1,1,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,6)*pol_y(1,1,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,6)*pol_y(2,1,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,6)*pol_y(2,1,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,7)*pol_y(1,1,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,7)*pol_y(1,1,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,7)*pol_y(2,1,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,7)*pol_y(2,1,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,8)*pol_y(1,1,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,8)*pol_y(1,1,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,8)*pol_y(2,1,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,8)*pol_y(2,1,jg) - coef_x(1,3)=coef_x(1,3)+coef_xy(1,9)*pol_y(1,1,jg) - coef_x(2,3)=coef_x(2,3)+coef_xy(2,9)*pol_y(1,1,jg) - coef_x(3,3)=coef_x(3,3)+coef_xy(1,9)*pol_y(2,1,jg) - coef_x(4,3)=coef_x(4,3)+coef_xy(2,9)*pol_y(2,1,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,10)*pol_y(1,2,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,10)*pol_y(1,2,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,10)*pol_y(2,2,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,10)*pol_y(2,2,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,11)*pol_y(1,2,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,11)*pol_y(1,2,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,11)*pol_y(2,2,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,11)*pol_y(2,2,jg) - coef_x(1,2)=coef_x(1,2)+coef_xy(1,12)*pol_y(1,2,jg) - coef_x(2,2)=coef_x(2,2)+coef_xy(2,12)*pol_y(1,2,jg) - coef_x(3,2)=coef_x(3,2)+coef_xy(1,12)*pol_y(2,2,jg) - coef_x(4,2)=coef_x(4,2)+coef_xy(2,12)*pol_y(2,2,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,13)*pol_y(1,3,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,13)*pol_y(1,3,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,13)*pol_y(2,3,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,13)*pol_y(2,3,jg) - coef_x(1,1)=coef_x(1,1)+coef_xy(1,14)*pol_y(1,3,jg) - coef_x(2,1)=coef_x(2,1)+coef_xy(2,14)*pol_y(1,3,jg) - coef_x(3,1)=coef_x(3,1)+coef_xy(1,14)*pol_y(2,3,jg) - coef_x(4,1)=coef_x(4,1)+coef_xy(2,14)*pol_y(2,3,jg) - coef_x(1,0)=coef_x(1,0)+coef_xy(1,15)*pol_y(1,4,jg) - coef_x(2,0)=coef_x(2,0)+coef_xy(2,15)*pol_y(1,4,jg) - coef_x(3,0)=coef_x(3,0)+coef_xy(1,15)*pol_y(2,4,jg) - coef_x(4,0)=coef_x(4,0)+coef_xy(2,15)*pol_y(2,4,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - DO lxp=0,lp - s(:)=s(:)+coef_x(:,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(16)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(16)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(17)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(17)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(18)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(18)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(19)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(19)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(20)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(20)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(21)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(21)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(22)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(22)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(23)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(23)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(24)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(24)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(25)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(25)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(26)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(26)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(27)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(27)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(28)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(28)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(29)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(29)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(30)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(30)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(31)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(31)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(32)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(32)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(33)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(33)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(35)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(35)*pol_z(2, 4, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 1)*pol_y(1, 0, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 1)*pol_y(1, 0, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 1)*pol_y(2, 0, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 1)*pol_y(2, 0, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 2)*pol_y(1, 0, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 2)*pol_y(1, 0, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 2)*pol_y(2, 0, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 2)*pol_y(2, 0, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 3)*pol_y(1, 0, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 3)*pol_y(1, 0, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 3)*pol_y(2, 0, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 3)*pol_y(2, 0, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 4)*pol_y(1, 0, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 4)*pol_y(1, 0, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 4)*pol_y(2, 0, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 4)*pol_y(2, 0, jg) + coef_x(1, 4) = coef_x(1, 4)+coef_xy(1, 5)*pol_y(1, 0, jg) + coef_x(2, 4) = coef_x(2, 4)+coef_xy(2, 5)*pol_y(1, 0, jg) + coef_x(3, 4) = coef_x(3, 4)+coef_xy(1, 5)*pol_y(2, 0, jg) + coef_x(4, 4) = coef_x(4, 4)+coef_xy(2, 5)*pol_y(2, 0, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 6)*pol_y(1, 1, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 6)*pol_y(1, 1, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 6)*pol_y(2, 1, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 6)*pol_y(2, 1, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 7)*pol_y(1, 1, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 7)*pol_y(1, 1, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 7)*pol_y(2, 1, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 7)*pol_y(2, 1, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 8)*pol_y(1, 1, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 8)*pol_y(1, 1, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 8)*pol_y(2, 1, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 8)*pol_y(2, 1, jg) + coef_x(1, 3) = coef_x(1, 3)+coef_xy(1, 9)*pol_y(1, 1, jg) + coef_x(2, 3) = coef_x(2, 3)+coef_xy(2, 9)*pol_y(1, 1, jg) + coef_x(3, 3) = coef_x(3, 3)+coef_xy(1, 9)*pol_y(2, 1, jg) + coef_x(4, 3) = coef_x(4, 3)+coef_xy(2, 9)*pol_y(2, 1, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 10)*pol_y(1, 2, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 10)*pol_y(1, 2, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 10)*pol_y(2, 2, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 10)*pol_y(2, 2, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 11)*pol_y(1, 2, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 11)*pol_y(1, 2, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 11)*pol_y(2, 2, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 11)*pol_y(2, 2, jg) + coef_x(1, 2) = coef_x(1, 2)+coef_xy(1, 12)*pol_y(1, 2, jg) + coef_x(2, 2) = coef_x(2, 2)+coef_xy(2, 12)*pol_y(1, 2, jg) + coef_x(3, 2) = coef_x(3, 2)+coef_xy(1, 12)*pol_y(2, 2, jg) + coef_x(4, 2) = coef_x(4, 2)+coef_xy(2, 12)*pol_y(2, 2, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 13)*pol_y(1, 3, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 13)*pol_y(1, 3, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 13)*pol_y(2, 3, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 13)*pol_y(2, 3, jg) + coef_x(1, 1) = coef_x(1, 1)+coef_xy(1, 14)*pol_y(1, 3, jg) + coef_x(2, 1) = coef_x(2, 1)+coef_xy(2, 14)*pol_y(1, 3, jg) + coef_x(3, 1) = coef_x(3, 1)+coef_xy(1, 14)*pol_y(2, 3, jg) + coef_x(4, 1) = coef_x(4, 1)+coef_xy(2, 14)*pol_y(2, 3, jg) + coef_x(1, 0) = coef_x(1, 0)+coef_xy(1, 15)*pol_y(1, 4, jg) + coef_x(2, 0) = coef_x(2, 0)+coef_xy(2, 15)*pol_y(1, 4, jg) + coef_x(3, 0) = coef_x(3, 0)+coef_xy(1, 15)*pol_y(2, 4, jg) + coef_x(4, 0) = coef_x(4, 0)+coef_xy(2, 15)*pol_y(2, 4, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + DO lxp = 0, lp + s(:) = s(:)+coef_x(:, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_4 ! ************************************************************************************************** @@ -655,160 +655,160 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(1)*pol_z(:,0,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(2)*pol_z(:,0,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(3)*pol_z(:,0,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(4)*pol_z(:,0,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(5)*pol_z(:,0,kg) - coef_xy(:,6)=coef_xy(:,6)+coef_xyz(6)*pol_z(:,0,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(7)*pol_z(:,0,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(8)*pol_z(:,0,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(9)*pol_z(:,0,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(10)*pol_z(:,0,kg) - coef_xy(:,11)=coef_xy(:,11)+coef_xyz(11)*pol_z(:,0,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(12)*pol_z(:,0,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(13)*pol_z(:,0,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(14)*pol_z(:,0,kg) - coef_xy(:,15)=coef_xy(:,15)+coef_xyz(15)*pol_z(:,0,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(16)*pol_z(:,0,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(17)*pol_z(:,0,kg) - coef_xy(:,18)=coef_xy(:,18)+coef_xyz(18)*pol_z(:,0,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(19)*pol_z(:,0,kg) - coef_xy(:,20)=coef_xy(:,20)+coef_xyz(20)*pol_z(:,0,kg) - coef_xy(:,21)=coef_xy(:,21)+coef_xyz(21)*pol_z(:,0,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(22)*pol_z(:,1,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(23)*pol_z(:,1,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(24)*pol_z(:,1,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(25)*pol_z(:,1,kg) - coef_xy(:,5)=coef_xy(:,5)+coef_xyz(26)*pol_z(:,1,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(27)*pol_z(:,1,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(28)*pol_z(:,1,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(29)*pol_z(:,1,kg) - coef_xy(:,10)=coef_xy(:,10)+coef_xyz(30)*pol_z(:,1,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(31)*pol_z(:,1,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(32)*pol_z(:,1,kg) - coef_xy(:,14)=coef_xy(:,14)+coef_xyz(33)*pol_z(:,1,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(34)*pol_z(:,1,kg) - coef_xy(:,17)=coef_xy(:,17)+coef_xyz(35)*pol_z(:,1,kg) - coef_xy(:,19)=coef_xy(:,19)+coef_xyz(36)*pol_z(:,1,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(37)*pol_z(:,2,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(38)*pol_z(:,2,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(39)*pol_z(:,2,kg) - coef_xy(:,4)=coef_xy(:,4)+coef_xyz(40)*pol_z(:,2,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(41)*pol_z(:,2,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(42)*pol_z(:,2,kg) - coef_xy(:,9)=coef_xy(:,9)+coef_xyz(43)*pol_z(:,2,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(44)*pol_z(:,2,kg) - coef_xy(:,13)=coef_xy(:,13)+coef_xyz(45)*pol_z(:,2,kg) - coef_xy(:,16)=coef_xy(:,16)+coef_xyz(46)*pol_z(:,2,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(47)*pol_z(:,3,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(48)*pol_z(:,3,kg) - coef_xy(:,3)=coef_xy(:,3)+coef_xyz(49)*pol_z(:,3,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(50)*pol_z(:,3,kg) - coef_xy(:,8)=coef_xy(:,8)+coef_xyz(51)*pol_z(:,3,kg) - coef_xy(:,12)=coef_xy(:,12)+coef_xyz(52)*pol_z(:,3,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(53)*pol_z(:,4,kg) - coef_xy(:,2)=coef_xy(:,2)+coef_xyz(54)*pol_z(:,4,kg) - coef_xy(:,7)=coef_xy(:,7)+coef_xyz(55)*pol_z(:,4,kg) - coef_xy(:,1)=coef_xy(:,1)+coef_xyz(56)*pol_z(:,5,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,7)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,7)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,12)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,12)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,13)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,13)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,21)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,21)*pol_y(2,5,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - DO lxp=0,lp - s01=s01+coef_x(1,lxp)*pol_x(lxp,ig) - s02=s02+coef_x(2,lxp)*pol_x(lxp,ig) - s03=s03+coef_x(3,lxp)*pol_x(lxp,ig) - s04=s04+coef_x(4,lxp)*pol_x(lxp,ig) - ENDDO - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(1)*pol_z(:, 0, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(2)*pol_z(:, 0, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(3)*pol_z(:, 0, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(4)*pol_z(:, 0, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(5)*pol_z(:, 0, kg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_xyz(6)*pol_z(:, 0, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(7)*pol_z(:, 0, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(8)*pol_z(:, 0, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(9)*pol_z(:, 0, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(10)*pol_z(:, 0, kg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_xyz(11)*pol_z(:, 0, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(12)*pol_z(:, 0, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(13)*pol_z(:, 0, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(14)*pol_z(:, 0, kg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_xyz(15)*pol_z(:, 0, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(16)*pol_z(:, 0, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(17)*pol_z(:, 0, kg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_xyz(18)*pol_z(:, 0, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(19)*pol_z(:, 0, kg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_xyz(20)*pol_z(:, 0, kg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_xyz(21)*pol_z(:, 0, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(22)*pol_z(:, 1, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(23)*pol_z(:, 1, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(24)*pol_z(:, 1, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(25)*pol_z(:, 1, kg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_xyz(26)*pol_z(:, 1, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(27)*pol_z(:, 1, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(28)*pol_z(:, 1, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(29)*pol_z(:, 1, kg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_xyz(30)*pol_z(:, 1, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(31)*pol_z(:, 1, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(32)*pol_z(:, 1, kg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_xyz(33)*pol_z(:, 1, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(34)*pol_z(:, 1, kg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_xyz(35)*pol_z(:, 1, kg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_xyz(36)*pol_z(:, 1, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(37)*pol_z(:, 2, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(38)*pol_z(:, 2, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(39)*pol_z(:, 2, kg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_xyz(40)*pol_z(:, 2, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(41)*pol_z(:, 2, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(42)*pol_z(:, 2, kg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_xyz(43)*pol_z(:, 2, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(44)*pol_z(:, 2, kg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_xyz(45)*pol_z(:, 2, kg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_xyz(46)*pol_z(:, 2, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(47)*pol_z(:, 3, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(48)*pol_z(:, 3, kg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_xyz(49)*pol_z(:, 3, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(50)*pol_z(:, 3, kg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_xyz(51)*pol_z(:, 3, kg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_xyz(52)*pol_z(:, 3, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(53)*pol_z(:, 4, kg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_xyz(54)*pol_z(:, 4, kg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_xyz(55)*pol_z(:, 4, kg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_xyz(56)*pol_z(:, 5, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 7)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 7)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 12)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 12)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 13)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 13)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 21)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 21)*pol_y(2, 5, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + DO lxp = 0, lp + s01 = s01+coef_x(1, lxp)*pol_x(lxp, ig) + s02 = s02+coef_x(2, lxp)*pol_x(lxp, ig) + s03 = s03+coef_x(3, lxp)*pol_x(lxp, ig) + s04 = s04+coef_x(4, lxp)*pol_x(lxp, ig) + ENDDO + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_5 ! ************************************************************************************************** @@ -823,284 +823,284 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s(4) - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(29)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(29)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(30)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(30)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(31)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(31)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(32)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(32)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(33)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(33)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(34)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(34)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(35)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(35)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(36)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(36)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(50)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(50)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(51)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(51)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(52)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(52)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(53)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(53)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(54)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(54)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(55)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(55)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(56)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(56)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(57)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(57)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(58)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(58)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(59)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(59)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(60)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(60)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(61)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(61)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(64)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(64)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,3,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(69)*pol_z(1,3,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(69)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(70)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(70)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(71)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(71)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(72)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(72)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(73)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(73)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(74)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(74)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(75)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(75)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(76)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(76)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(77)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(77)*pol_z(2,4,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(78)*pol_z(1,4,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(78)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(79)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(79)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(80)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(80)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(81)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(81)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(82)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(82)*pol_z(2,5,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(83)*pol_z(1,5,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(83)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(84)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(84)*pol_z(2,6,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,8)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,8)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,14)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,14)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,15)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,15)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,16)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,16)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,17)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,17)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,19)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,19)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,20)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,20)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,21)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,21)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,22)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,22)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,23)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,23)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,24)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,24)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,25)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,25)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,26)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,26)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,27)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,27)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,28)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,28)*pol_y(2,6,jg) - DO ig=igmin,igmax - i=map(ig,1) - s(:)=0.0_dp - s(:)=s(:)+coef_x(:,0)*pol_x(0,ig) - s(:)=s(:)+coef_x(:,1)*pol_x(1,ig) - s(:)=s(:)+coef_x(:,2)*pol_x(2,ig) - s(:)=s(:)+coef_x(:,3)*pol_x(3,ig) - s(:)=s(:)+coef_x(:,4)*pol_x(4,ig) - s(:)=s(:)+coef_x(:,5)*pol_x(5,ig) - s(:)=s(:)+coef_x(:,6)*pol_x(6,ig) - grid(i,j,k) = grid(i,j,k) + s(1) - grid(i,j2,k) = grid(i,j2,k) + s(3) - grid(i,j,k2) = grid(i,j,k2) + s(2) - grid(i,j2,k2) = grid(i,j2,k2) + s(4) - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(29)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(29)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(30)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(30)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(31)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(31)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(32)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(32)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(33)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(33)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(34)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(34)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(35)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(35)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(36)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(36)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(50)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(50)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(51)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(51)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(52)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(52)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(53)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(53)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(54)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(54)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(55)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(55)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(56)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(56)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(57)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(57)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(58)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(58)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(59)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(59)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(60)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(60)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(61)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(61)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(64)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(64)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 3, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(69)*pol_z(1, 3, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(69)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(70)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(70)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(71)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(71)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(72)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(72)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(73)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(73)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(74)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(74)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(75)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(75)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(76)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(76)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(77)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(77)*pol_z(2, 4, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(78)*pol_z(1, 4, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(78)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(79)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(79)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(80)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(80)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(81)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(81)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(82)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(82)*pol_z(2, 5, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(83)*pol_z(1, 5, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(83)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(84)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(84)*pol_z(2, 6, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 8)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 8)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 14)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 14)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 15)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 15)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 16)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 16)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 17)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 17)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 19)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 19)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 20)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 20)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 21)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 21)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 22)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 22)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 23)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 23)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 24)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 24)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 25)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 25)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 26)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 26)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 27)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 27)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 28)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 28)*pol_y(2, 6, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s(:) = 0.0_dp + s(:) = s(:)+coef_x(:, 0)*pol_x(0, ig) + s(:) = s(:)+coef_x(:, 1)*pol_x(1, ig) + s(:) = s(:)+coef_x(:, 2)*pol_x(2, ig) + s(:) = s(:)+coef_x(:, 3)*pol_x(3, ig) + s(:) = s(:)+coef_x(:, 4)*pol_x(4, ig) + s(:) = s(:)+coef_x(:, 5)*pol_x(5, ig) + s(:) = s(:)+coef_x(:, 6)*pol_x(6, ig) + grid(i, j, k) = grid(i, j, k)+s(1) + grid(i, j2, k) = grid(i, j2, k)+s(3) + grid(i, j, k2) = grid(i, j, k2)+s(2) + grid(i, j2, k2) = grid(i, j2, k2)+s(4) + END DO + END DO + END DO END SUBROUTINE collocate_core_6 ! ************************************************************************************************** @@ -1115,400 +1115,400 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(37)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(37)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(38)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(38)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(39)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(39)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(40)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(40)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(41)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(41)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(42)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(42)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(43)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(43)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(44)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(44)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(45)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(45)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(65)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(65)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(66)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(66)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(67)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(67)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(68)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(68)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(69)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(69)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(70)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(70)*pol_z(2,2,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(71)*pol_z(1,2,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(71)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(72)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(72)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(73)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(73)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(74)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(74)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(75)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(75)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(76)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(76)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(77)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(77)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(78)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(78)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(79)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(79)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(80)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(80)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(81)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(81)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(86)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(86)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(87)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(87)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(88)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(88)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(89)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(89)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(90)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(90)*pol_z(2,3,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(91)*pol_z(1,3,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(91)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(92)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(92)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(93)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(93)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(94)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(94)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(95)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(95)*pol_z(2,3,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(96)*pol_z(1,3,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(96)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(97)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(97)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(98)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(98)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(99)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(99)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(100)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(100)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,4,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(105)*pol_z(1,4,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(105)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(106)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(106)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(107)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(107)*pol_z(2,4,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(108)*pol_z(1,4,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(108)*pol_z(2,4,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(109)*pol_z(1,4,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(109)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(110)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(110)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(111)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(111)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(112)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(112)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(113)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(113)*pol_z(2,5,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(114)*pol_z(1,5,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(114)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(115)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(115)*pol_z(2,5,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(116)*pol_z(1,5,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(116)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(117)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(117)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(118)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(118)*pol_z(2,6,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(119)*pol_z(1,6,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(119)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(120)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(120)*pol_z(2,7,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,9)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,9)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,16)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,16)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,17)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,17)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,19)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,19)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,22)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,22)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,23)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,23)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,24)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,24)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,25)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,25)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,26)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,26)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,27)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,27)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,28)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,28)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,29)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,29)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,30)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,30)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,31)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,31)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,32)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,32)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,33)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,33)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,34)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,34)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,35)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,35)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,36)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,36)*pol_y(2,7,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(37)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(37)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(38)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(38)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(39)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(39)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(40)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(40)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(41)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(41)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(42)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(42)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(43)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(43)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(44)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(44)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(45)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(45)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(65)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(65)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(66)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(66)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(67)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(67)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(68)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(68)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(69)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(69)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(70)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(70)*pol_z(2, 2, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(71)*pol_z(1, 2, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(71)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(72)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(72)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(73)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(73)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(74)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(74)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(75)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(75)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(76)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(76)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(77)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(77)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(78)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(78)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(79)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(79)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(80)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(80)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(81)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(81)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(86)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(86)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(87)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(87)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(88)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(88)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(89)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(89)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(90)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(90)*pol_z(2, 3, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(91)*pol_z(1, 3, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(91)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(92)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(92)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(93)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(93)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(94)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(94)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(95)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(95)*pol_z(2, 3, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(96)*pol_z(1, 3, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(96)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(97)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(97)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(98)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(98)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(99)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(99)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(100)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(100)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 4, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(105)*pol_z(1, 4, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(105)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(106)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(106)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(107)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(107)*pol_z(2, 4, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(108)*pol_z(1, 4, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(108)*pol_z(2, 4, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(109)*pol_z(1, 4, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(109)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(110)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(110)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(111)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(111)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(112)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(112)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(113)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(113)*pol_z(2, 5, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(114)*pol_z(1, 5, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(114)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(115)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(115)*pol_z(2, 5, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(116)*pol_z(1, 5, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(116)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(117)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(117)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(118)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(118)*pol_z(2, 6, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(119)*pol_z(1, 6, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(119)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(120)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(120)*pol_z(2, 7, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 9)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 9)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 16)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 16)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 17)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 17)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 19)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 19)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 22)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 22)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 23)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 23)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 24)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 24)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 25)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 25)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 26)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 26)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 27)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 27)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 28)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 28)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 29)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 29)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 30)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 30)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 31)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 31)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 32)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 32)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 33)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 33)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 34)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 34)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 35)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 35)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 36)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 36)*pol_y(2, 7, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_7 ! ************************************************************************************************** @@ -1523,512 +1523,512 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(46)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(46)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(47)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(47)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(48)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(48)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(49)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(49)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(50)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(50)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(51)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(51)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(52)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(52)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(53)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(53)*pol_z(2,1,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(54)*pol_z(1,1,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(54)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(55)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(55)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(82)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(82)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(83)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(83)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(84)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(84)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(85)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(85)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(86)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(86)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(87)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(87)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(88)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(88)*pol_z(2,2,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(89)*pol_z(1,2,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(89)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(90)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(90)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(91)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(91)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(92)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(92)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(93)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(93)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(94)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(94)*pol_z(2,2,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(95)*pol_z(1,2,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(95)*pol_z(2,2,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(96)*pol_z(1,2,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(96)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(97)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(97)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(98)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(98)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(99)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(99)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(100)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(100)*pol_z(2,2,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(110)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(110)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(111)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(111)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(112)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(112)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(113)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(113)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(114)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(114)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(115)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(115)*pol_z(2,3,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(116)*pol_z(1,3,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(116)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(117)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(117)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(118)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(118)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(119)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(119)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(120)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(120)*pol_z(2,3,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(121)*pol_z(1,3,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(121)*pol_z(2,3,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(122)*pol_z(1,3,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(122)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(123)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(123)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(124)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(124)*pol_z(2,3,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(125)*pol_z(1,3,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(125)*pol_z(2,3,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(126)*pol_z(1,3,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(126)*pol_z(2,3,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(127)*pol_z(1,3,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(127)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(128)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(128)*pol_z(2,3,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(129)*pol_z(1,3,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(129)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(130)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(130)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(131)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(131)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(132)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(132)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(133)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(133)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(134)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(134)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(135)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(135)*pol_z(2,4,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(136)*pol_z(1,4,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(136)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(137)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(137)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(138)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(138)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(139)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(139)*pol_z(2,4,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(140)*pol_z(1,4,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(140)*pol_z(2,4,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(141)*pol_z(1,4,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(141)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(142)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(142)*pol_z(2,4,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(143)*pol_z(1,4,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(143)*pol_z(2,4,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(144)*pol_z(1,4,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(144)*pol_z(2,4,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(145)*pol_z(1,4,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(145)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(146)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(146)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(147)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(147)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(148)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(148)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(149)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(149)*pol_z(2,5,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(150)*pol_z(1,5,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(150)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(151)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(151)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(152)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(152)*pol_z(2,5,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(153)*pol_z(1,5,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(153)*pol_z(2,5,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(154)*pol_z(1,5,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(154)*pol_z(2,5,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(155)*pol_z(1,5,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(155)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(156)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(156)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(157)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(157)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(158)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(158)*pol_z(2,6,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(159)*pol_z(1,6,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(159)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(160)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(160)*pol_z(2,6,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(161)*pol_z(1,6,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(161)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(162)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(162)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(163)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(163)*pol_z(2,7,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(164)*pol_z(1,7,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(164)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,8,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,9)*pol_y(1,0,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,9)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,10)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,10)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,16)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,16)*pol_y(2,1,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,17)*pol_y(1,1,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,17)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,18)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,18)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,19)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,19)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,22)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,22)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,23)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,23)*pol_y(2,2,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,24)*pol_y(1,2,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,24)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,25)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,25)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,26)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,26)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,27)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,27)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,28)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,28)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,29)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,29)*pol_y(2,3,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,30)*pol_y(1,3,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,30)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,31)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,31)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,32)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,32)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,33)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,33)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,34)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,34)*pol_y(2,4,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,35)*pol_y(1,4,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,35)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,36)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,36)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,37)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,37)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,38)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,38)*pol_y(2,5,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,39)*pol_y(1,5,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,39)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,40)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,40)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,41)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,41)*pol_y(2,6,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,42)*pol_y(1,6,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,42)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,43)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,43)*pol_y(2,7,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,44)*pol_y(1,7,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,44)*pol_y(2,7,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,45)*pol_y(1,8,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,45)*pol_y(2,8,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(46)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(46)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(47)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(47)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(48)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(48)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(49)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(49)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(50)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(50)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(51)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(51)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(52)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(52)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(53)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(53)*pol_z(2, 1, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(54)*pol_z(1, 1, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(54)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(55)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(55)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(82)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(82)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(83)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(83)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(84)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(84)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(85)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(85)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(86)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(86)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(87)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(87)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(88)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(88)*pol_z(2, 2, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(89)*pol_z(1, 2, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(89)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(90)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(90)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(91)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(91)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(92)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(92)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(93)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(93)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(94)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(94)*pol_z(2, 2, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(95)*pol_z(1, 2, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(95)*pol_z(2, 2, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(96)*pol_z(1, 2, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(96)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(97)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(97)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(98)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(98)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(99)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(99)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(100)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(100)*pol_z(2, 2, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(110)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(110)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(111)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(111)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(112)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(112)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(113)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(113)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(114)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(114)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(115)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(115)*pol_z(2, 3, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(116)*pol_z(1, 3, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(116)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(117)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(117)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(118)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(118)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(119)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(119)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(120)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(120)*pol_z(2, 3, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(121)*pol_z(1, 3, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(121)*pol_z(2, 3, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(122)*pol_z(1, 3, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(122)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(123)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(123)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(124)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(124)*pol_z(2, 3, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(125)*pol_z(1, 3, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(125)*pol_z(2, 3, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(126)*pol_z(1, 3, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(126)*pol_z(2, 3, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(127)*pol_z(1, 3, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(127)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(128)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(128)*pol_z(2, 3, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(129)*pol_z(1, 3, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(129)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(130)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(130)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(131)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(131)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(132)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(132)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(133)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(133)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(134)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(134)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(135)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(135)*pol_z(2, 4, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(136)*pol_z(1, 4, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(136)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(137)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(137)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(138)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(138)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(139)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(139)*pol_z(2, 4, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(140)*pol_z(1, 4, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(140)*pol_z(2, 4, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(141)*pol_z(1, 4, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(141)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(142)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(142)*pol_z(2, 4, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(143)*pol_z(1, 4, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(143)*pol_z(2, 4, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(144)*pol_z(1, 4, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(144)*pol_z(2, 4, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(145)*pol_z(1, 4, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(145)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(146)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(146)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(147)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(147)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(148)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(148)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(149)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(149)*pol_z(2, 5, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(150)*pol_z(1, 5, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(150)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(151)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(151)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(152)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(152)*pol_z(2, 5, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(153)*pol_z(1, 5, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(153)*pol_z(2, 5, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(154)*pol_z(1, 5, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(154)*pol_z(2, 5, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(155)*pol_z(1, 5, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(155)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(156)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(156)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(157)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(157)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(158)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(158)*pol_z(2, 6, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(159)*pol_z(1, 6, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(159)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(160)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(160)*pol_z(2, 6, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(161)*pol_z(1, 6, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(161)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(162)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(162)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(163)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(163)*pol_z(2, 7, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(164)*pol_z(1, 7, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(164)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 8, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 9)*pol_y(1, 0, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 9)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 10)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 10)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 16)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 16)*pol_y(2, 1, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 17)*pol_y(1, 1, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 17)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 18)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 18)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 19)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 19)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 22)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 22)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 23)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 23)*pol_y(2, 2, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 24)*pol_y(1, 2, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 24)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 25)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 25)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 26)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 26)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 27)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 27)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 28)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 28)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 29)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 29)*pol_y(2, 3, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 30)*pol_y(1, 3, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 30)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 31)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 31)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 32)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 32)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 33)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 33)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 34)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 34)*pol_y(2, 4, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 35)*pol_y(1, 4, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 35)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 36)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 36)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 37)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 37)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 38)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 38)*pol_y(2, 5, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 39)*pol_y(1, 5, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 39)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 40)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 40)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 41)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 41)*pol_y(2, 6, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 42)*pol_y(1, 6, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 42)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 43)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 43)*pol_y(2, 7, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 44)*pol_y(1, 7, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 44)*pol_y(2, 7, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 45)*pol_y(1, 8, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 45)*pol_y(2, 8, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_8 ! ************************************************************************************************** @@ -2043,645 +2043,645 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE collocate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE collocate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(INOUT) :: grid(gridbounds(1,1):gridbounds(2,1), & - gridbounds(1,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(INOUT) :: grid(gridbounds(1, 1):gridbounds(2, 1), & + gridbounds(1, 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0), coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,(lp+1)*(lp+2)/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, (lp+1)*(lp+2)/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) - coef_xy=0.0_dp - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(1)*pol_z(1,0,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(1)*pol_z(2,0,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(2)*pol_z(1,0,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(2)*pol_z(2,0,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(3)*pol_z(1,0,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(3)*pol_z(2,0,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(4)*pol_z(1,0,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(4)*pol_z(2,0,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(5)*pol_z(1,0,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(5)*pol_z(2,0,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(6)*pol_z(1,0,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(6)*pol_z(2,0,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(7)*pol_z(1,0,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(7)*pol_z(2,0,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(8)*pol_z(1,0,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(8)*pol_z(2,0,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(9)*pol_z(1,0,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(9)*pol_z(2,0,kg) - coef_xy(1,10)=coef_xy(1,10)+coef_xyz(10)*pol_z(1,0,kg) - coef_xy(2,10)=coef_xy(2,10)+coef_xyz(10)*pol_z(2,0,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(11)*pol_z(1,0,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(11)*pol_z(2,0,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(12)*pol_z(1,0,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(12)*pol_z(2,0,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(13)*pol_z(1,0,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(13)*pol_z(2,0,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(14)*pol_z(1,0,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(14)*pol_z(2,0,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(15)*pol_z(1,0,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(15)*pol_z(2,0,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(16)*pol_z(1,0,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(16)*pol_z(2,0,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(17)*pol_z(1,0,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(17)*pol_z(2,0,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(18)*pol_z(1,0,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(18)*pol_z(2,0,kg) - coef_xy(1,19)=coef_xy(1,19)+coef_xyz(19)*pol_z(1,0,kg) - coef_xy(2,19)=coef_xy(2,19)+coef_xyz(19)*pol_z(2,0,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(20)*pol_z(1,0,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(20)*pol_z(2,0,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(21)*pol_z(1,0,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(21)*pol_z(2,0,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(22)*pol_z(1,0,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(22)*pol_z(2,0,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(23)*pol_z(1,0,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(23)*pol_z(2,0,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(24)*pol_z(1,0,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(24)*pol_z(2,0,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(25)*pol_z(1,0,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(25)*pol_z(2,0,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(26)*pol_z(1,0,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(26)*pol_z(2,0,kg) - coef_xy(1,27)=coef_xy(1,27)+coef_xyz(27)*pol_z(1,0,kg) - coef_xy(2,27)=coef_xy(2,27)+coef_xyz(27)*pol_z(2,0,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(28)*pol_z(1,0,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(28)*pol_z(2,0,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(29)*pol_z(1,0,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(29)*pol_z(2,0,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(30)*pol_z(1,0,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(30)*pol_z(2,0,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(31)*pol_z(1,0,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(31)*pol_z(2,0,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(32)*pol_z(1,0,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(32)*pol_z(2,0,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(33)*pol_z(1,0,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(33)*pol_z(2,0,kg) - coef_xy(1,34)=coef_xy(1,34)+coef_xyz(34)*pol_z(1,0,kg) - coef_xy(2,34)=coef_xy(2,34)+coef_xyz(34)*pol_z(2,0,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(35)*pol_z(1,0,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(35)*pol_z(2,0,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(36)*pol_z(1,0,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(36)*pol_z(2,0,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(37)*pol_z(1,0,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(37)*pol_z(2,0,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(38)*pol_z(1,0,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(38)*pol_z(2,0,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(39)*pol_z(1,0,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(39)*pol_z(2,0,kg) - coef_xy(1,40)=coef_xy(1,40)+coef_xyz(40)*pol_z(1,0,kg) - coef_xy(2,40)=coef_xy(2,40)+coef_xyz(40)*pol_z(2,0,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(41)*pol_z(1,0,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(41)*pol_z(2,0,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(42)*pol_z(1,0,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(42)*pol_z(2,0,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(43)*pol_z(1,0,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(43)*pol_z(2,0,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(44)*pol_z(1,0,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(44)*pol_z(2,0,kg) - coef_xy(1,45)=coef_xy(1,45)+coef_xyz(45)*pol_z(1,0,kg) - coef_xy(2,45)=coef_xy(2,45)+coef_xyz(45)*pol_z(2,0,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(46)*pol_z(1,0,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(46)*pol_z(2,0,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(47)*pol_z(1,0,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(47)*pol_z(2,0,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(48)*pol_z(1,0,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(48)*pol_z(2,0,kg) - coef_xy(1,49)=coef_xy(1,49)+coef_xyz(49)*pol_z(1,0,kg) - coef_xy(2,49)=coef_xy(2,49)+coef_xyz(49)*pol_z(2,0,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(50)*pol_z(1,0,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(50)*pol_z(2,0,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(51)*pol_z(1,0,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(51)*pol_z(2,0,kg) - coef_xy(1,52)=coef_xy(1,52)+coef_xyz(52)*pol_z(1,0,kg) - coef_xy(2,52)=coef_xy(2,52)+coef_xyz(52)*pol_z(2,0,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(53)*pol_z(1,0,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(53)*pol_z(2,0,kg) - coef_xy(1,54)=coef_xy(1,54)+coef_xyz(54)*pol_z(1,0,kg) - coef_xy(2,54)=coef_xy(2,54)+coef_xyz(54)*pol_z(2,0,kg) - coef_xy(1,55)=coef_xy(1,55)+coef_xyz(55)*pol_z(1,0,kg) - coef_xy(2,55)=coef_xy(2,55)+coef_xyz(55)*pol_z(2,0,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(56)*pol_z(1,1,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(56)*pol_z(2,1,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(57)*pol_z(1,1,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(57)*pol_z(2,1,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(58)*pol_z(1,1,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(58)*pol_z(2,1,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(59)*pol_z(1,1,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(59)*pol_z(2,1,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(60)*pol_z(1,1,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(60)*pol_z(2,1,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(61)*pol_z(1,1,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(61)*pol_z(2,1,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(62)*pol_z(1,1,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(62)*pol_z(2,1,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(63)*pol_z(1,1,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(63)*pol_z(2,1,kg) - coef_xy(1,9)=coef_xy(1,9)+coef_xyz(64)*pol_z(1,1,kg) - coef_xy(2,9)=coef_xy(2,9)+coef_xyz(64)*pol_z(2,1,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(65)*pol_z(1,1,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(65)*pol_z(2,1,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(66)*pol_z(1,1,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(66)*pol_z(2,1,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(67)*pol_z(1,1,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(67)*pol_z(2,1,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(68)*pol_z(1,1,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(68)*pol_z(2,1,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(69)*pol_z(1,1,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(69)*pol_z(2,1,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(70)*pol_z(1,1,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(70)*pol_z(2,1,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(71)*pol_z(1,1,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(71)*pol_z(2,1,kg) - coef_xy(1,18)=coef_xy(1,18)+coef_xyz(72)*pol_z(1,1,kg) - coef_xy(2,18)=coef_xy(2,18)+coef_xyz(72)*pol_z(2,1,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(73)*pol_z(1,1,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(73)*pol_z(2,1,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(74)*pol_z(1,1,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(74)*pol_z(2,1,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(75)*pol_z(1,1,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(75)*pol_z(2,1,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(76)*pol_z(1,1,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(76)*pol_z(2,1,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(77)*pol_z(1,1,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(77)*pol_z(2,1,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(78)*pol_z(1,1,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(78)*pol_z(2,1,kg) - coef_xy(1,26)=coef_xy(1,26)+coef_xyz(79)*pol_z(1,1,kg) - coef_xy(2,26)=coef_xy(2,26)+coef_xyz(79)*pol_z(2,1,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(80)*pol_z(1,1,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(80)*pol_z(2,1,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(81)*pol_z(1,1,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(81)*pol_z(2,1,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(82)*pol_z(1,1,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(82)*pol_z(2,1,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(83)*pol_z(1,1,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(83)*pol_z(2,1,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(84)*pol_z(1,1,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(84)*pol_z(2,1,kg) - coef_xy(1,33)=coef_xy(1,33)+coef_xyz(85)*pol_z(1,1,kg) - coef_xy(2,33)=coef_xy(2,33)+coef_xyz(85)*pol_z(2,1,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(86)*pol_z(1,1,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(86)*pol_z(2,1,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(87)*pol_z(1,1,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(87)*pol_z(2,1,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(88)*pol_z(1,1,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(88)*pol_z(2,1,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(89)*pol_z(1,1,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(89)*pol_z(2,1,kg) - coef_xy(1,39)=coef_xy(1,39)+coef_xyz(90)*pol_z(1,1,kg) - coef_xy(2,39)=coef_xy(2,39)+coef_xyz(90)*pol_z(2,1,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(91)*pol_z(1,1,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(91)*pol_z(2,1,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(92)*pol_z(1,1,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(92)*pol_z(2,1,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(93)*pol_z(1,1,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(93)*pol_z(2,1,kg) - coef_xy(1,44)=coef_xy(1,44)+coef_xyz(94)*pol_z(1,1,kg) - coef_xy(2,44)=coef_xy(2,44)+coef_xyz(94)*pol_z(2,1,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(95)*pol_z(1,1,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(95)*pol_z(2,1,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(96)*pol_z(1,1,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(96)*pol_z(2,1,kg) - coef_xy(1,48)=coef_xy(1,48)+coef_xyz(97)*pol_z(1,1,kg) - coef_xy(2,48)=coef_xy(2,48)+coef_xyz(97)*pol_z(2,1,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(98)*pol_z(1,1,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(98)*pol_z(2,1,kg) - coef_xy(1,51)=coef_xy(1,51)+coef_xyz(99)*pol_z(1,1,kg) - coef_xy(2,51)=coef_xy(2,51)+coef_xyz(99)*pol_z(2,1,kg) - coef_xy(1,53)=coef_xy(1,53)+coef_xyz(100)*pol_z(1,1,kg) - coef_xy(2,53)=coef_xy(2,53)+coef_xyz(100)*pol_z(2,1,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(101)*pol_z(1,2,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(101)*pol_z(2,2,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(102)*pol_z(1,2,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(102)*pol_z(2,2,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(103)*pol_z(1,2,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(103)*pol_z(2,2,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(104)*pol_z(1,2,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(104)*pol_z(2,2,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(105)*pol_z(1,2,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(105)*pol_z(2,2,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(106)*pol_z(1,2,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(106)*pol_z(2,2,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(107)*pol_z(1,2,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(107)*pol_z(2,2,kg) - coef_xy(1,8)=coef_xy(1,8)+coef_xyz(108)*pol_z(1,2,kg) - coef_xy(2,8)=coef_xy(2,8)+coef_xyz(108)*pol_z(2,2,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(109)*pol_z(1,2,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(109)*pol_z(2,2,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(110)*pol_z(1,2,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(110)*pol_z(2,2,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(111)*pol_z(1,2,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(111)*pol_z(2,2,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(112)*pol_z(1,2,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(112)*pol_z(2,2,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(113)*pol_z(1,2,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(113)*pol_z(2,2,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(114)*pol_z(1,2,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(114)*pol_z(2,2,kg) - coef_xy(1,17)=coef_xy(1,17)+coef_xyz(115)*pol_z(1,2,kg) - coef_xy(2,17)=coef_xy(2,17)+coef_xyz(115)*pol_z(2,2,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(116)*pol_z(1,2,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(116)*pol_z(2,2,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(117)*pol_z(1,2,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(117)*pol_z(2,2,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(118)*pol_z(1,2,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(118)*pol_z(2,2,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(119)*pol_z(1,2,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(119)*pol_z(2,2,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(120)*pol_z(1,2,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(120)*pol_z(2,2,kg) - coef_xy(1,25)=coef_xy(1,25)+coef_xyz(121)*pol_z(1,2,kg) - coef_xy(2,25)=coef_xy(2,25)+coef_xyz(121)*pol_z(2,2,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(122)*pol_z(1,2,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(122)*pol_z(2,2,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(123)*pol_z(1,2,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(123)*pol_z(2,2,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(124)*pol_z(1,2,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(124)*pol_z(2,2,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(125)*pol_z(1,2,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(125)*pol_z(2,2,kg) - coef_xy(1,32)=coef_xy(1,32)+coef_xyz(126)*pol_z(1,2,kg) - coef_xy(2,32)=coef_xy(2,32)+coef_xyz(126)*pol_z(2,2,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(127)*pol_z(1,2,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(127)*pol_z(2,2,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(128)*pol_z(1,2,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(128)*pol_z(2,2,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(129)*pol_z(1,2,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(129)*pol_z(2,2,kg) - coef_xy(1,38)=coef_xy(1,38)+coef_xyz(130)*pol_z(1,2,kg) - coef_xy(2,38)=coef_xy(2,38)+coef_xyz(130)*pol_z(2,2,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(131)*pol_z(1,2,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(131)*pol_z(2,2,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(132)*pol_z(1,2,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(132)*pol_z(2,2,kg) - coef_xy(1,43)=coef_xy(1,43)+coef_xyz(133)*pol_z(1,2,kg) - coef_xy(2,43)=coef_xy(2,43)+coef_xyz(133)*pol_z(2,2,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(134)*pol_z(1,2,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(134)*pol_z(2,2,kg) - coef_xy(1,47)=coef_xy(1,47)+coef_xyz(135)*pol_z(1,2,kg) - coef_xy(2,47)=coef_xy(2,47)+coef_xyz(135)*pol_z(2,2,kg) - coef_xy(1,50)=coef_xy(1,50)+coef_xyz(136)*pol_z(1,2,kg) - coef_xy(2,50)=coef_xy(2,50)+coef_xyz(136)*pol_z(2,2,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(137)*pol_z(1,3,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(137)*pol_z(2,3,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(138)*pol_z(1,3,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(138)*pol_z(2,3,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(139)*pol_z(1,3,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(139)*pol_z(2,3,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(140)*pol_z(1,3,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(140)*pol_z(2,3,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(141)*pol_z(1,3,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(141)*pol_z(2,3,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(142)*pol_z(1,3,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(142)*pol_z(2,3,kg) - coef_xy(1,7)=coef_xy(1,7)+coef_xyz(143)*pol_z(1,3,kg) - coef_xy(2,7)=coef_xy(2,7)+coef_xyz(143)*pol_z(2,3,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(144)*pol_z(1,3,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(144)*pol_z(2,3,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(145)*pol_z(1,3,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(145)*pol_z(2,3,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(146)*pol_z(1,3,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(146)*pol_z(2,3,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(147)*pol_z(1,3,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(147)*pol_z(2,3,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(148)*pol_z(1,3,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(148)*pol_z(2,3,kg) - coef_xy(1,16)=coef_xy(1,16)+coef_xyz(149)*pol_z(1,3,kg) - coef_xy(2,16)=coef_xy(2,16)+coef_xyz(149)*pol_z(2,3,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(150)*pol_z(1,3,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(150)*pol_z(2,3,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(151)*pol_z(1,3,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(151)*pol_z(2,3,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(152)*pol_z(1,3,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(152)*pol_z(2,3,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(153)*pol_z(1,3,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(153)*pol_z(2,3,kg) - coef_xy(1,24)=coef_xy(1,24)+coef_xyz(154)*pol_z(1,3,kg) - coef_xy(2,24)=coef_xy(2,24)+coef_xyz(154)*pol_z(2,3,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(155)*pol_z(1,3,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(155)*pol_z(2,3,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(156)*pol_z(1,3,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(156)*pol_z(2,3,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(157)*pol_z(1,3,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(157)*pol_z(2,3,kg) - coef_xy(1,31)=coef_xy(1,31)+coef_xyz(158)*pol_z(1,3,kg) - coef_xy(2,31)=coef_xy(2,31)+coef_xyz(158)*pol_z(2,3,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(159)*pol_z(1,3,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(159)*pol_z(2,3,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(160)*pol_z(1,3,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(160)*pol_z(2,3,kg) - coef_xy(1,37)=coef_xy(1,37)+coef_xyz(161)*pol_z(1,3,kg) - coef_xy(2,37)=coef_xy(2,37)+coef_xyz(161)*pol_z(2,3,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(162)*pol_z(1,3,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(162)*pol_z(2,3,kg) - coef_xy(1,42)=coef_xy(1,42)+coef_xyz(163)*pol_z(1,3,kg) - coef_xy(2,42)=coef_xy(2,42)+coef_xyz(163)*pol_z(2,3,kg) - coef_xy(1,46)=coef_xy(1,46)+coef_xyz(164)*pol_z(1,3,kg) - coef_xy(2,46)=coef_xy(2,46)+coef_xyz(164)*pol_z(2,3,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(165)*pol_z(1,4,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(165)*pol_z(2,4,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(166)*pol_z(1,4,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(166)*pol_z(2,4,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(167)*pol_z(1,4,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(167)*pol_z(2,4,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(168)*pol_z(1,4,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(168)*pol_z(2,4,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(169)*pol_z(1,4,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(169)*pol_z(2,4,kg) - coef_xy(1,6)=coef_xy(1,6)+coef_xyz(170)*pol_z(1,4,kg) - coef_xy(2,6)=coef_xy(2,6)+coef_xyz(170)*pol_z(2,4,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(171)*pol_z(1,4,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(171)*pol_z(2,4,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(172)*pol_z(1,4,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(172)*pol_z(2,4,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(173)*pol_z(1,4,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(173)*pol_z(2,4,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(174)*pol_z(1,4,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(174)*pol_z(2,4,kg) - coef_xy(1,15)=coef_xy(1,15)+coef_xyz(175)*pol_z(1,4,kg) - coef_xy(2,15)=coef_xy(2,15)+coef_xyz(175)*pol_z(2,4,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(176)*pol_z(1,4,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(176)*pol_z(2,4,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(177)*pol_z(1,4,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(177)*pol_z(2,4,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(178)*pol_z(1,4,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(178)*pol_z(2,4,kg) - coef_xy(1,23)=coef_xy(1,23)+coef_xyz(179)*pol_z(1,4,kg) - coef_xy(2,23)=coef_xy(2,23)+coef_xyz(179)*pol_z(2,4,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(180)*pol_z(1,4,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(180)*pol_z(2,4,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(181)*pol_z(1,4,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(181)*pol_z(2,4,kg) - coef_xy(1,30)=coef_xy(1,30)+coef_xyz(182)*pol_z(1,4,kg) - coef_xy(2,30)=coef_xy(2,30)+coef_xyz(182)*pol_z(2,4,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(183)*pol_z(1,4,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(183)*pol_z(2,4,kg) - coef_xy(1,36)=coef_xy(1,36)+coef_xyz(184)*pol_z(1,4,kg) - coef_xy(2,36)=coef_xy(2,36)+coef_xyz(184)*pol_z(2,4,kg) - coef_xy(1,41)=coef_xy(1,41)+coef_xyz(185)*pol_z(1,4,kg) - coef_xy(2,41)=coef_xy(2,41)+coef_xyz(185)*pol_z(2,4,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(186)*pol_z(1,5,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(186)*pol_z(2,5,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(187)*pol_z(1,5,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(187)*pol_z(2,5,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(188)*pol_z(1,5,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(188)*pol_z(2,5,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(189)*pol_z(1,5,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(189)*pol_z(2,5,kg) - coef_xy(1,5)=coef_xy(1,5)+coef_xyz(190)*pol_z(1,5,kg) - coef_xy(2,5)=coef_xy(2,5)+coef_xyz(190)*pol_z(2,5,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(191)*pol_z(1,5,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(191)*pol_z(2,5,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(192)*pol_z(1,5,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(192)*pol_z(2,5,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(193)*pol_z(1,5,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(193)*pol_z(2,5,kg) - coef_xy(1,14)=coef_xy(1,14)+coef_xyz(194)*pol_z(1,5,kg) - coef_xy(2,14)=coef_xy(2,14)+coef_xyz(194)*pol_z(2,5,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(195)*pol_z(1,5,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(195)*pol_z(2,5,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(196)*pol_z(1,5,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(196)*pol_z(2,5,kg) - coef_xy(1,22)=coef_xy(1,22)+coef_xyz(197)*pol_z(1,5,kg) - coef_xy(2,22)=coef_xy(2,22)+coef_xyz(197)*pol_z(2,5,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(198)*pol_z(1,5,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(198)*pol_z(2,5,kg) - coef_xy(1,29)=coef_xy(1,29)+coef_xyz(199)*pol_z(1,5,kg) - coef_xy(2,29)=coef_xy(2,29)+coef_xyz(199)*pol_z(2,5,kg) - coef_xy(1,35)=coef_xy(1,35)+coef_xyz(200)*pol_z(1,5,kg) - coef_xy(2,35)=coef_xy(2,35)+coef_xyz(200)*pol_z(2,5,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(201)*pol_z(1,6,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(201)*pol_z(2,6,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(202)*pol_z(1,6,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(202)*pol_z(2,6,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(203)*pol_z(1,6,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(203)*pol_z(2,6,kg) - coef_xy(1,4)=coef_xy(1,4)+coef_xyz(204)*pol_z(1,6,kg) - coef_xy(2,4)=coef_xy(2,4)+coef_xyz(204)*pol_z(2,6,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(205)*pol_z(1,6,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(205)*pol_z(2,6,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(206)*pol_z(1,6,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(206)*pol_z(2,6,kg) - coef_xy(1,13)=coef_xy(1,13)+coef_xyz(207)*pol_z(1,6,kg) - coef_xy(2,13)=coef_xy(2,13)+coef_xyz(207)*pol_z(2,6,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(208)*pol_z(1,6,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(208)*pol_z(2,6,kg) - coef_xy(1,21)=coef_xy(1,21)+coef_xyz(209)*pol_z(1,6,kg) - coef_xy(2,21)=coef_xy(2,21)+coef_xyz(209)*pol_z(2,6,kg) - coef_xy(1,28)=coef_xy(1,28)+coef_xyz(210)*pol_z(1,6,kg) - coef_xy(2,28)=coef_xy(2,28)+coef_xyz(210)*pol_z(2,6,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(211)*pol_z(1,7,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(211)*pol_z(2,7,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(212)*pol_z(1,7,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(212)*pol_z(2,7,kg) - coef_xy(1,3)=coef_xy(1,3)+coef_xyz(213)*pol_z(1,7,kg) - coef_xy(2,3)=coef_xy(2,3)+coef_xyz(213)*pol_z(2,7,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(214)*pol_z(1,7,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(214)*pol_z(2,7,kg) - coef_xy(1,12)=coef_xy(1,12)+coef_xyz(215)*pol_z(1,7,kg) - coef_xy(2,12)=coef_xy(2,12)+coef_xyz(215)*pol_z(2,7,kg) - coef_xy(1,20)=coef_xy(1,20)+coef_xyz(216)*pol_z(1,7,kg) - coef_xy(2,20)=coef_xy(2,20)+coef_xyz(216)*pol_z(2,7,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(217)*pol_z(1,8,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(217)*pol_z(2,8,kg) - coef_xy(1,2)=coef_xy(1,2)+coef_xyz(218)*pol_z(1,8,kg) - coef_xy(2,2)=coef_xy(2,2)+coef_xyz(218)*pol_z(2,8,kg) - coef_xy(1,11)=coef_xy(1,11)+coef_xyz(219)*pol_z(1,8,kg) - coef_xy(2,11)=coef_xy(2,11)+coef_xyz(219)*pol_z(2,8,kg) - coef_xy(1,1)=coef_xy(1,1)+coef_xyz(220)*pol_z(1,9,kg) - coef_xy(2,1)=coef_xy(2,1)+coef_xyz(220)*pol_z(2,9,kg) - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - coef_x=0.0_dp - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,1)*pol_y(1,0,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,1)*pol_y(2,0,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,2)*pol_y(1,0,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,2)*pol_y(2,0,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,3)*pol_y(1,0,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,3)*pol_y(2,0,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,4)*pol_y(1,0,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,4)*pol_y(2,0,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,5)*pol_y(1,0,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,5)*pol_y(2,0,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,6)*pol_y(1,0,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,6)*pol_y(2,0,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,7)*pol_y(1,0,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,7)*pol_y(2,0,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,8)*pol_y(1,0,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,8)*pol_y(2,0,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,9)*pol_y(1,0,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,9)*pol_y(2,0,jg) - coef_x(1:2,9)=coef_x(1:2,9)+coef_xy(1:2,10)*pol_y(1,0,jg) - coef_x(3:4,9)=coef_x(3:4,9)+coef_xy(1:2,10)*pol_y(2,0,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,11)*pol_y(1,1,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,11)*pol_y(2,1,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,12)*pol_y(1,1,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,12)*pol_y(2,1,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,13)*pol_y(1,1,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,13)*pol_y(2,1,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,14)*pol_y(1,1,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,14)*pol_y(2,1,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,15)*pol_y(1,1,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,15)*pol_y(2,1,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,16)*pol_y(1,1,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,16)*pol_y(2,1,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,17)*pol_y(1,1,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,17)*pol_y(2,1,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,18)*pol_y(1,1,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,18)*pol_y(2,1,jg) - coef_x(1:2,8)=coef_x(1:2,8)+coef_xy(1:2,19)*pol_y(1,1,jg) - coef_x(3:4,8)=coef_x(3:4,8)+coef_xy(1:2,19)*pol_y(2,1,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,20)*pol_y(1,2,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,20)*pol_y(2,2,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,21)*pol_y(1,2,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,21)*pol_y(2,2,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,22)*pol_y(1,2,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,22)*pol_y(2,2,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,23)*pol_y(1,2,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,23)*pol_y(2,2,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,24)*pol_y(1,2,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,24)*pol_y(2,2,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,25)*pol_y(1,2,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,25)*pol_y(2,2,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,26)*pol_y(1,2,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,26)*pol_y(2,2,jg) - coef_x(1:2,7)=coef_x(1:2,7)+coef_xy(1:2,27)*pol_y(1,2,jg) - coef_x(3:4,7)=coef_x(3:4,7)+coef_xy(1:2,27)*pol_y(2,2,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,28)*pol_y(1,3,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,28)*pol_y(2,3,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,29)*pol_y(1,3,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,29)*pol_y(2,3,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,30)*pol_y(1,3,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,30)*pol_y(2,3,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,31)*pol_y(1,3,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,31)*pol_y(2,3,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,32)*pol_y(1,3,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,32)*pol_y(2,3,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,33)*pol_y(1,3,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,33)*pol_y(2,3,jg) - coef_x(1:2,6)=coef_x(1:2,6)+coef_xy(1:2,34)*pol_y(1,3,jg) - coef_x(3:4,6)=coef_x(3:4,6)+coef_xy(1:2,34)*pol_y(2,3,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,35)*pol_y(1,4,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,35)*pol_y(2,4,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,36)*pol_y(1,4,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,36)*pol_y(2,4,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,37)*pol_y(1,4,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,37)*pol_y(2,4,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,38)*pol_y(1,4,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,38)*pol_y(2,4,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,39)*pol_y(1,4,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,39)*pol_y(2,4,jg) - coef_x(1:2,5)=coef_x(1:2,5)+coef_xy(1:2,40)*pol_y(1,4,jg) - coef_x(3:4,5)=coef_x(3:4,5)+coef_xy(1:2,40)*pol_y(2,4,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,41)*pol_y(1,5,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,41)*pol_y(2,5,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,42)*pol_y(1,5,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,42)*pol_y(2,5,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,43)*pol_y(1,5,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,43)*pol_y(2,5,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,44)*pol_y(1,5,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,44)*pol_y(2,5,jg) - coef_x(1:2,4)=coef_x(1:2,4)+coef_xy(1:2,45)*pol_y(1,5,jg) - coef_x(3:4,4)=coef_x(3:4,4)+coef_xy(1:2,45)*pol_y(2,5,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,46)*pol_y(1,6,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,46)*pol_y(2,6,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,47)*pol_y(1,6,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,47)*pol_y(2,6,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,48)*pol_y(1,6,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,48)*pol_y(2,6,jg) - coef_x(1:2,3)=coef_x(1:2,3)+coef_xy(1:2,49)*pol_y(1,6,jg) - coef_x(3:4,3)=coef_x(3:4,3)+coef_xy(1:2,49)*pol_y(2,6,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,50)*pol_y(1,7,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,50)*pol_y(2,7,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,51)*pol_y(1,7,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,51)*pol_y(2,7,jg) - coef_x(1:2,2)=coef_x(1:2,2)+coef_xy(1:2,52)*pol_y(1,7,jg) - coef_x(3:4,2)=coef_x(3:4,2)+coef_xy(1:2,52)*pol_y(2,7,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,53)*pol_y(1,8,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,53)*pol_y(2,8,jg) - coef_x(1:2,1)=coef_x(1:2,1)+coef_xy(1:2,54)*pol_y(1,8,jg) - coef_x(3:4,1)=coef_x(3:4,1)+coef_xy(1:2,54)*pol_y(2,8,jg) - coef_x(1:2,0)=coef_x(1:2,0)+coef_xy(1:2,55)*pol_y(1,9,jg) - coef_x(3:4,0)=coef_x(3:4,0)+coef_xy(1:2,55)*pol_y(2,9,jg) - DO ig=igmin,igmax - i=map(ig,1) - s01=0.0_dp - s02=0.0_dp - s03=0.0_dp - s04=0.0_dp - s01=s01+coef_x(1,0)*pol_x(0,ig) - s02=s02+coef_x(2,0)*pol_x(0,ig) - s03=s03+coef_x(3,0)*pol_x(0,ig) - s04=s04+coef_x(4,0)*pol_x(0,ig) - s01=s01+coef_x(1,1)*pol_x(1,ig) - s02=s02+coef_x(2,1)*pol_x(1,ig) - s03=s03+coef_x(3,1)*pol_x(1,ig) - s04=s04+coef_x(4,1)*pol_x(1,ig) - s01=s01+coef_x(1,2)*pol_x(2,ig) - s02=s02+coef_x(2,2)*pol_x(2,ig) - s03=s03+coef_x(3,2)*pol_x(2,ig) - s04=s04+coef_x(4,2)*pol_x(2,ig) - s01=s01+coef_x(1,3)*pol_x(3,ig) - s02=s02+coef_x(2,3)*pol_x(3,ig) - s03=s03+coef_x(3,3)*pol_x(3,ig) - s04=s04+coef_x(4,3)*pol_x(3,ig) - s01=s01+coef_x(1,4)*pol_x(4,ig) - s02=s02+coef_x(2,4)*pol_x(4,ig) - s03=s03+coef_x(3,4)*pol_x(4,ig) - s04=s04+coef_x(4,4)*pol_x(4,ig) - s01=s01+coef_x(1,5)*pol_x(5,ig) - s02=s02+coef_x(2,5)*pol_x(5,ig) - s03=s03+coef_x(3,5)*pol_x(5,ig) - s04=s04+coef_x(4,5)*pol_x(5,ig) - s01=s01+coef_x(1,6)*pol_x(6,ig) - s02=s02+coef_x(2,6)*pol_x(6,ig) - s03=s03+coef_x(3,6)*pol_x(6,ig) - s04=s04+coef_x(4,6)*pol_x(6,ig) - s01=s01+coef_x(1,7)*pol_x(7,ig) - s02=s02+coef_x(2,7)*pol_x(7,ig) - s03=s03+coef_x(3,7)*pol_x(7,ig) - s04=s04+coef_x(4,7)*pol_x(7,ig) - s01=s01+coef_x(1,8)*pol_x(8,ig) - s02=s02+coef_x(2,8)*pol_x(8,ig) - s03=s03+coef_x(3,8)*pol_x(8,ig) - s04=s04+coef_x(4,8)*pol_x(8,ig) - s01=s01+coef_x(1,9)*pol_x(9,ig) - s02=s02+coef_x(2,9)*pol_x(9,ig) - s03=s03+coef_x(3,9)*pol_x(9,ig) - s04=s04+coef_x(4,9)*pol_x(9,ig) - grid(i,j,k) = grid(i,j,k) + s01 - grid(i,j2,k) = grid(i,j2,k) + s03 - grid(i,j,k2) = grid(i,j,k2) + s02 - grid(i,j2,k2) = grid(i,j2,k2) + s04 - END DO - END DO - END DO + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) + coef_xy = 0.0_dp + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(1)*pol_z(1, 0, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(1)*pol_z(2, 0, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(2)*pol_z(1, 0, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(2)*pol_z(2, 0, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(3)*pol_z(1, 0, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(3)*pol_z(2, 0, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(4)*pol_z(1, 0, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(4)*pol_z(2, 0, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(5)*pol_z(1, 0, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(5)*pol_z(2, 0, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(6)*pol_z(1, 0, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(6)*pol_z(2, 0, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(7)*pol_z(1, 0, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(7)*pol_z(2, 0, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(8)*pol_z(1, 0, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(8)*pol_z(2, 0, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(9)*pol_z(1, 0, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(9)*pol_z(2, 0, kg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_xyz(10)*pol_z(1, 0, kg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_xyz(10)*pol_z(2, 0, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(11)*pol_z(1, 0, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(11)*pol_z(2, 0, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(12)*pol_z(1, 0, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(12)*pol_z(2, 0, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(13)*pol_z(1, 0, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(13)*pol_z(2, 0, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(14)*pol_z(1, 0, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(14)*pol_z(2, 0, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(15)*pol_z(1, 0, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(15)*pol_z(2, 0, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(16)*pol_z(1, 0, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(16)*pol_z(2, 0, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(17)*pol_z(1, 0, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(17)*pol_z(2, 0, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(18)*pol_z(1, 0, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(18)*pol_z(2, 0, kg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_xyz(19)*pol_z(1, 0, kg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_xyz(19)*pol_z(2, 0, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(20)*pol_z(1, 0, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(20)*pol_z(2, 0, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(21)*pol_z(1, 0, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(21)*pol_z(2, 0, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(22)*pol_z(1, 0, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(22)*pol_z(2, 0, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(23)*pol_z(1, 0, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(23)*pol_z(2, 0, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(24)*pol_z(1, 0, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(24)*pol_z(2, 0, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(25)*pol_z(1, 0, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(25)*pol_z(2, 0, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(26)*pol_z(1, 0, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(26)*pol_z(2, 0, kg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_xyz(27)*pol_z(1, 0, kg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_xyz(27)*pol_z(2, 0, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(28)*pol_z(1, 0, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(28)*pol_z(2, 0, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(29)*pol_z(1, 0, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(29)*pol_z(2, 0, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(30)*pol_z(1, 0, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(30)*pol_z(2, 0, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(31)*pol_z(1, 0, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(31)*pol_z(2, 0, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(32)*pol_z(1, 0, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(32)*pol_z(2, 0, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(33)*pol_z(1, 0, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(33)*pol_z(2, 0, kg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_xyz(34)*pol_z(1, 0, kg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_xyz(34)*pol_z(2, 0, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(35)*pol_z(1, 0, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(35)*pol_z(2, 0, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(36)*pol_z(1, 0, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(36)*pol_z(2, 0, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(37)*pol_z(1, 0, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(37)*pol_z(2, 0, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(38)*pol_z(1, 0, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(38)*pol_z(2, 0, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(39)*pol_z(1, 0, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(39)*pol_z(2, 0, kg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_xyz(40)*pol_z(1, 0, kg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_xyz(40)*pol_z(2, 0, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(41)*pol_z(1, 0, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(41)*pol_z(2, 0, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(42)*pol_z(1, 0, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(42)*pol_z(2, 0, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(43)*pol_z(1, 0, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(43)*pol_z(2, 0, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(44)*pol_z(1, 0, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(44)*pol_z(2, 0, kg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_xyz(45)*pol_z(1, 0, kg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_xyz(45)*pol_z(2, 0, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(46)*pol_z(1, 0, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(46)*pol_z(2, 0, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(47)*pol_z(1, 0, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(47)*pol_z(2, 0, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(48)*pol_z(1, 0, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(48)*pol_z(2, 0, kg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_xyz(49)*pol_z(1, 0, kg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_xyz(49)*pol_z(2, 0, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(50)*pol_z(1, 0, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(50)*pol_z(2, 0, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(51)*pol_z(1, 0, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(51)*pol_z(2, 0, kg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_xyz(52)*pol_z(1, 0, kg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_xyz(52)*pol_z(2, 0, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(53)*pol_z(1, 0, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(53)*pol_z(2, 0, kg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_xyz(54)*pol_z(1, 0, kg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_xyz(54)*pol_z(2, 0, kg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_xyz(55)*pol_z(1, 0, kg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_xyz(55)*pol_z(2, 0, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(56)*pol_z(1, 1, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(56)*pol_z(2, 1, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(57)*pol_z(1, 1, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(57)*pol_z(2, 1, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(58)*pol_z(1, 1, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(58)*pol_z(2, 1, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(59)*pol_z(1, 1, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(59)*pol_z(2, 1, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(60)*pol_z(1, 1, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(60)*pol_z(2, 1, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(61)*pol_z(1, 1, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(61)*pol_z(2, 1, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(62)*pol_z(1, 1, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(62)*pol_z(2, 1, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(63)*pol_z(1, 1, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(63)*pol_z(2, 1, kg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_xyz(64)*pol_z(1, 1, kg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_xyz(64)*pol_z(2, 1, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(65)*pol_z(1, 1, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(65)*pol_z(2, 1, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(66)*pol_z(1, 1, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(66)*pol_z(2, 1, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(67)*pol_z(1, 1, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(67)*pol_z(2, 1, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(68)*pol_z(1, 1, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(68)*pol_z(2, 1, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(69)*pol_z(1, 1, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(69)*pol_z(2, 1, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(70)*pol_z(1, 1, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(70)*pol_z(2, 1, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(71)*pol_z(1, 1, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(71)*pol_z(2, 1, kg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_xyz(72)*pol_z(1, 1, kg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_xyz(72)*pol_z(2, 1, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(73)*pol_z(1, 1, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(73)*pol_z(2, 1, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(74)*pol_z(1, 1, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(74)*pol_z(2, 1, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(75)*pol_z(1, 1, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(75)*pol_z(2, 1, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(76)*pol_z(1, 1, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(76)*pol_z(2, 1, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(77)*pol_z(1, 1, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(77)*pol_z(2, 1, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(78)*pol_z(1, 1, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(78)*pol_z(2, 1, kg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_xyz(79)*pol_z(1, 1, kg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_xyz(79)*pol_z(2, 1, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(80)*pol_z(1, 1, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(80)*pol_z(2, 1, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(81)*pol_z(1, 1, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(81)*pol_z(2, 1, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(82)*pol_z(1, 1, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(82)*pol_z(2, 1, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(83)*pol_z(1, 1, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(83)*pol_z(2, 1, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(84)*pol_z(1, 1, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(84)*pol_z(2, 1, kg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_xyz(85)*pol_z(1, 1, kg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_xyz(85)*pol_z(2, 1, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(86)*pol_z(1, 1, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(86)*pol_z(2, 1, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(87)*pol_z(1, 1, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(87)*pol_z(2, 1, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(88)*pol_z(1, 1, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(88)*pol_z(2, 1, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(89)*pol_z(1, 1, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(89)*pol_z(2, 1, kg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_xyz(90)*pol_z(1, 1, kg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_xyz(90)*pol_z(2, 1, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(91)*pol_z(1, 1, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(91)*pol_z(2, 1, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(92)*pol_z(1, 1, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(92)*pol_z(2, 1, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(93)*pol_z(1, 1, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(93)*pol_z(2, 1, kg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_xyz(94)*pol_z(1, 1, kg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_xyz(94)*pol_z(2, 1, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(95)*pol_z(1, 1, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(95)*pol_z(2, 1, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(96)*pol_z(1, 1, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(96)*pol_z(2, 1, kg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_xyz(97)*pol_z(1, 1, kg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_xyz(97)*pol_z(2, 1, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(98)*pol_z(1, 1, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(98)*pol_z(2, 1, kg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_xyz(99)*pol_z(1, 1, kg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_xyz(99)*pol_z(2, 1, kg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_xyz(100)*pol_z(1, 1, kg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_xyz(100)*pol_z(2, 1, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(101)*pol_z(1, 2, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(101)*pol_z(2, 2, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(102)*pol_z(1, 2, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(102)*pol_z(2, 2, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(103)*pol_z(1, 2, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(103)*pol_z(2, 2, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(104)*pol_z(1, 2, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(104)*pol_z(2, 2, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(105)*pol_z(1, 2, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(105)*pol_z(2, 2, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(106)*pol_z(1, 2, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(106)*pol_z(2, 2, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(107)*pol_z(1, 2, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(107)*pol_z(2, 2, kg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_xyz(108)*pol_z(1, 2, kg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_xyz(108)*pol_z(2, 2, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(109)*pol_z(1, 2, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(109)*pol_z(2, 2, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(110)*pol_z(1, 2, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(110)*pol_z(2, 2, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(111)*pol_z(1, 2, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(111)*pol_z(2, 2, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(112)*pol_z(1, 2, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(112)*pol_z(2, 2, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(113)*pol_z(1, 2, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(113)*pol_z(2, 2, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(114)*pol_z(1, 2, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(114)*pol_z(2, 2, kg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_xyz(115)*pol_z(1, 2, kg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_xyz(115)*pol_z(2, 2, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(116)*pol_z(1, 2, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(116)*pol_z(2, 2, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(117)*pol_z(1, 2, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(117)*pol_z(2, 2, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(118)*pol_z(1, 2, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(118)*pol_z(2, 2, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(119)*pol_z(1, 2, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(119)*pol_z(2, 2, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(120)*pol_z(1, 2, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(120)*pol_z(2, 2, kg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_xyz(121)*pol_z(1, 2, kg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_xyz(121)*pol_z(2, 2, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(122)*pol_z(1, 2, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(122)*pol_z(2, 2, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(123)*pol_z(1, 2, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(123)*pol_z(2, 2, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(124)*pol_z(1, 2, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(124)*pol_z(2, 2, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(125)*pol_z(1, 2, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(125)*pol_z(2, 2, kg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_xyz(126)*pol_z(1, 2, kg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_xyz(126)*pol_z(2, 2, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(127)*pol_z(1, 2, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(127)*pol_z(2, 2, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(128)*pol_z(1, 2, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(128)*pol_z(2, 2, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(129)*pol_z(1, 2, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(129)*pol_z(2, 2, kg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_xyz(130)*pol_z(1, 2, kg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_xyz(130)*pol_z(2, 2, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(131)*pol_z(1, 2, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(131)*pol_z(2, 2, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(132)*pol_z(1, 2, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(132)*pol_z(2, 2, kg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_xyz(133)*pol_z(1, 2, kg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_xyz(133)*pol_z(2, 2, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(134)*pol_z(1, 2, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(134)*pol_z(2, 2, kg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_xyz(135)*pol_z(1, 2, kg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_xyz(135)*pol_z(2, 2, kg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_xyz(136)*pol_z(1, 2, kg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_xyz(136)*pol_z(2, 2, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(137)*pol_z(1, 3, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(137)*pol_z(2, 3, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(138)*pol_z(1, 3, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(138)*pol_z(2, 3, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(139)*pol_z(1, 3, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(139)*pol_z(2, 3, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(140)*pol_z(1, 3, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(140)*pol_z(2, 3, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(141)*pol_z(1, 3, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(141)*pol_z(2, 3, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(142)*pol_z(1, 3, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(142)*pol_z(2, 3, kg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_xyz(143)*pol_z(1, 3, kg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_xyz(143)*pol_z(2, 3, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(144)*pol_z(1, 3, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(144)*pol_z(2, 3, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(145)*pol_z(1, 3, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(145)*pol_z(2, 3, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(146)*pol_z(1, 3, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(146)*pol_z(2, 3, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(147)*pol_z(1, 3, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(147)*pol_z(2, 3, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(148)*pol_z(1, 3, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(148)*pol_z(2, 3, kg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_xyz(149)*pol_z(1, 3, kg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_xyz(149)*pol_z(2, 3, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(150)*pol_z(1, 3, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(150)*pol_z(2, 3, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(151)*pol_z(1, 3, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(151)*pol_z(2, 3, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(152)*pol_z(1, 3, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(152)*pol_z(2, 3, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(153)*pol_z(1, 3, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(153)*pol_z(2, 3, kg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_xyz(154)*pol_z(1, 3, kg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_xyz(154)*pol_z(2, 3, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(155)*pol_z(1, 3, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(155)*pol_z(2, 3, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(156)*pol_z(1, 3, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(156)*pol_z(2, 3, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(157)*pol_z(1, 3, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(157)*pol_z(2, 3, kg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_xyz(158)*pol_z(1, 3, kg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_xyz(158)*pol_z(2, 3, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(159)*pol_z(1, 3, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(159)*pol_z(2, 3, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(160)*pol_z(1, 3, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(160)*pol_z(2, 3, kg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_xyz(161)*pol_z(1, 3, kg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_xyz(161)*pol_z(2, 3, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(162)*pol_z(1, 3, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(162)*pol_z(2, 3, kg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_xyz(163)*pol_z(1, 3, kg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_xyz(163)*pol_z(2, 3, kg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_xyz(164)*pol_z(1, 3, kg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_xyz(164)*pol_z(2, 3, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(165)*pol_z(1, 4, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(165)*pol_z(2, 4, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(166)*pol_z(1, 4, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(166)*pol_z(2, 4, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(167)*pol_z(1, 4, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(167)*pol_z(2, 4, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(168)*pol_z(1, 4, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(168)*pol_z(2, 4, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(169)*pol_z(1, 4, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(169)*pol_z(2, 4, kg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_xyz(170)*pol_z(1, 4, kg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_xyz(170)*pol_z(2, 4, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(171)*pol_z(1, 4, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(171)*pol_z(2, 4, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(172)*pol_z(1, 4, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(172)*pol_z(2, 4, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(173)*pol_z(1, 4, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(173)*pol_z(2, 4, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(174)*pol_z(1, 4, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(174)*pol_z(2, 4, kg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_xyz(175)*pol_z(1, 4, kg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_xyz(175)*pol_z(2, 4, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(176)*pol_z(1, 4, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(176)*pol_z(2, 4, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(177)*pol_z(1, 4, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(177)*pol_z(2, 4, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(178)*pol_z(1, 4, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(178)*pol_z(2, 4, kg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_xyz(179)*pol_z(1, 4, kg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_xyz(179)*pol_z(2, 4, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(180)*pol_z(1, 4, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(180)*pol_z(2, 4, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(181)*pol_z(1, 4, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(181)*pol_z(2, 4, kg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_xyz(182)*pol_z(1, 4, kg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_xyz(182)*pol_z(2, 4, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(183)*pol_z(1, 4, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(183)*pol_z(2, 4, kg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_xyz(184)*pol_z(1, 4, kg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_xyz(184)*pol_z(2, 4, kg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_xyz(185)*pol_z(1, 4, kg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_xyz(185)*pol_z(2, 4, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(186)*pol_z(1, 5, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(186)*pol_z(2, 5, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(187)*pol_z(1, 5, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(187)*pol_z(2, 5, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(188)*pol_z(1, 5, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(188)*pol_z(2, 5, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(189)*pol_z(1, 5, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(189)*pol_z(2, 5, kg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_xyz(190)*pol_z(1, 5, kg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_xyz(190)*pol_z(2, 5, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(191)*pol_z(1, 5, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(191)*pol_z(2, 5, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(192)*pol_z(1, 5, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(192)*pol_z(2, 5, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(193)*pol_z(1, 5, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(193)*pol_z(2, 5, kg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_xyz(194)*pol_z(1, 5, kg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_xyz(194)*pol_z(2, 5, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(195)*pol_z(1, 5, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(195)*pol_z(2, 5, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(196)*pol_z(1, 5, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(196)*pol_z(2, 5, kg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_xyz(197)*pol_z(1, 5, kg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_xyz(197)*pol_z(2, 5, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(198)*pol_z(1, 5, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(198)*pol_z(2, 5, kg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_xyz(199)*pol_z(1, 5, kg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_xyz(199)*pol_z(2, 5, kg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_xyz(200)*pol_z(1, 5, kg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_xyz(200)*pol_z(2, 5, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(201)*pol_z(1, 6, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(201)*pol_z(2, 6, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(202)*pol_z(1, 6, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(202)*pol_z(2, 6, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(203)*pol_z(1, 6, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(203)*pol_z(2, 6, kg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_xyz(204)*pol_z(1, 6, kg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_xyz(204)*pol_z(2, 6, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(205)*pol_z(1, 6, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(205)*pol_z(2, 6, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(206)*pol_z(1, 6, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(206)*pol_z(2, 6, kg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_xyz(207)*pol_z(1, 6, kg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_xyz(207)*pol_z(2, 6, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(208)*pol_z(1, 6, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(208)*pol_z(2, 6, kg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_xyz(209)*pol_z(1, 6, kg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_xyz(209)*pol_z(2, 6, kg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_xyz(210)*pol_z(1, 6, kg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_xyz(210)*pol_z(2, 6, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(211)*pol_z(1, 7, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(211)*pol_z(2, 7, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(212)*pol_z(1, 7, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(212)*pol_z(2, 7, kg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_xyz(213)*pol_z(1, 7, kg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_xyz(213)*pol_z(2, 7, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(214)*pol_z(1, 7, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(214)*pol_z(2, 7, kg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_xyz(215)*pol_z(1, 7, kg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_xyz(215)*pol_z(2, 7, kg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_xyz(216)*pol_z(1, 7, kg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_xyz(216)*pol_z(2, 7, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(217)*pol_z(1, 8, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(217)*pol_z(2, 8, kg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_xyz(218)*pol_z(1, 8, kg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_xyz(218)*pol_z(2, 8, kg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_xyz(219)*pol_z(1, 8, kg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_xyz(219)*pol_z(2, 8, kg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_xyz(220)*pol_z(1, 9, kg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_xyz(220)*pol_z(2, 9, kg) + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin + coef_x = 0.0_dp + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 1)*pol_y(1, 0, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 1)*pol_y(2, 0, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 2)*pol_y(1, 0, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 2)*pol_y(2, 0, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 3)*pol_y(1, 0, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 3)*pol_y(2, 0, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 4)*pol_y(1, 0, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 4)*pol_y(2, 0, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 5)*pol_y(1, 0, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 5)*pol_y(2, 0, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 6)*pol_y(1, 0, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 6)*pol_y(2, 0, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 7)*pol_y(1, 0, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 7)*pol_y(2, 0, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 8)*pol_y(1, 0, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 8)*pol_y(2, 0, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 9)*pol_y(1, 0, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 9)*pol_y(2, 0, jg) + coef_x(1:2, 9) = coef_x(1:2, 9)+coef_xy(1:2, 10)*pol_y(1, 0, jg) + coef_x(3:4, 9) = coef_x(3:4, 9)+coef_xy(1:2, 10)*pol_y(2, 0, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 11)*pol_y(1, 1, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 11)*pol_y(2, 1, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 12)*pol_y(1, 1, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 12)*pol_y(2, 1, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 13)*pol_y(1, 1, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 13)*pol_y(2, 1, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 14)*pol_y(1, 1, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 14)*pol_y(2, 1, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 15)*pol_y(1, 1, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 15)*pol_y(2, 1, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 16)*pol_y(1, 1, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 16)*pol_y(2, 1, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 17)*pol_y(1, 1, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 17)*pol_y(2, 1, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 18)*pol_y(1, 1, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 18)*pol_y(2, 1, jg) + coef_x(1:2, 8) = coef_x(1:2, 8)+coef_xy(1:2, 19)*pol_y(1, 1, jg) + coef_x(3:4, 8) = coef_x(3:4, 8)+coef_xy(1:2, 19)*pol_y(2, 1, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 20)*pol_y(1, 2, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 20)*pol_y(2, 2, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 21)*pol_y(1, 2, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 21)*pol_y(2, 2, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 22)*pol_y(1, 2, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 22)*pol_y(2, 2, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 23)*pol_y(1, 2, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 23)*pol_y(2, 2, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 24)*pol_y(1, 2, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 24)*pol_y(2, 2, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 25)*pol_y(1, 2, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 25)*pol_y(2, 2, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 26)*pol_y(1, 2, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 26)*pol_y(2, 2, jg) + coef_x(1:2, 7) = coef_x(1:2, 7)+coef_xy(1:2, 27)*pol_y(1, 2, jg) + coef_x(3:4, 7) = coef_x(3:4, 7)+coef_xy(1:2, 27)*pol_y(2, 2, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 28)*pol_y(1, 3, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 28)*pol_y(2, 3, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 29)*pol_y(1, 3, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 29)*pol_y(2, 3, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 30)*pol_y(1, 3, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 30)*pol_y(2, 3, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 31)*pol_y(1, 3, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 31)*pol_y(2, 3, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 32)*pol_y(1, 3, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 32)*pol_y(2, 3, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 33)*pol_y(1, 3, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 33)*pol_y(2, 3, jg) + coef_x(1:2, 6) = coef_x(1:2, 6)+coef_xy(1:2, 34)*pol_y(1, 3, jg) + coef_x(3:4, 6) = coef_x(3:4, 6)+coef_xy(1:2, 34)*pol_y(2, 3, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 35)*pol_y(1, 4, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 35)*pol_y(2, 4, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 36)*pol_y(1, 4, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 36)*pol_y(2, 4, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 37)*pol_y(1, 4, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 37)*pol_y(2, 4, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 38)*pol_y(1, 4, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 38)*pol_y(2, 4, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 39)*pol_y(1, 4, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 39)*pol_y(2, 4, jg) + coef_x(1:2, 5) = coef_x(1:2, 5)+coef_xy(1:2, 40)*pol_y(1, 4, jg) + coef_x(3:4, 5) = coef_x(3:4, 5)+coef_xy(1:2, 40)*pol_y(2, 4, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 41)*pol_y(1, 5, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 41)*pol_y(2, 5, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 42)*pol_y(1, 5, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 42)*pol_y(2, 5, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 43)*pol_y(1, 5, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 43)*pol_y(2, 5, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 44)*pol_y(1, 5, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 44)*pol_y(2, 5, jg) + coef_x(1:2, 4) = coef_x(1:2, 4)+coef_xy(1:2, 45)*pol_y(1, 5, jg) + coef_x(3:4, 4) = coef_x(3:4, 4)+coef_xy(1:2, 45)*pol_y(2, 5, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 46)*pol_y(1, 6, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 46)*pol_y(2, 6, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 47)*pol_y(1, 6, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 47)*pol_y(2, 6, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 48)*pol_y(1, 6, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 48)*pol_y(2, 6, jg) + coef_x(1:2, 3) = coef_x(1:2, 3)+coef_xy(1:2, 49)*pol_y(1, 6, jg) + coef_x(3:4, 3) = coef_x(3:4, 3)+coef_xy(1:2, 49)*pol_y(2, 6, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 50)*pol_y(1, 7, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 50)*pol_y(2, 7, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 51)*pol_y(1, 7, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 51)*pol_y(2, 7, jg) + coef_x(1:2, 2) = coef_x(1:2, 2)+coef_xy(1:2, 52)*pol_y(1, 7, jg) + coef_x(3:4, 2) = coef_x(3:4, 2)+coef_xy(1:2, 52)*pol_y(2, 7, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 53)*pol_y(1, 8, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 53)*pol_y(2, 8, jg) + coef_x(1:2, 1) = coef_x(1:2, 1)+coef_xy(1:2, 54)*pol_y(1, 8, jg) + coef_x(3:4, 1) = coef_x(3:4, 1)+coef_xy(1:2, 54)*pol_y(2, 8, jg) + coef_x(1:2, 0) = coef_x(1:2, 0)+coef_xy(1:2, 55)*pol_y(1, 9, jg) + coef_x(3:4, 0) = coef_x(3:4, 0)+coef_xy(1:2, 55)*pol_y(2, 9, jg) + DO ig = igmin, igmax + i = map(ig, 1) + s01 = 0.0_dp + s02 = 0.0_dp + s03 = 0.0_dp + s04 = 0.0_dp + s01 = s01+coef_x(1, 0)*pol_x(0, ig) + s02 = s02+coef_x(2, 0)*pol_x(0, ig) + s03 = s03+coef_x(3, 0)*pol_x(0, ig) + s04 = s04+coef_x(4, 0)*pol_x(0, ig) + s01 = s01+coef_x(1, 1)*pol_x(1, ig) + s02 = s02+coef_x(2, 1)*pol_x(1, ig) + s03 = s03+coef_x(3, 1)*pol_x(1, ig) + s04 = s04+coef_x(4, 1)*pol_x(1, ig) + s01 = s01+coef_x(1, 2)*pol_x(2, ig) + s02 = s02+coef_x(2, 2)*pol_x(2, ig) + s03 = s03+coef_x(3, 2)*pol_x(2, ig) + s04 = s04+coef_x(4, 2)*pol_x(2, ig) + s01 = s01+coef_x(1, 3)*pol_x(3, ig) + s02 = s02+coef_x(2, 3)*pol_x(3, ig) + s03 = s03+coef_x(3, 3)*pol_x(3, ig) + s04 = s04+coef_x(4, 3)*pol_x(3, ig) + s01 = s01+coef_x(1, 4)*pol_x(4, ig) + s02 = s02+coef_x(2, 4)*pol_x(4, ig) + s03 = s03+coef_x(3, 4)*pol_x(4, ig) + s04 = s04+coef_x(4, 4)*pol_x(4, ig) + s01 = s01+coef_x(1, 5)*pol_x(5, ig) + s02 = s02+coef_x(2, 5)*pol_x(5, ig) + s03 = s03+coef_x(3, 5)*pol_x(5, ig) + s04 = s04+coef_x(4, 5)*pol_x(5, ig) + s01 = s01+coef_x(1, 6)*pol_x(6, ig) + s02 = s02+coef_x(2, 6)*pol_x(6, ig) + s03 = s03+coef_x(3, 6)*pol_x(6, ig) + s04 = s04+coef_x(4, 6)*pol_x(6, ig) + s01 = s01+coef_x(1, 7)*pol_x(7, ig) + s02 = s02+coef_x(2, 7)*pol_x(7, ig) + s03 = s03+coef_x(3, 7)*pol_x(7, ig) + s04 = s04+coef_x(4, 7)*pol_x(7, ig) + s01 = s01+coef_x(1, 8)*pol_x(8, ig) + s02 = s02+coef_x(2, 8)*pol_x(8, ig) + s03 = s03+coef_x(3, 8)*pol_x(8, ig) + s04 = s04+coef_x(4, 8)*pol_x(8, ig) + s01 = s01+coef_x(1, 9)*pol_x(9, ig) + s02 = s02+coef_x(2, 9)*pol_x(9, ig) + s03 = s03+coef_x(3, 9)*pol_x(9, ig) + s04 = s04+coef_x(4, 9)*pol_x(9, ig) + grid(i, j, k) = grid(i, j, k)+s01 + grid(i, j2, k) = grid(i, j2, k)+s03 + grid(i, j, k2) = grid(i, j, k2)+s02 + grid(i, j2, k2) = grid(i, j2, k2)+s04 + END DO + END DO + END DO END SUBROUTINE collocate_core_9 diff --git a/src/grid/integrate_fast.f90 b/src/grid/integrate_fast.f90 index 8fc653cf50..35951a4dbf 100644 --- a/src/grid/integrate_fast.f90 +++ b/src/grid/integrate_fast.f90 @@ -3,7 +3,7 @@ ! the included fortran files represent the same kernel, with a fortran representation that optimizes best for a given compiler #ifdef __HAS_LIBGRID -! Nothing here, the libgrid.a is present +! Nothing here, the libgrid.a is present #else #if !defined(__GRID_CORE) @@ -36,10 +36,8 @@ #else -This is an error, and unknown definition of GRID_CORE (__GRID_CORE) has been used +This is an error, and unknown definition of GRID_CORE(__GRID_CORE) has been used #endif - - -#endif +#endif diff --git a/src/grid/integrate_fast_1.f90 b/src/grid/integrate_fast_1.f90 index 60c91ea076..87741cda32 100644 --- a/src/grid/integrate_fast_1.f90 +++ b/src/grid/integrate_fast_1.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,80 +112,80 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -200,87 +200,87 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,0)*pol_y(2,1,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,1)*pol_z(2,1,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 0)*pol_y(2, 1, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 1)*pol_z(2, 1, kg) + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -295,115 +295,115 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,0)*pol_y(2,2,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,1)*pol_z(2,2,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 0)*pol_y(2, 2, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 1)*pol_z(2, 2, kg) + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -418,155 +418,155 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,3,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,1)*pol_z(2,3,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 3, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 1)*pol_z(2, 3, kg) + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -581,209 +581,209 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,0)*pol_y(2,4,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,1)*pol_z(2,4,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 0)*pol_y(2, 4, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 1)*pol_z(2, 4, kg) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -798,279 +798,279 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,0)*pol_y(2,5,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,7)*pol_z(1,4,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,7)*pol_z(2,4,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,5,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 0)*pol_y(2, 5, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 7)*pol_z(1, 4, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 7)*pol_z(2, 4, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 5, kg) + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -1085,367 +1085,367 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - coef_x(1,6)=coef_x(1,6)+s01*pol_x(6,ig) - coef_x(2,6)=coef_x(2,6)+s02*pol_x(6,ig) - coef_x(3,6)=coef_x(3,6)+s03*pol_x(6,ig) - coef_x(4,6)=coef_x(4,6)+s04*pol_x(6,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,6,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,8)*pol_z(1,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,8)*pol_z(2,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,8)*pol_z(1,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,8)*pol_z(2,5,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,1)*pol_z(2,6,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + coef_x(1, 6) = coef_x(1, 6)+s01*pol_x(6, ig) + coef_x(2, 6) = coef_x(2, 6)+s02*pol_x(6, ig) + coef_x(3, 6) = coef_x(3, 6)+s03*pol_x(6, ig) + coef_x(4, 6) = coef_x(4, 6)+s04*pol_x(6, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 6, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 8)*pol_z(1, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 8)*pol_z(2, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 8)*pol_z(1, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 8)*pol_z(2, 5, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 1)*pol_z(2, 6, kg) + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -1460,475 +1460,475 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - coef_x(1,6)=coef_x(1,6)+s01*pol_x(6,ig) - coef_x(2,6)=coef_x(2,6)+s02*pol_x(6,ig) - coef_x(3,6)=coef_x(3,6)+s03*pol_x(6,ig) - coef_x(4,6)=coef_x(4,6)+s04*pol_x(6,ig) - coef_x(1,7)=coef_x(1,7)+s01*pol_x(7,ig) - coef_x(2,7)=coef_x(2,7)+s02*pol_x(7,ig) - coef_x(3,7)=coef_x(3,7)+s03*pol_x(7,ig) - coef_x(4,7)=coef_x(4,7)+s04*pol_x(7,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,7,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,17)*pol_z(1,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,17)*pol_z(2,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,16)*pol_z(1,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,16)*pol_z(2,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,17)*pol_z(1,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,17)*pol_z(2,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,9)*pol_z(1,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,9)*pol_z(2,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,16)*pol_z(1,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,16)*pol_z(2,5,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,9)*pol_z(1,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,9)*pol_z(2,6,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,1)*pol_z(2,7,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + coef_x(1, 6) = coef_x(1, 6)+s01*pol_x(6, ig) + coef_x(2, 6) = coef_x(2, 6)+s02*pol_x(6, ig) + coef_x(3, 6) = coef_x(3, 6)+s03*pol_x(6, ig) + coef_x(4, 6) = coef_x(4, 6)+s04*pol_x(6, ig) + coef_x(1, 7) = coef_x(1, 7)+s01*pol_x(7, ig) + coef_x(2, 7) = coef_x(2, 7)+s02*pol_x(7, ig) + coef_x(3, 7) = coef_x(3, 7)+s03*pol_x(7, ig) + coef_x(4, 7) = coef_x(4, 7)+s04*pol_x(7, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 7, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 17)*pol_z(1, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 17)*pol_z(2, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 16)*pol_z(1, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 16)*pol_z(2, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 17)*pol_z(1, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 17)*pol_z(2, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 9)*pol_z(1, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 9)*pol_z(2, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 16)*pol_z(1, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 16)*pol_z(2, 5, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 9)*pol_z(1, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 9)*pol_z(2, 6, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 1)*pol_z(2, 7, kg) + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1943,605 +1943,605 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - coef_x(1,6)=coef_x(1,6)+s01*pol_x(6,ig) - coef_x(2,6)=coef_x(2,6)+s02*pol_x(6,ig) - coef_x(3,6)=coef_x(3,6)+s03*pol_x(6,ig) - coef_x(4,6)=coef_x(4,6)+s04*pol_x(6,ig) - coef_x(1,7)=coef_x(1,7)+s01*pol_x(7,ig) - coef_x(2,7)=coef_x(2,7)+s02*pol_x(7,ig) - coef_x(3,7)=coef_x(3,7)+s03*pol_x(7,ig) - coef_x(4,7)=coef_x(4,7)+s04*pol_x(7,ig) - coef_x(1,8)=coef_x(1,8)+s01*pol_x(8,ig) - coef_x(2,8)=coef_x(2,8)+s02*pol_x(8,ig) - coef_x(3,8)=coef_x(3,8)+s03*pol_x(8,ig) - coef_x(4,8)=coef_x(4,8)+s04*pol_x(8,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,0)*pol_y(2,8,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,40)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,40)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,26)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,26)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,33)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,33)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,40)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,40)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,25)*pol_z(1,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,25)*pol_z(2,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,26)*pol_z(1,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,26)*pol_z(2,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,32)*pol_z(1,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,32)*pol_z(2,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,18)*pol_z(1,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,18)*pol_z(2,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,19)*pol_z(1,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,19)*pol_z(2,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,25)*pol_z(1,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,25)*pol_z(2,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,26)*pol_z(1,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,26)*pol_z(2,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,31)*pol_z(1,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,31)*pol_z(2,4,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,18)*pol_z(1,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,18)*pol_z(2,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,19)*pol_z(1,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,19)*pol_z(2,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,25)*pol_z(1,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,25)*pol_z(2,5,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,10)*pol_z(1,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,10)*pol_z(2,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,18)*pol_z(1,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,18)*pol_z(2,6,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,10)*pol_z(1,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,10)*pol_z(2,7,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,8,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + coef_x(1, 6) = coef_x(1, 6)+s01*pol_x(6, ig) + coef_x(2, 6) = coef_x(2, 6)+s02*pol_x(6, ig) + coef_x(3, 6) = coef_x(3, 6)+s03*pol_x(6, ig) + coef_x(4, 6) = coef_x(4, 6)+s04*pol_x(6, ig) + coef_x(1, 7) = coef_x(1, 7)+s01*pol_x(7, ig) + coef_x(2, 7) = coef_x(2, 7)+s02*pol_x(7, ig) + coef_x(3, 7) = coef_x(3, 7)+s03*pol_x(7, ig) + coef_x(4, 7) = coef_x(4, 7)+s04*pol_x(7, ig) + coef_x(1, 8) = coef_x(1, 8)+s01*pol_x(8, ig) + coef_x(2, 8) = coef_x(2, 8)+s02*pol_x(8, ig) + coef_x(3, 8) = coef_x(3, 8)+s03*pol_x(8, ig) + coef_x(4, 8) = coef_x(4, 8)+s04*pol_x(8, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 0)*pol_y(2, 8, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 40)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 40)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 26)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 26)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 33)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 33)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 40)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 40)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 25)*pol_z(1, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 25)*pol_z(2, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 26)*pol_z(1, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 26)*pol_z(2, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 32)*pol_z(1, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 32)*pol_z(2, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 18)*pol_z(1, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 18)*pol_z(2, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 19)*pol_z(1, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 19)*pol_z(2, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 25)*pol_z(1, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 25)*pol_z(2, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 26)*pol_z(1, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 26)*pol_z(2, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 31)*pol_z(1, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 31)*pol_z(2, 4, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 18)*pol_z(1, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 18)*pol_z(2, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 19)*pol_z(1, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 19)*pol_z(2, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 25)*pol_z(1, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 25)*pol_z(2, 5, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 10)*pol_z(1, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 10)*pol_z(2, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 18)*pol_z(1, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 18)*pol_z(2, 6, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 10)*pol_z(1, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 10)*pol_z(2, 7, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 8, kg) + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -2556,758 +2556,758 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - coef_x(1,6)=coef_x(1,6)+s01*pol_x(6,ig) - coef_x(2,6)=coef_x(2,6)+s02*pol_x(6,ig) - coef_x(3,6)=coef_x(3,6)+s03*pol_x(6,ig) - coef_x(4,6)=coef_x(4,6)+s04*pol_x(6,ig) - coef_x(1,7)=coef_x(1,7)+s01*pol_x(7,ig) - coef_x(2,7)=coef_x(2,7)+s02*pol_x(7,ig) - coef_x(3,7)=coef_x(3,7)+s03*pol_x(7,ig) - coef_x(4,7)=coef_x(4,7)+s04*pol_x(7,ig) - coef_x(1,8)=coef_x(1,8)+s01*pol_x(8,ig) - coef_x(2,8)=coef_x(2,8)+s02*pol_x(8,ig) - coef_x(3,8)=coef_x(3,8)+s03*pol_x(8,ig) - coef_x(4,8)=coef_x(4,8)+s04*pol_x(8,ig) - coef_x(1,9)=coef_x(1,9)+s01*pol_x(9,ig) - coef_x(2,9)=coef_x(2,9)+s02*pol_x(9,ig) - coef_x(3,9)=coef_x(3,9)+s03*pol_x(9,ig) - coef_x(4,9)=coef_x(4,9)+s04*pol_x(9,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,9)*pol_y(1,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,9)*pol_y(1,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,9)*pol_y(2,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,9)*pol_y(2,0,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,8)*pol_y(1,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,8)*pol_y(1,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,8)*pol_y(2,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,8)*pol_y(2,1,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,7)*pol_y(1,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,7)*pol_y(1,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,7)*pol_y(2,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,7)*pol_y(2,2,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,6)*pol_y(1,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,6)*pol_y(1,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,6)*pol_y(2,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,6)*pol_y(2,3,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,5)*pol_y(1,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,5)*pol_y(1,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,5)*pol_y(2,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,5)*pol_y(2,4,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,4)*pol_y(1,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,4)*pol_y(1,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,4)*pol_y(2,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,4)*pol_y(2,5,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(1,3)*pol_y(1,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(2,3)*pol_y(1,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(3,3)*pol_y(2,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(4,3)*pol_y(2,6,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(1,2)*pol_y(1,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(2,2)*pol_y(1,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(3,2)*pol_y(2,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(4,2)*pol_y(2,7,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(4,0)*pol_y(2,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(1,1)*pol_y(1,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(2,1)*pol_y(1,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(3,1)*pol_y(2,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(4,1)*pol_y(2,8,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(1,0)*pol_y(1,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(2,0)*pol_y(1,9,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(3,0)*pol_y(2,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(4,0)*pol_y(2,9,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,46)*pol_z(1,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,46)*pol_z(2,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,47)*pol_z(1,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,47)*pol_z(2,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,48)*pol_z(1,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,48)*pol_z(2,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,49)*pol_z(1,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,49)*pol_z(2,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,50)*pol_z(1,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,50)*pol_z(2,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,51)*pol_z(1,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,51)*pol_z(2,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,52)*pol_z(1,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,52)*pol_z(2,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,53)*pol_z(1,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,53)*pol_z(2,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,54)*pol_z(1,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,54)*pol_z(2,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,55)*pol_z(1,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,55)*pol_z(2,0,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,30)*pol_z(1,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,30)*pol_z(2,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,35)*pol_z(1,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,35)*pol_z(2,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,39)*pol_z(1,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,39)*pol_z(2,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,42)*pol_z(1,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,42)*pol_z(2,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,44)*pol_z(1,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,44)*pol_z(2,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,46)*pol_z(1,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,46)*pol_z(2,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,47)*pol_z(1,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,47)*pol_z(2,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,48)*pol_z(1,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,48)*pol_z(2,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,50)*pol_z(1,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,50)*pol_z(2,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,51)*pol_z(1,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,51)*pol_z(2,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,53)*pol_z(1,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,53)*pol_z(2,1,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,29)*pol_z(1,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,29)*pol_z(2,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,30)*pol_z(1,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,30)*pol_z(2,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,35)*pol_z(1,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,35)*pol_z(2,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,38)*pol_z(1,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,38)*pol_z(2,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,41)*pol_z(1,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,41)*pol_z(2,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,42)*pol_z(1,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,42)*pol_z(2,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,43)*pol_z(1,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,43)*pol_z(2,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,46)*pol_z(1,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,46)*pol_z(2,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,47)*pol_z(1,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,47)*pol_z(2,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,50)*pol_z(1,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,50)*pol_z(2,2,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,24)*pol_z(1,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,24)*pol_z(2,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,28)*pol_z(1,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,28)*pol_z(2,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,29)*pol_z(1,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,29)*pol_z(2,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,30)*pol_z(1,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,30)*pol_z(2,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,35)*pol_z(1,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,35)*pol_z(2,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,37)*pol_z(1,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,37)*pol_z(2,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,41)*pol_z(1,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,41)*pol_z(2,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,42)*pol_z(1,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,42)*pol_z(2,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,46)*pol_z(1,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,46)*pol_z(2,3,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(1,6)*pol_z(1,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(2,6)*pol_z(2,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(1,15)*pol_z(1,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(2,15)*pol_z(2,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(1,21)*pol_z(1,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(2,21)*pol_z(2,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(1,23)*pol_z(1,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(2,23)*pol_z(2,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(1,28)*pol_z(1,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(2,28)*pol_z(2,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(1,29)*pol_z(1,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(2,29)*pol_z(2,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(1,30)*pol_z(1,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(2,30)*pol_z(2,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(1,35)*pol_z(1,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(2,35)*pol_z(2,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(1,36)*pol_z(1,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(2,36)*pol_z(2,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(1,41)*pol_z(1,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(2,41)*pol_z(2,4,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(1,5)*pol_z(1,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(2,5)*pol_z(2,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(1,13)*pol_z(1,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(2,13)*pol_z(2,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(1,14)*pol_z(1,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(2,14)*pol_z(2,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(1,20)*pol_z(1,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(2,20)*pol_z(2,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(1,21)*pol_z(1,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(2,21)*pol_z(2,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(1,22)*pol_z(1,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(2,22)*pol_z(2,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(1,28)*pol_z(1,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(2,28)*pol_z(2,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(1,29)*pol_z(1,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(2,29)*pol_z(2,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(1,35)*pol_z(1,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(2,35)*pol_z(2,5,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(1,4)*pol_z(1,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(2,4)*pol_z(2,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(1,12)*pol_z(1,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(2,12)*pol_z(2,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(1,13)*pol_z(1,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(2,13)*pol_z(2,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(1,20)*pol_z(1,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(2,20)*pol_z(2,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(1,21)*pol_z(1,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(2,21)*pol_z(2,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(1,28)*pol_z(1,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(2,28)*pol_z(2,6,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(1,3)*pol_z(1,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(2,3)*pol_z(2,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(1,11)*pol_z(1,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(2,11)*pol_z(2,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(1,12)*pol_z(1,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(2,12)*pol_z(2,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(1,20)*pol_z(1,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(2,20)*pol_z(2,7,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(2,1)*pol_z(2,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(1,2)*pol_z(1,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(2,2)*pol_z(2,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(1,11)*pol_z(1,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(2,11)*pol_z(2,8,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(1,1)*pol_z(1,9,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(2,1)*pol_z(2,9,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + coef_x(1, 6) = coef_x(1, 6)+s01*pol_x(6, ig) + coef_x(2, 6) = coef_x(2, 6)+s02*pol_x(6, ig) + coef_x(3, 6) = coef_x(3, 6)+s03*pol_x(6, ig) + coef_x(4, 6) = coef_x(4, 6)+s04*pol_x(6, ig) + coef_x(1, 7) = coef_x(1, 7)+s01*pol_x(7, ig) + coef_x(2, 7) = coef_x(2, 7)+s02*pol_x(7, ig) + coef_x(3, 7) = coef_x(3, 7)+s03*pol_x(7, ig) + coef_x(4, 7) = coef_x(4, 7)+s04*pol_x(7, ig) + coef_x(1, 8) = coef_x(1, 8)+s01*pol_x(8, ig) + coef_x(2, 8) = coef_x(2, 8)+s02*pol_x(8, ig) + coef_x(3, 8) = coef_x(3, 8)+s03*pol_x(8, ig) + coef_x(4, 8) = coef_x(4, 8)+s04*pol_x(8, ig) + coef_x(1, 9) = coef_x(1, 9)+s01*pol_x(9, ig) + coef_x(2, 9) = coef_x(2, 9)+s02*pol_x(9, ig) + coef_x(3, 9) = coef_x(3, 9)+s03*pol_x(9, ig) + coef_x(4, 9) = coef_x(4, 9)+s04*pol_x(9, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 9)*pol_y(1, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 9)*pol_y(1, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 9)*pol_y(2, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 9)*pol_y(2, 0, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 8)*pol_y(1, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 8)*pol_y(1, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 8)*pol_y(2, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 8)*pol_y(2, 1, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 7)*pol_y(1, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 7)*pol_y(1, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 7)*pol_y(2, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 7)*pol_y(2, 2, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 6)*pol_y(1, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 6)*pol_y(1, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 6)*pol_y(2, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 6)*pol_y(2, 3, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 5)*pol_y(1, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 5)*pol_y(1, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 5)*pol_y(2, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 5)*pol_y(2, 4, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 4)*pol_y(1, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 4)*pol_y(1, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 4)*pol_y(2, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 4)*pol_y(2, 5, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(1, 3)*pol_y(1, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(2, 3)*pol_y(1, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(3, 3)*pol_y(2, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(4, 3)*pol_y(2, 6, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(1, 2)*pol_y(1, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(2, 2)*pol_y(1, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(3, 2)*pol_y(2, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(4, 2)*pol_y(2, 7, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(4, 0)*pol_y(2, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(1, 1)*pol_y(1, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(2, 1)*pol_y(1, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(3, 1)*pol_y(2, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(4, 1)*pol_y(2, 8, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(1, 0)*pol_y(1, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(2, 0)*pol_y(1, 9, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(3, 0)*pol_y(2, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(4, 0)*pol_y(2, 9, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 46)*pol_z(1, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 46)*pol_z(2, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 47)*pol_z(1, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 47)*pol_z(2, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 48)*pol_z(1, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 48)*pol_z(2, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 49)*pol_z(1, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 49)*pol_z(2, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 50)*pol_z(1, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 50)*pol_z(2, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 51)*pol_z(1, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 51)*pol_z(2, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 52)*pol_z(1, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 52)*pol_z(2, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 53)*pol_z(1, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 53)*pol_z(2, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 54)*pol_z(1, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 54)*pol_z(2, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 55)*pol_z(1, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 55)*pol_z(2, 0, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 30)*pol_z(1, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 30)*pol_z(2, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 35)*pol_z(1, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 35)*pol_z(2, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 39)*pol_z(1, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 39)*pol_z(2, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 42)*pol_z(1, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 42)*pol_z(2, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 44)*pol_z(1, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 44)*pol_z(2, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 46)*pol_z(1, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 46)*pol_z(2, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 47)*pol_z(1, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 47)*pol_z(2, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 48)*pol_z(1, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 48)*pol_z(2, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 50)*pol_z(1, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 50)*pol_z(2, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 51)*pol_z(1, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 51)*pol_z(2, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 53)*pol_z(1, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 53)*pol_z(2, 1, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 29)*pol_z(1, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 29)*pol_z(2, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 30)*pol_z(1, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 30)*pol_z(2, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 35)*pol_z(1, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 35)*pol_z(2, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 38)*pol_z(1, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 38)*pol_z(2, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 41)*pol_z(1, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 41)*pol_z(2, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 42)*pol_z(1, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 42)*pol_z(2, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 43)*pol_z(1, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 43)*pol_z(2, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 46)*pol_z(1, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 46)*pol_z(2, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 47)*pol_z(1, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 47)*pol_z(2, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 50)*pol_z(1, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 50)*pol_z(2, 2, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 24)*pol_z(1, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 24)*pol_z(2, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 28)*pol_z(1, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 28)*pol_z(2, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 29)*pol_z(1, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 29)*pol_z(2, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 30)*pol_z(1, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 30)*pol_z(2, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 35)*pol_z(1, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 35)*pol_z(2, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 37)*pol_z(1, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 37)*pol_z(2, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 41)*pol_z(1, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 41)*pol_z(2, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 42)*pol_z(1, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 42)*pol_z(2, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 46)*pol_z(1, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 46)*pol_z(2, 3, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(1, 6)*pol_z(1, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(2, 6)*pol_z(2, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(1, 15)*pol_z(1, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(2, 15)*pol_z(2, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(1, 21)*pol_z(1, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(2, 21)*pol_z(2, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(1, 23)*pol_z(1, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(2, 23)*pol_z(2, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(1, 28)*pol_z(1, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(2, 28)*pol_z(2, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(1, 29)*pol_z(1, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(2, 29)*pol_z(2, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(1, 30)*pol_z(1, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(2, 30)*pol_z(2, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(1, 35)*pol_z(1, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(2, 35)*pol_z(2, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(1, 36)*pol_z(1, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(2, 36)*pol_z(2, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(1, 41)*pol_z(1, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(2, 41)*pol_z(2, 4, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(1, 5)*pol_z(1, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(2, 5)*pol_z(2, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(1, 13)*pol_z(1, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(2, 13)*pol_z(2, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(1, 14)*pol_z(1, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(2, 14)*pol_z(2, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(1, 20)*pol_z(1, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(2, 20)*pol_z(2, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(1, 21)*pol_z(1, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(2, 21)*pol_z(2, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(1, 22)*pol_z(1, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(2, 22)*pol_z(2, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(1, 28)*pol_z(1, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(2, 28)*pol_z(2, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(1, 29)*pol_z(1, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(2, 29)*pol_z(2, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(1, 35)*pol_z(1, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(2, 35)*pol_z(2, 5, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(1, 4)*pol_z(1, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(2, 4)*pol_z(2, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(1, 12)*pol_z(1, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(2, 12)*pol_z(2, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(1, 13)*pol_z(1, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(2, 13)*pol_z(2, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(1, 20)*pol_z(1, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(2, 20)*pol_z(2, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(1, 21)*pol_z(1, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(2, 21)*pol_z(2, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(1, 28)*pol_z(1, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(2, 28)*pol_z(2, 6, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(1, 3)*pol_z(1, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(2, 3)*pol_z(2, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(1, 11)*pol_z(1, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(2, 11)*pol_z(2, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(1, 12)*pol_z(1, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(2, 12)*pol_z(2, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(1, 20)*pol_z(1, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(2, 20)*pol_z(2, 7, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(2, 1)*pol_z(2, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(1, 2)*pol_z(1, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(2, 2)*pol_z(2, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(1, 11)*pol_z(1, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(2, 11)*pol_z(2, 8, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(1, 1)*pol_z(1, 9, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(2, 1)*pol_z(2, 9, kg) + END DO END SUBROUTINE integrate_core_9 diff --git a/src/grid/integrate_fast_2.f90 b/src/grid/integrate_fast_2.f90 index 2fb4ffb33b..0e511ec721 100644 --- a/src/grid/integrate_fast_2.f90 +++ b/src/grid/integrate_fast_2.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,69 +112,69 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -189,83 +189,83 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,0)*pol_y(2,1,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 0)*pol_y(2, 1, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -280,86 +280,86 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,0)*pol_y(2,2,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 0)*pol_y(2, 2, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -374,94 +374,94 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,3,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 3, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -476,162 +476,162 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,0)*pol_y(2,4,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,1)*pol_z(2,4,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 0)*pol_y(2, 4, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 1)*pol_z(2, 4, kg) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -646,116 +646,116 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,0)*pol_y(2,5,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 0)*pol_y(2, 5, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -770,130 +770,130 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,0)*pol_y(2,6,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 0)*pol_y(2, 6, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -908,146 +908,146 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,7,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 7, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1062,164 +1062,164 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,0)*pol_y(2,8,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 0)*pol_y(2, 8, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -1234,183 +1234,183 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,9)*pol_y(1,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,9)*pol_y(2,0,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,8)*pol_y(1,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,8)*pol_y(2,1,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,7)*pol_y(1,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,7)*pol_y(2,2,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,6)*pol_y(1,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,6)*pol_y(2,3,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,5)*pol_y(1,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,5)*pol_y(2,4,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,4)*pol_y(1,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,4)*pol_y(2,5,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(1:2,3)*pol_y(1,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(3:4,3)*pol_y(2,6,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(1:2,2)*pol_y(1,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(3:4,2)*pol_y(2,7,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(3:4,0)*pol_y(2,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(1:2,1)*pol_y(1,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(3:4,1)*pol_y(2,8,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(1:2,0)*pol_y(1,9,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(3:4,0)*pol_y(2,9,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 9)*pol_y(1, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 9)*pol_y(2, 0, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 8)*pol_y(1, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 8)*pol_y(2, 1, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 7)*pol_y(1, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 7)*pol_y(2, 2, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 6)*pol_y(1, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 6)*pol_y(2, 3, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 5)*pol_y(1, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 5)*pol_y(2, 4, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 4)*pol_y(1, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 4)*pol_y(2, 5, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(1:2, 3)*pol_y(1, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(3:4, 3)*pol_y(2, 6, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(1:2, 2)*pol_y(1, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(3:4, 2)*pol_y(2, 7, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(3:4, 0)*pol_y(2, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(1:2, 1)*pol_y(1, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(3:4, 1)*pol_y(2, 8, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(1:2, 0)*pol_y(1, 9, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(3:4, 0)*pol_y(2, 9, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_9 diff --git a/src/grid/integrate_fast_3.f90 b/src/grid/integrate_fast_3.f90 index 0ccb46ba75..2ed2ab86dd 100644 --- a/src/grid/integrate_fast_3.f90 +++ b/src/grid/integrate_fast_3.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,78 +112,78 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -198,89 +198,89 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -295,84 +295,84 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,0)*pol_y(2,2,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 0)*pol_y(2, 2, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -387,95 +387,95 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,5)*pol_z(:,1,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,6)*pol_z(:,1,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,5)*pol_z(:,2,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 5)*pol_z(:, 1, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 6)*pol_z(:, 1, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 5)*pol_z(:, 2, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -490,129 +490,129 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,0)*pol_y(2,4,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,11)*pol_z(:,0,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,12)*pol_z(:,0,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,13)*pol_z(:,0,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,14)*pol_z(:,0,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,15)*pol_z(:,0,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,6)*pol_z(:,1,kg)) - coef_xyz(21)=coef_xyz(21)+SUM(coef_xy(:,7)*pol_z(:,1,kg)) - coef_xyz(22)=coef_xyz(22)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(23)=coef_xyz(23)+SUM(coef_xy(:,10)*pol_z(:,1,kg)) - coef_xyz(24)=coef_xyz(24)+SUM(coef_xy(:,11)*pol_z(:,1,kg)) - coef_xyz(25)=coef_xyz(25)+SUM(coef_xy(:,13)*pol_z(:,1,kg)) - coef_xyz(26)=coef_xyz(26)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(27)=coef_xyz(27)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(28)=coef_xyz(28)+SUM(coef_xy(:,3)*pol_z(:,2,kg)) - coef_xyz(29)=coef_xyz(29)+SUM(coef_xy(:,6)*pol_z(:,2,kg)) - coef_xyz(30)=coef_xyz(30)+SUM(coef_xy(:,7)*pol_z(:,2,kg)) - coef_xyz(31)=coef_xyz(31)+SUM(coef_xy(:,10)*pol_z(:,2,kg)) - coef_xyz(32)=coef_xyz(32)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - coef_xyz(33)=coef_xyz(33)+SUM(coef_xy(:,2)*pol_z(:,3,kg)) - coef_xyz(34)=coef_xyz(34)+SUM(coef_xy(:,6)*pol_z(:,3,kg)) - coef_xyz(35)=coef_xyz(35)+SUM(coef_xy(:,1)*pol_z(:,4,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 0)*pol_y(2, 4, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 11)*pol_z(:, 0, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 12)*pol_z(:, 0, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 13)*pol_z(:, 0, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 14)*pol_z(:, 0, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 15)*pol_z(:, 0, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 6)*pol_z(:, 1, kg)) + coef_xyz(21) = coef_xyz(21)+SUM(coef_xy(:, 7)*pol_z(:, 1, kg)) + coef_xyz(22) = coef_xyz(22)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(23) = coef_xyz(23)+SUM(coef_xy(:, 10)*pol_z(:, 1, kg)) + coef_xyz(24) = coef_xyz(24)+SUM(coef_xy(:, 11)*pol_z(:, 1, kg)) + coef_xyz(25) = coef_xyz(25)+SUM(coef_xy(:, 13)*pol_z(:, 1, kg)) + coef_xyz(26) = coef_xyz(26)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(27) = coef_xyz(27)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(28) = coef_xyz(28)+SUM(coef_xy(:, 3)*pol_z(:, 2, kg)) + coef_xyz(29) = coef_xyz(29)+SUM(coef_xy(:, 6)*pol_z(:, 2, kg)) + coef_xyz(30) = coef_xyz(30)+SUM(coef_xy(:, 7)*pol_z(:, 2, kg)) + coef_xyz(31) = coef_xyz(31)+SUM(coef_xy(:, 10)*pol_z(:, 2, kg)) + coef_xyz(32) = coef_xyz(32)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + coef_xyz(33) = coef_xyz(33)+SUM(coef_xy(:, 2)*pol_z(:, 3, kg)) + coef_xyz(34) = coef_xyz(34)+SUM(coef_xy(:, 6)*pol_z(:, 3, kg)) + coef_xyz(35) = coef_xyz(35)+SUM(coef_xy(:, 1)*pol_z(:, 4, kg)) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -627,261 +627,261 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,0)*pol_y(2,5,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,7)*pol_z(1,4,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,7)*pol_z(2,4,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,5,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 0)*pol_y(2, 5, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 7)*pol_z(1, 4, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 7)*pol_z(2, 4, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 5, kg) + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -896,346 +896,346 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,6,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,8)*pol_z(1,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,8)*pol_z(2,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,8)*pol_z(1,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,8)*pol_z(2,5,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,1)*pol_z(2,6,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 6, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 8)*pol_z(1, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 8)*pol_z(2, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 8)*pol_z(1, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 8)*pol_z(2, 5, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 1)*pol_z(2, 6, kg) + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -1250,379 +1250,379 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,7,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,17)*pol_z(1,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,17)*pol_z(2,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,16)*pol_z(1,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,16)*pol_z(2,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,17)*pol_z(1,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,17)*pol_z(2,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,9)*pol_z(1,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,9)*pol_z(2,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,16)*pol_z(1,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,16)*pol_z(2,5,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,9)*pol_z(1,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,9)*pol_z(2,6,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,1)*pol_z(2,7,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 7, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 17)*pol_z(1, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 17)*pol_z(2, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 16)*pol_z(1, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 16)*pol_z(2, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 17)*pol_z(1, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 17)*pol_z(2, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 9)*pol_z(1, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 9)*pol_z(2, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 16)*pol_z(1, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 16)*pol_z(2, 5, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 9)*pol_z(1, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 9)*pol_z(2, 6, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 1)*pol_z(2, 7, kg) + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1637,488 +1637,488 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - coef_x(:,8)=coef_x(:,8)+s(:)*pol_x(8,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,0)*pol_y(2,8,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,40)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,40)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,26)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,26)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,33)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,33)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,40)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,40)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,25)*pol_z(1,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,25)*pol_z(2,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,26)*pol_z(1,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,26)*pol_z(2,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,32)*pol_z(1,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,32)*pol_z(2,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,18)*pol_z(1,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,18)*pol_z(2,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,19)*pol_z(1,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,19)*pol_z(2,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,25)*pol_z(1,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,25)*pol_z(2,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,26)*pol_z(1,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,26)*pol_z(2,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,31)*pol_z(1,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,31)*pol_z(2,4,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,18)*pol_z(1,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,18)*pol_z(2,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,19)*pol_z(1,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,19)*pol_z(2,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,25)*pol_z(1,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,25)*pol_z(2,5,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,10)*pol_z(1,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,10)*pol_z(2,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,18)*pol_z(1,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,18)*pol_z(2,6,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,10)*pol_z(1,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,10)*pol_z(2,7,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,8,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + coef_x(:, 8) = coef_x(:, 8)+s(:)*pol_x(8, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 0)*pol_y(2, 8, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 40)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 40)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 26)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 26)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 33)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 33)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 40)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 40)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 25)*pol_z(1, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 25)*pol_z(2, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 26)*pol_z(1, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 26)*pol_z(2, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 32)*pol_z(1, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 32)*pol_z(2, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 18)*pol_z(1, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 18)*pol_z(2, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 19)*pol_z(1, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 19)*pol_z(2, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 25)*pol_z(1, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 25)*pol_z(2, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 26)*pol_z(1, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 26)*pol_z(2, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 31)*pol_z(1, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 31)*pol_z(2, 4, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 18)*pol_z(1, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 18)*pol_z(2, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 19)*pol_z(1, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 19)*pol_z(2, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 25)*pol_z(1, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 25)*pol_z(2, 5, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 10)*pol_z(1, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 10)*pol_z(2, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 18)*pol_z(1, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 18)*pol_z(2, 6, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 10)*pol_z(1, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 10)*pol_z(2, 7, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 8, kg) + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -2133,618 +2133,618 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - coef_x(:,8)=coef_x(:,8)+s(:)*pol_x(8,ig) - coef_x(:,9)=coef_x(:,9)+s(:)*pol_x(9,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,9)*pol_y(1,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,9)*pol_y(2,0,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,8)*pol_y(1,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,8)*pol_y(2,1,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,7)*pol_y(1,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,7)*pol_y(2,2,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,6)*pol_y(1,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,6)*pol_y(2,3,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,5)*pol_y(1,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,5)*pol_y(2,4,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,4)*pol_y(1,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,4)*pol_y(2,5,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(1:2,3)*pol_y(1,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(3:4,3)*pol_y(2,6,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(1:2,2)*pol_y(1,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(3:4,2)*pol_y(2,7,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(3:4,0)*pol_y(2,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(1:2,1)*pol_y(1,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(3:4,1)*pol_y(2,8,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(1:2,0)*pol_y(1,9,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(3:4,0)*pol_y(2,9,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,46)*pol_z(1,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,46)*pol_z(2,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,47)*pol_z(1,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,47)*pol_z(2,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,48)*pol_z(1,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,48)*pol_z(2,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,49)*pol_z(1,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,49)*pol_z(2,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,50)*pol_z(1,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,50)*pol_z(2,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,51)*pol_z(1,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,51)*pol_z(2,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,52)*pol_z(1,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,52)*pol_z(2,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,53)*pol_z(1,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,53)*pol_z(2,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,54)*pol_z(1,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,54)*pol_z(2,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,55)*pol_z(1,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,55)*pol_z(2,0,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,30)*pol_z(1,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,30)*pol_z(2,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,35)*pol_z(1,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,35)*pol_z(2,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,39)*pol_z(1,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,39)*pol_z(2,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,42)*pol_z(1,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,42)*pol_z(2,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,44)*pol_z(1,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,44)*pol_z(2,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,46)*pol_z(1,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,46)*pol_z(2,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,47)*pol_z(1,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,47)*pol_z(2,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,48)*pol_z(1,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,48)*pol_z(2,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,50)*pol_z(1,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,50)*pol_z(2,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,51)*pol_z(1,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,51)*pol_z(2,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,53)*pol_z(1,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,53)*pol_z(2,1,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,29)*pol_z(1,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,29)*pol_z(2,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,30)*pol_z(1,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,30)*pol_z(2,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,35)*pol_z(1,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,35)*pol_z(2,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,38)*pol_z(1,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,38)*pol_z(2,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,41)*pol_z(1,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,41)*pol_z(2,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,42)*pol_z(1,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,42)*pol_z(2,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,43)*pol_z(1,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,43)*pol_z(2,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,46)*pol_z(1,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,46)*pol_z(2,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,47)*pol_z(1,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,47)*pol_z(2,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,50)*pol_z(1,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,50)*pol_z(2,2,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,24)*pol_z(1,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,24)*pol_z(2,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,28)*pol_z(1,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,28)*pol_z(2,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,29)*pol_z(1,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,29)*pol_z(2,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,30)*pol_z(1,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,30)*pol_z(2,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,35)*pol_z(1,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,35)*pol_z(2,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,37)*pol_z(1,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,37)*pol_z(2,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,41)*pol_z(1,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,41)*pol_z(2,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,42)*pol_z(1,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,42)*pol_z(2,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,46)*pol_z(1,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,46)*pol_z(2,3,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(1,6)*pol_z(1,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(2,6)*pol_z(2,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(1,15)*pol_z(1,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(2,15)*pol_z(2,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(1,21)*pol_z(1,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(2,21)*pol_z(2,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(1,23)*pol_z(1,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(2,23)*pol_z(2,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(1,28)*pol_z(1,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(2,28)*pol_z(2,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(1,29)*pol_z(1,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(2,29)*pol_z(2,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(1,30)*pol_z(1,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(2,30)*pol_z(2,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(1,35)*pol_z(1,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(2,35)*pol_z(2,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(1,36)*pol_z(1,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(2,36)*pol_z(2,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(1,41)*pol_z(1,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(2,41)*pol_z(2,4,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(1,5)*pol_z(1,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(2,5)*pol_z(2,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(1,13)*pol_z(1,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(2,13)*pol_z(2,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(1,14)*pol_z(1,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(2,14)*pol_z(2,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(1,20)*pol_z(1,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(2,20)*pol_z(2,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(1,21)*pol_z(1,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(2,21)*pol_z(2,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(1,22)*pol_z(1,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(2,22)*pol_z(2,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(1,28)*pol_z(1,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(2,28)*pol_z(2,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(1,29)*pol_z(1,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(2,29)*pol_z(2,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(1,35)*pol_z(1,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(2,35)*pol_z(2,5,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(1,4)*pol_z(1,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(2,4)*pol_z(2,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(1,12)*pol_z(1,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(2,12)*pol_z(2,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(1,13)*pol_z(1,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(2,13)*pol_z(2,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(1,20)*pol_z(1,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(2,20)*pol_z(2,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(1,21)*pol_z(1,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(2,21)*pol_z(2,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(1,28)*pol_z(1,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(2,28)*pol_z(2,6,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(1,3)*pol_z(1,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(2,3)*pol_z(2,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(1,11)*pol_z(1,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(2,11)*pol_z(2,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(1,12)*pol_z(1,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(2,12)*pol_z(2,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(1,20)*pol_z(1,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(2,20)*pol_z(2,7,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(2,1)*pol_z(2,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(1,2)*pol_z(1,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(2,2)*pol_z(2,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(1,11)*pol_z(1,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(2,11)*pol_z(2,8,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(1,1)*pol_z(1,9,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(2,1)*pol_z(2,9,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + coef_x(:, 8) = coef_x(:, 8)+s(:)*pol_x(8, ig) + coef_x(:, 9) = coef_x(:, 9)+s(:)*pol_x(9, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 9)*pol_y(1, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 9)*pol_y(2, 0, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 8)*pol_y(1, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 8)*pol_y(2, 1, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 7)*pol_y(1, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 7)*pol_y(2, 2, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 6)*pol_y(1, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 6)*pol_y(2, 3, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 5)*pol_y(1, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 5)*pol_y(2, 4, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 4)*pol_y(1, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 4)*pol_y(2, 5, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(1:2, 3)*pol_y(1, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(3:4, 3)*pol_y(2, 6, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(1:2, 2)*pol_y(1, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(3:4, 2)*pol_y(2, 7, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(3:4, 0)*pol_y(2, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(1:2, 1)*pol_y(1, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(3:4, 1)*pol_y(2, 8, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(1:2, 0)*pol_y(1, 9, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(3:4, 0)*pol_y(2, 9, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 46)*pol_z(1, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 46)*pol_z(2, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 47)*pol_z(1, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 47)*pol_z(2, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 48)*pol_z(1, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 48)*pol_z(2, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 49)*pol_z(1, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 49)*pol_z(2, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 50)*pol_z(1, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 50)*pol_z(2, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 51)*pol_z(1, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 51)*pol_z(2, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 52)*pol_z(1, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 52)*pol_z(2, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 53)*pol_z(1, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 53)*pol_z(2, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 54)*pol_z(1, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 54)*pol_z(2, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 55)*pol_z(1, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 55)*pol_z(2, 0, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 30)*pol_z(1, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 30)*pol_z(2, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 35)*pol_z(1, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 35)*pol_z(2, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 39)*pol_z(1, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 39)*pol_z(2, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 42)*pol_z(1, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 42)*pol_z(2, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 44)*pol_z(1, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 44)*pol_z(2, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 46)*pol_z(1, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 46)*pol_z(2, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 47)*pol_z(1, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 47)*pol_z(2, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 48)*pol_z(1, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 48)*pol_z(2, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 50)*pol_z(1, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 50)*pol_z(2, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 51)*pol_z(1, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 51)*pol_z(2, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 53)*pol_z(1, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 53)*pol_z(2, 1, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 29)*pol_z(1, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 29)*pol_z(2, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 30)*pol_z(1, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 30)*pol_z(2, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 35)*pol_z(1, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 35)*pol_z(2, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 38)*pol_z(1, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 38)*pol_z(2, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 41)*pol_z(1, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 41)*pol_z(2, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 42)*pol_z(1, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 42)*pol_z(2, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 43)*pol_z(1, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 43)*pol_z(2, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 46)*pol_z(1, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 46)*pol_z(2, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 47)*pol_z(1, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 47)*pol_z(2, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 50)*pol_z(1, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 50)*pol_z(2, 2, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 24)*pol_z(1, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 24)*pol_z(2, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 28)*pol_z(1, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 28)*pol_z(2, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 29)*pol_z(1, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 29)*pol_z(2, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 30)*pol_z(1, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 30)*pol_z(2, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 35)*pol_z(1, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 35)*pol_z(2, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 37)*pol_z(1, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 37)*pol_z(2, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 41)*pol_z(1, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 41)*pol_z(2, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 42)*pol_z(1, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 42)*pol_z(2, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 46)*pol_z(1, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 46)*pol_z(2, 3, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(1, 6)*pol_z(1, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(2, 6)*pol_z(2, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(1, 15)*pol_z(1, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(2, 15)*pol_z(2, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(1, 21)*pol_z(1, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(2, 21)*pol_z(2, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(1, 23)*pol_z(1, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(2, 23)*pol_z(2, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(1, 28)*pol_z(1, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(2, 28)*pol_z(2, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(1, 29)*pol_z(1, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(2, 29)*pol_z(2, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(1, 30)*pol_z(1, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(2, 30)*pol_z(2, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(1, 35)*pol_z(1, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(2, 35)*pol_z(2, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(1, 36)*pol_z(1, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(2, 36)*pol_z(2, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(1, 41)*pol_z(1, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(2, 41)*pol_z(2, 4, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(1, 5)*pol_z(1, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(2, 5)*pol_z(2, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(1, 13)*pol_z(1, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(2, 13)*pol_z(2, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(1, 14)*pol_z(1, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(2, 14)*pol_z(2, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(1, 20)*pol_z(1, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(2, 20)*pol_z(2, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(1, 21)*pol_z(1, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(2, 21)*pol_z(2, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(1, 22)*pol_z(1, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(2, 22)*pol_z(2, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(1, 28)*pol_z(1, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(2, 28)*pol_z(2, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(1, 29)*pol_z(1, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(2, 29)*pol_z(2, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(1, 35)*pol_z(1, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(2, 35)*pol_z(2, 5, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(1, 4)*pol_z(1, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(2, 4)*pol_z(2, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(1, 12)*pol_z(1, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(2, 12)*pol_z(2, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(1, 13)*pol_z(1, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(2, 13)*pol_z(2, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(1, 20)*pol_z(1, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(2, 20)*pol_z(2, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(1, 21)*pol_z(1, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(2, 21)*pol_z(2, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(1, 28)*pol_z(1, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(2, 28)*pol_z(2, 6, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(1, 3)*pol_z(1, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(2, 3)*pol_z(2, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(1, 11)*pol_z(1, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(2, 11)*pol_z(2, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(1, 12)*pol_z(1, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(2, 12)*pol_z(2, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(1, 20)*pol_z(1, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(2, 20)*pol_z(2, 7, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(2, 1)*pol_z(2, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(1, 2)*pol_z(1, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(2, 2)*pol_z(2, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(1, 11)*pol_z(1, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(2, 11)*pol_z(2, 8, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(1, 1)*pol_z(1, 9, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(2, 1)*pol_z(2, 9, kg) + END DO END SUBROUTINE integrate_core_9 diff --git a/src/grid/integrate_fast_4.f90 b/src/grid/integrate_fast_4.f90 index 72f7e3901d..7f15f52d84 100644 --- a/src/grid/integrate_fast_4.f90 +++ b/src/grid/integrate_fast_4.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,78 +112,77 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) + sci = 1 - sci=1 + coef_xyz = 0.0_dp - coef_xyz=0.0_dp + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + coef_xy = 0.0_dp - coef_xy=0.0_dp + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin - - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -198,76 +197,76 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,0)*pol_y(2,1,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,1)*pol_z(2,1,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 0)*pol_y(2, 1, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 1)*pol_z(2, 1, kg) + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -282,97 +281,97 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,0)*pol_y(2,2,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,1)*pol_z(2,2,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 0)*pol_y(2, 2, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 1)*pol_z(2, 2, kg) + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -387,125 +386,125 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,3,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,1)*pol_z(2,3,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 3, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 1)*pol_z(2, 3, kg) + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -520,195 +519,195 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,0)*pol_y(2,4,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,1)*pol_z(2,4,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 0)*pol_y(2, 4, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 1)*pol_z(2, 4, kg) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -723,223 +722,223 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,0)*pol_y(2,5,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,11)*pol_z(:,0,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,12)*pol_z(:,0,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,13)*pol_z(:,0,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,14)*pol_z(:,0,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,15)*pol_z(:,0,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,16)*pol_z(:,0,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,17)*pol_z(:,0,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,18)*pol_z(:,0,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,19)*pol_z(:,0,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,20)*pol_z(:,0,kg)) - coef_xyz(21)=coef_xyz(21)+SUM(coef_xy(:,21)*pol_z(:,0,kg)) - coef_xyz(22)=coef_xyz(22)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(23)=coef_xyz(23)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(24)=coef_xyz(24)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(25)=coef_xyz(25)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(26)=coef_xyz(26)+SUM(coef_xy(:,5)*pol_z(:,1,kg)) - coef_xyz(27)=coef_xyz(27)+SUM(coef_xy(:,7)*pol_z(:,1,kg)) - coef_xyz(28)=coef_xyz(28)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(29)=coef_xyz(29)+SUM(coef_xy(:,9)*pol_z(:,1,kg)) - coef_xyz(30)=coef_xyz(30)+SUM(coef_xy(:,10)*pol_z(:,1,kg)) - coef_xyz(31)=coef_xyz(31)+SUM(coef_xy(:,12)*pol_z(:,1,kg)) - coef_xyz(32)=coef_xyz(32)+SUM(coef_xy(:,13)*pol_z(:,1,kg)) - coef_xyz(33)=coef_xyz(33)+SUM(coef_xy(:,14)*pol_z(:,1,kg)) - coef_xyz(34)=coef_xyz(34)+SUM(coef_xy(:,16)*pol_z(:,1,kg)) - coef_xyz(35)=coef_xyz(35)+SUM(coef_xy(:,17)*pol_z(:,1,kg)) - coef_xyz(36)=coef_xyz(36)+SUM(coef_xy(:,19)*pol_z(:,1,kg)) - coef_xyz(37)=coef_xyz(37)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(38)=coef_xyz(38)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(39)=coef_xyz(39)+SUM(coef_xy(:,3)*pol_z(:,2,kg)) - coef_xyz(40)=coef_xyz(40)+SUM(coef_xy(:,4)*pol_z(:,2,kg)) - coef_xyz(41)=coef_xyz(41)+SUM(coef_xy(:,7)*pol_z(:,2,kg)) - coef_xyz(42)=coef_xyz(42)+SUM(coef_xy(:,8)*pol_z(:,2,kg)) - coef_xyz(43)=coef_xyz(43)+SUM(coef_xy(:,9)*pol_z(:,2,kg)) - coef_xyz(44)=coef_xyz(44)+SUM(coef_xy(:,12)*pol_z(:,2,kg)) - coef_xyz(45)=coef_xyz(45)+SUM(coef_xy(:,13)*pol_z(:,2,kg)) - coef_xyz(46)=coef_xyz(46)+SUM(coef_xy(:,16)*pol_z(:,2,kg)) - coef_xyz(47)=coef_xyz(47)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - coef_xyz(48)=coef_xyz(48)+SUM(coef_xy(:,2)*pol_z(:,3,kg)) - coef_xyz(49)=coef_xyz(49)+SUM(coef_xy(:,3)*pol_z(:,3,kg)) - coef_xyz(50)=coef_xyz(50)+SUM(coef_xy(:,7)*pol_z(:,3,kg)) - coef_xyz(51)=coef_xyz(51)+SUM(coef_xy(:,8)*pol_z(:,3,kg)) - coef_xyz(52)=coef_xyz(52)+SUM(coef_xy(:,12)*pol_z(:,3,kg)) - coef_xyz(53)=coef_xyz(53)+SUM(coef_xy(:,1)*pol_z(:,4,kg)) - coef_xyz(54)=coef_xyz(54)+SUM(coef_xy(:,2)*pol_z(:,4,kg)) - coef_xyz(55)=coef_xyz(55)+SUM(coef_xy(:,7)*pol_z(:,4,kg)) - coef_xyz(56)=coef_xyz(56)+SUM(coef_xy(:,1)*pol_z(:,5,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 0)*pol_y(2, 5, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 11)*pol_z(:, 0, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 12)*pol_z(:, 0, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 13)*pol_z(:, 0, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 14)*pol_z(:, 0, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 15)*pol_z(:, 0, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 16)*pol_z(:, 0, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 17)*pol_z(:, 0, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 18)*pol_z(:, 0, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 19)*pol_z(:, 0, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 20)*pol_z(:, 0, kg)) + coef_xyz(21) = coef_xyz(21)+SUM(coef_xy(:, 21)*pol_z(:, 0, kg)) + coef_xyz(22) = coef_xyz(22)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(23) = coef_xyz(23)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(24) = coef_xyz(24)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(25) = coef_xyz(25)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(26) = coef_xyz(26)+SUM(coef_xy(:, 5)*pol_z(:, 1, kg)) + coef_xyz(27) = coef_xyz(27)+SUM(coef_xy(:, 7)*pol_z(:, 1, kg)) + coef_xyz(28) = coef_xyz(28)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(29) = coef_xyz(29)+SUM(coef_xy(:, 9)*pol_z(:, 1, kg)) + coef_xyz(30) = coef_xyz(30)+SUM(coef_xy(:, 10)*pol_z(:, 1, kg)) + coef_xyz(31) = coef_xyz(31)+SUM(coef_xy(:, 12)*pol_z(:, 1, kg)) + coef_xyz(32) = coef_xyz(32)+SUM(coef_xy(:, 13)*pol_z(:, 1, kg)) + coef_xyz(33) = coef_xyz(33)+SUM(coef_xy(:, 14)*pol_z(:, 1, kg)) + coef_xyz(34) = coef_xyz(34)+SUM(coef_xy(:, 16)*pol_z(:, 1, kg)) + coef_xyz(35) = coef_xyz(35)+SUM(coef_xy(:, 17)*pol_z(:, 1, kg)) + coef_xyz(36) = coef_xyz(36)+SUM(coef_xy(:, 19)*pol_z(:, 1, kg)) + coef_xyz(37) = coef_xyz(37)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(38) = coef_xyz(38)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(39) = coef_xyz(39)+SUM(coef_xy(:, 3)*pol_z(:, 2, kg)) + coef_xyz(40) = coef_xyz(40)+SUM(coef_xy(:, 4)*pol_z(:, 2, kg)) + coef_xyz(41) = coef_xyz(41)+SUM(coef_xy(:, 7)*pol_z(:, 2, kg)) + coef_xyz(42) = coef_xyz(42)+SUM(coef_xy(:, 8)*pol_z(:, 2, kg)) + coef_xyz(43) = coef_xyz(43)+SUM(coef_xy(:, 9)*pol_z(:, 2, kg)) + coef_xyz(44) = coef_xyz(44)+SUM(coef_xy(:, 12)*pol_z(:, 2, kg)) + coef_xyz(45) = coef_xyz(45)+SUM(coef_xy(:, 13)*pol_z(:, 2, kg)) + coef_xyz(46) = coef_xyz(46)+SUM(coef_xy(:, 16)*pol_z(:, 2, kg)) + coef_xyz(47) = coef_xyz(47)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + coef_xyz(48) = coef_xyz(48)+SUM(coef_xy(:, 2)*pol_z(:, 3, kg)) + coef_xyz(49) = coef_xyz(49)+SUM(coef_xy(:, 3)*pol_z(:, 3, kg)) + coef_xyz(50) = coef_xyz(50)+SUM(coef_xy(:, 7)*pol_z(:, 3, kg)) + coef_xyz(51) = coef_xyz(51)+SUM(coef_xy(:, 8)*pol_z(:, 3, kg)) + coef_xyz(52) = coef_xyz(52)+SUM(coef_xy(:, 12)*pol_z(:, 3, kg)) + coef_xyz(53) = coef_xyz(53)+SUM(coef_xy(:, 1)*pol_z(:, 4, kg)) + coef_xyz(54) = coef_xyz(54)+SUM(coef_xy(:, 2)*pol_z(:, 4, kg)) + coef_xyz(55) = coef_xyz(55)+SUM(coef_xy(:, 7)*pol_z(:, 4, kg)) + coef_xyz(56) = coef_xyz(56)+SUM(coef_xy(:, 1)*pol_z(:, 5, kg)) + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -954,367 +953,367 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - coef_x(1,6)=coef_x(1,6)+s01*pol_x(6,ig) - coef_x(2,6)=coef_x(2,6)+s02*pol_x(6,ig) - coef_x(3,6)=coef_x(3,6)+s03*pol_x(6,ig) - coef_x(4,6)=coef_x(4,6)+s04*pol_x(6,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,6,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,8)*pol_z(1,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,8)*pol_z(2,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,8)*pol_z(1,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,8)*pol_z(2,5,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,1)*pol_z(2,6,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + coef_x(1, 6) = coef_x(1, 6)+s01*pol_x(6, ig) + coef_x(2, 6) = coef_x(2, 6)+s02*pol_x(6, ig) + coef_x(3, 6) = coef_x(3, 6)+s03*pol_x(6, ig) + coef_x(4, 6) = coef_x(4, 6)+s04*pol_x(6, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 6, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 8)*pol_z(1, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 8)*pol_z(2, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 8)*pol_z(1, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 8)*pol_z(2, 5, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 1)*pol_z(2, 6, kg) + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -1329,449 +1328,449 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,7,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,17)*pol_z(1,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,17)*pol_z(2,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,16)*pol_z(1,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,16)*pol_z(2,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,17)*pol_z(1,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,17)*pol_z(2,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,9)*pol_z(1,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,9)*pol_z(2,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,16)*pol_z(1,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,16)*pol_z(2,5,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,9)*pol_z(1,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,9)*pol_z(2,6,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,1)*pol_z(2,7,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 7, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 17)*pol_z(1, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 17)*pol_z(2, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 16)*pol_z(1, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 16)*pol_z(2, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 17)*pol_z(1, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 17)*pol_z(2, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 9)*pol_z(1, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 9)*pol_z(2, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 16)*pol_z(1, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 16)*pol_z(2, 5, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 9)*pol_z(1, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 9)*pol_z(2, 6, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 1)*pol_z(2, 7, kg) + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1786,575 +1785,575 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,0)*pol_y(2,8,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,40)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,40)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,26)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,26)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,33)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,33)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,40)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,40)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,25)*pol_z(1,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,25)*pol_z(2,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,26)*pol_z(1,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,26)*pol_z(2,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,32)*pol_z(1,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,32)*pol_z(2,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,18)*pol_z(1,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,18)*pol_z(2,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,19)*pol_z(1,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,19)*pol_z(2,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,25)*pol_z(1,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,25)*pol_z(2,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,26)*pol_z(1,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,26)*pol_z(2,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,31)*pol_z(1,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,31)*pol_z(2,4,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,18)*pol_z(1,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,18)*pol_z(2,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,19)*pol_z(1,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,19)*pol_z(2,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,25)*pol_z(1,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,25)*pol_z(2,5,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,10)*pol_z(1,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,10)*pol_z(2,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,18)*pol_z(1,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,18)*pol_z(2,6,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,10)*pol_z(1,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,10)*pol_z(2,7,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,8,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 0)*pol_y(2, 8, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 40)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 40)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 26)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 26)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 33)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 33)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 40)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 40)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 25)*pol_z(1, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 25)*pol_z(2, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 26)*pol_z(1, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 26)*pol_z(2, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 32)*pol_z(1, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 32)*pol_z(2, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 18)*pol_z(1, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 18)*pol_z(2, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 19)*pol_z(1, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 19)*pol_z(2, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 25)*pol_z(1, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 25)*pol_z(2, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 26)*pol_z(1, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 26)*pol_z(2, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 31)*pol_z(1, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 31)*pol_z(2, 4, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 18)*pol_z(1, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 18)*pol_z(2, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 19)*pol_z(1, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 19)*pol_z(2, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 25)*pol_z(1, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 25)*pol_z(2, 5, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 10)*pol_z(1, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 10)*pol_z(2, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 18)*pol_z(1, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 18)*pol_z(2, 6, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 10)*pol_z(1, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 10)*pol_z(2, 7, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 8, kg) + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -2369,724 +2368,724 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,9)*pol_y(1,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,9)*pol_y(1,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,9)*pol_y(2,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,9)*pol_y(2,0,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,8)*pol_y(1,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,8)*pol_y(1,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,8)*pol_y(2,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,8)*pol_y(2,1,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,7)*pol_y(1,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,7)*pol_y(1,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,7)*pol_y(2,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,7)*pol_y(2,2,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,6)*pol_y(1,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,6)*pol_y(1,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,6)*pol_y(2,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,6)*pol_y(2,3,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,5)*pol_y(1,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,5)*pol_y(1,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,5)*pol_y(2,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,5)*pol_y(2,4,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,4)*pol_y(1,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,4)*pol_y(1,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,4)*pol_y(2,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,4)*pol_y(2,5,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(1,3)*pol_y(1,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(2,3)*pol_y(1,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(3,3)*pol_y(2,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(4,3)*pol_y(2,6,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(1,2)*pol_y(1,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(2,2)*pol_y(1,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(3,2)*pol_y(2,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(4,2)*pol_y(2,7,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(4,0)*pol_y(2,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(1,1)*pol_y(1,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(2,1)*pol_y(1,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(3,1)*pol_y(2,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(4,1)*pol_y(2,8,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(1,0)*pol_y(1,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(2,0)*pol_y(1,9,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(3,0)*pol_y(2,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(4,0)*pol_y(2,9,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,46)*pol_z(1,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,46)*pol_z(2,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,47)*pol_z(1,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,47)*pol_z(2,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,48)*pol_z(1,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,48)*pol_z(2,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,49)*pol_z(1,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,49)*pol_z(2,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,50)*pol_z(1,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,50)*pol_z(2,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,51)*pol_z(1,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,51)*pol_z(2,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,52)*pol_z(1,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,52)*pol_z(2,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,53)*pol_z(1,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,53)*pol_z(2,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,54)*pol_z(1,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,54)*pol_z(2,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,55)*pol_z(1,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,55)*pol_z(2,0,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,30)*pol_z(1,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,30)*pol_z(2,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,35)*pol_z(1,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,35)*pol_z(2,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,39)*pol_z(1,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,39)*pol_z(2,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,42)*pol_z(1,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,42)*pol_z(2,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,44)*pol_z(1,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,44)*pol_z(2,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,46)*pol_z(1,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,46)*pol_z(2,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,47)*pol_z(1,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,47)*pol_z(2,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,48)*pol_z(1,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,48)*pol_z(2,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,50)*pol_z(1,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,50)*pol_z(2,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,51)*pol_z(1,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,51)*pol_z(2,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,53)*pol_z(1,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,53)*pol_z(2,1,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,29)*pol_z(1,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,29)*pol_z(2,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,30)*pol_z(1,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,30)*pol_z(2,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,35)*pol_z(1,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,35)*pol_z(2,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,38)*pol_z(1,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,38)*pol_z(2,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,41)*pol_z(1,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,41)*pol_z(2,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,42)*pol_z(1,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,42)*pol_z(2,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,43)*pol_z(1,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,43)*pol_z(2,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,46)*pol_z(1,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,46)*pol_z(2,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,47)*pol_z(1,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,47)*pol_z(2,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,50)*pol_z(1,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,50)*pol_z(2,2,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,24)*pol_z(1,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,24)*pol_z(2,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,28)*pol_z(1,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,28)*pol_z(2,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,29)*pol_z(1,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,29)*pol_z(2,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,30)*pol_z(1,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,30)*pol_z(2,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,35)*pol_z(1,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,35)*pol_z(2,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,37)*pol_z(1,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,37)*pol_z(2,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,41)*pol_z(1,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,41)*pol_z(2,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,42)*pol_z(1,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,42)*pol_z(2,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,46)*pol_z(1,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,46)*pol_z(2,3,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(1,6)*pol_z(1,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(2,6)*pol_z(2,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(1,15)*pol_z(1,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(2,15)*pol_z(2,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(1,21)*pol_z(1,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(2,21)*pol_z(2,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(1,23)*pol_z(1,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(2,23)*pol_z(2,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(1,28)*pol_z(1,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(2,28)*pol_z(2,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(1,29)*pol_z(1,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(2,29)*pol_z(2,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(1,30)*pol_z(1,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(2,30)*pol_z(2,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(1,35)*pol_z(1,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(2,35)*pol_z(2,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(1,36)*pol_z(1,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(2,36)*pol_z(2,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(1,41)*pol_z(1,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(2,41)*pol_z(2,4,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(1,5)*pol_z(1,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(2,5)*pol_z(2,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(1,13)*pol_z(1,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(2,13)*pol_z(2,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(1,14)*pol_z(1,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(2,14)*pol_z(2,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(1,20)*pol_z(1,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(2,20)*pol_z(2,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(1,21)*pol_z(1,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(2,21)*pol_z(2,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(1,22)*pol_z(1,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(2,22)*pol_z(2,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(1,28)*pol_z(1,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(2,28)*pol_z(2,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(1,29)*pol_z(1,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(2,29)*pol_z(2,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(1,35)*pol_z(1,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(2,35)*pol_z(2,5,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(1,4)*pol_z(1,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(2,4)*pol_z(2,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(1,12)*pol_z(1,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(2,12)*pol_z(2,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(1,13)*pol_z(1,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(2,13)*pol_z(2,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(1,20)*pol_z(1,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(2,20)*pol_z(2,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(1,21)*pol_z(1,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(2,21)*pol_z(2,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(1,28)*pol_z(1,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(2,28)*pol_z(2,6,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(1,3)*pol_z(1,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(2,3)*pol_z(2,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(1,11)*pol_z(1,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(2,11)*pol_z(2,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(1,12)*pol_z(1,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(2,12)*pol_z(2,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(1,20)*pol_z(1,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(2,20)*pol_z(2,7,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(2,1)*pol_z(2,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(1,2)*pol_z(1,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(2,2)*pol_z(2,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(1,11)*pol_z(1,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(2,11)*pol_z(2,8,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(1,1)*pol_z(1,9,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(2,1)*pol_z(2,9,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 9)*pol_y(1, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 9)*pol_y(1, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 9)*pol_y(2, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 9)*pol_y(2, 0, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 8)*pol_y(1, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 8)*pol_y(1, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 8)*pol_y(2, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 8)*pol_y(2, 1, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 7)*pol_y(1, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 7)*pol_y(1, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 7)*pol_y(2, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 7)*pol_y(2, 2, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 6)*pol_y(1, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 6)*pol_y(1, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 6)*pol_y(2, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 6)*pol_y(2, 3, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 5)*pol_y(1, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 5)*pol_y(1, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 5)*pol_y(2, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 5)*pol_y(2, 4, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 4)*pol_y(1, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 4)*pol_y(1, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 4)*pol_y(2, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 4)*pol_y(2, 5, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(1, 3)*pol_y(1, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(2, 3)*pol_y(1, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(3, 3)*pol_y(2, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(4, 3)*pol_y(2, 6, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(1, 2)*pol_y(1, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(2, 2)*pol_y(1, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(3, 2)*pol_y(2, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(4, 2)*pol_y(2, 7, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(4, 0)*pol_y(2, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(1, 1)*pol_y(1, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(2, 1)*pol_y(1, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(3, 1)*pol_y(2, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(4, 1)*pol_y(2, 8, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(1, 0)*pol_y(1, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(2, 0)*pol_y(1, 9, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(3, 0)*pol_y(2, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(4, 0)*pol_y(2, 9, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 46)*pol_z(1, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 46)*pol_z(2, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 47)*pol_z(1, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 47)*pol_z(2, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 48)*pol_z(1, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 48)*pol_z(2, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 49)*pol_z(1, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 49)*pol_z(2, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 50)*pol_z(1, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 50)*pol_z(2, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 51)*pol_z(1, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 51)*pol_z(2, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 52)*pol_z(1, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 52)*pol_z(2, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 53)*pol_z(1, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 53)*pol_z(2, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 54)*pol_z(1, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 54)*pol_z(2, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 55)*pol_z(1, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 55)*pol_z(2, 0, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 30)*pol_z(1, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 30)*pol_z(2, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 35)*pol_z(1, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 35)*pol_z(2, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 39)*pol_z(1, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 39)*pol_z(2, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 42)*pol_z(1, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 42)*pol_z(2, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 44)*pol_z(1, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 44)*pol_z(2, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 46)*pol_z(1, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 46)*pol_z(2, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 47)*pol_z(1, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 47)*pol_z(2, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 48)*pol_z(1, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 48)*pol_z(2, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 50)*pol_z(1, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 50)*pol_z(2, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 51)*pol_z(1, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 51)*pol_z(2, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 53)*pol_z(1, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 53)*pol_z(2, 1, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 29)*pol_z(1, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 29)*pol_z(2, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 30)*pol_z(1, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 30)*pol_z(2, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 35)*pol_z(1, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 35)*pol_z(2, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 38)*pol_z(1, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 38)*pol_z(2, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 41)*pol_z(1, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 41)*pol_z(2, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 42)*pol_z(1, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 42)*pol_z(2, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 43)*pol_z(1, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 43)*pol_z(2, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 46)*pol_z(1, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 46)*pol_z(2, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 47)*pol_z(1, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 47)*pol_z(2, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 50)*pol_z(1, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 50)*pol_z(2, 2, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 24)*pol_z(1, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 24)*pol_z(2, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 28)*pol_z(1, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 28)*pol_z(2, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 29)*pol_z(1, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 29)*pol_z(2, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 30)*pol_z(1, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 30)*pol_z(2, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 35)*pol_z(1, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 35)*pol_z(2, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 37)*pol_z(1, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 37)*pol_z(2, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 41)*pol_z(1, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 41)*pol_z(2, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 42)*pol_z(1, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 42)*pol_z(2, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 46)*pol_z(1, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 46)*pol_z(2, 3, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(1, 6)*pol_z(1, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(2, 6)*pol_z(2, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(1, 15)*pol_z(1, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(2, 15)*pol_z(2, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(1, 21)*pol_z(1, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(2, 21)*pol_z(2, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(1, 23)*pol_z(1, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(2, 23)*pol_z(2, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(1, 28)*pol_z(1, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(2, 28)*pol_z(2, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(1, 29)*pol_z(1, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(2, 29)*pol_z(2, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(1, 30)*pol_z(1, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(2, 30)*pol_z(2, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(1, 35)*pol_z(1, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(2, 35)*pol_z(2, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(1, 36)*pol_z(1, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(2, 36)*pol_z(2, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(1, 41)*pol_z(1, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(2, 41)*pol_z(2, 4, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(1, 5)*pol_z(1, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(2, 5)*pol_z(2, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(1, 13)*pol_z(1, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(2, 13)*pol_z(2, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(1, 14)*pol_z(1, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(2, 14)*pol_z(2, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(1, 20)*pol_z(1, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(2, 20)*pol_z(2, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(1, 21)*pol_z(1, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(2, 21)*pol_z(2, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(1, 22)*pol_z(1, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(2, 22)*pol_z(2, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(1, 28)*pol_z(1, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(2, 28)*pol_z(2, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(1, 29)*pol_z(1, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(2, 29)*pol_z(2, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(1, 35)*pol_z(1, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(2, 35)*pol_z(2, 5, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(1, 4)*pol_z(1, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(2, 4)*pol_z(2, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(1, 12)*pol_z(1, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(2, 12)*pol_z(2, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(1, 13)*pol_z(1, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(2, 13)*pol_z(2, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(1, 20)*pol_z(1, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(2, 20)*pol_z(2, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(1, 21)*pol_z(1, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(2, 21)*pol_z(2, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(1, 28)*pol_z(1, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(2, 28)*pol_z(2, 6, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(1, 3)*pol_z(1, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(2, 3)*pol_z(2, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(1, 11)*pol_z(1, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(2, 11)*pol_z(2, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(1, 12)*pol_z(1, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(2, 12)*pol_z(2, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(1, 20)*pol_z(1, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(2, 20)*pol_z(2, 7, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(2, 1)*pol_z(2, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(1, 2)*pol_z(1, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(2, 2)*pol_z(2, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(1, 11)*pol_z(1, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(2, 11)*pol_z(2, 8, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(1, 1)*pol_z(1, 9, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(2, 1)*pol_z(2, 9, kg) + END DO END SUBROUTINE integrate_core_9 diff --git a/src/grid/integrate_fast_5.f90 b/src/grid/integrate_fast_5.f90 index ed1396fa21..b192a1f3e2 100644 --- a/src/grid/integrate_fast_5.f90 +++ b/src/grid/integrate_fast_5.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,69 +112,69 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -189,87 +189,87 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(1:2,lxp)*pol_y(1,lyp,jg) - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(3:4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+SUM(coef_xy(:,lxy)*pol_z(:,lzp,kg)) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(1:2, lxp)*pol_y(1, lyp, jg) + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(3:4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+SUM(coef_xy(:, lxy)*pol_z(:, lzp, kg)) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -284,83 +284,83 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(1:2,lxp)*pol_y(1,lyp,jg) - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(3:4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(1:2, lxp)*pol_y(1, lyp, jg) + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(3:4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -375,123 +375,123 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,3,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,1)*pol_z(2,3,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 3, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 1)*pol_z(2, 3, kg) + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -506,143 +506,143 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(1:2,lxp)*pol_y(1,lyp,jg) - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(3:4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,1)*pol_z(2,4,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(1:2, lxp)*pol_y(1, lyp, jg) + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(3:4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 1)*pol_z(2, 4, kg) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -657,163 +657,163 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,0)*pol_y(2,5,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,11)*pol_z(:,0,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,12)*pol_z(:,0,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,13)*pol_z(:,0,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,14)*pol_z(:,0,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,15)*pol_z(:,0,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,16)*pol_z(:,0,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,17)*pol_z(:,0,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,18)*pol_z(:,0,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,19)*pol_z(:,0,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,20)*pol_z(:,0,kg)) - coef_xyz(21)=coef_xyz(21)+SUM(coef_xy(:,21)*pol_z(:,0,kg)) - coef_xyz(22)=coef_xyz(22)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(23)=coef_xyz(23)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(24)=coef_xyz(24)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(25)=coef_xyz(25)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(26)=coef_xyz(26)+SUM(coef_xy(:,5)*pol_z(:,1,kg)) - coef_xyz(27)=coef_xyz(27)+SUM(coef_xy(:,7)*pol_z(:,1,kg)) - coef_xyz(28)=coef_xyz(28)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(29)=coef_xyz(29)+SUM(coef_xy(:,9)*pol_z(:,1,kg)) - coef_xyz(30)=coef_xyz(30)+SUM(coef_xy(:,10)*pol_z(:,1,kg)) - coef_xyz(31)=coef_xyz(31)+SUM(coef_xy(:,12)*pol_z(:,1,kg)) - coef_xyz(32)=coef_xyz(32)+SUM(coef_xy(:,13)*pol_z(:,1,kg)) - coef_xyz(33)=coef_xyz(33)+SUM(coef_xy(:,14)*pol_z(:,1,kg)) - coef_xyz(34)=coef_xyz(34)+SUM(coef_xy(:,16)*pol_z(:,1,kg)) - coef_xyz(35)=coef_xyz(35)+SUM(coef_xy(:,17)*pol_z(:,1,kg)) - coef_xyz(36)=coef_xyz(36)+SUM(coef_xy(:,19)*pol_z(:,1,kg)) - coef_xyz(37)=coef_xyz(37)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(38)=coef_xyz(38)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(39)=coef_xyz(39)+SUM(coef_xy(:,3)*pol_z(:,2,kg)) - coef_xyz(40)=coef_xyz(40)+SUM(coef_xy(:,4)*pol_z(:,2,kg)) - coef_xyz(41)=coef_xyz(41)+SUM(coef_xy(:,7)*pol_z(:,2,kg)) - coef_xyz(42)=coef_xyz(42)+SUM(coef_xy(:,8)*pol_z(:,2,kg)) - coef_xyz(43)=coef_xyz(43)+SUM(coef_xy(:,9)*pol_z(:,2,kg)) - coef_xyz(44)=coef_xyz(44)+SUM(coef_xy(:,12)*pol_z(:,2,kg)) - coef_xyz(45)=coef_xyz(45)+SUM(coef_xy(:,13)*pol_z(:,2,kg)) - coef_xyz(46)=coef_xyz(46)+SUM(coef_xy(:,16)*pol_z(:,2,kg)) - coef_xyz(47)=coef_xyz(47)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - coef_xyz(48)=coef_xyz(48)+SUM(coef_xy(:,2)*pol_z(:,3,kg)) - coef_xyz(49)=coef_xyz(49)+SUM(coef_xy(:,3)*pol_z(:,3,kg)) - coef_xyz(50)=coef_xyz(50)+SUM(coef_xy(:,7)*pol_z(:,3,kg)) - coef_xyz(51)=coef_xyz(51)+SUM(coef_xy(:,8)*pol_z(:,3,kg)) - coef_xyz(52)=coef_xyz(52)+SUM(coef_xy(:,12)*pol_z(:,3,kg)) - coef_xyz(53)=coef_xyz(53)+SUM(coef_xy(:,1)*pol_z(:,4,kg)) - coef_xyz(54)=coef_xyz(54)+SUM(coef_xy(:,2)*pol_z(:,4,kg)) - coef_xyz(55)=coef_xyz(55)+SUM(coef_xy(:,7)*pol_z(:,4,kg)) - coef_xyz(56)=coef_xyz(56)+SUM(coef_xy(:,1)*pol_z(:,5,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 0)*pol_y(2, 5, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 11)*pol_z(:, 0, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 12)*pol_z(:, 0, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 13)*pol_z(:, 0, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 14)*pol_z(:, 0, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 15)*pol_z(:, 0, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 16)*pol_z(:, 0, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 17)*pol_z(:, 0, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 18)*pol_z(:, 0, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 19)*pol_z(:, 0, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 20)*pol_z(:, 0, kg)) + coef_xyz(21) = coef_xyz(21)+SUM(coef_xy(:, 21)*pol_z(:, 0, kg)) + coef_xyz(22) = coef_xyz(22)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(23) = coef_xyz(23)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(24) = coef_xyz(24)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(25) = coef_xyz(25)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(26) = coef_xyz(26)+SUM(coef_xy(:, 5)*pol_z(:, 1, kg)) + coef_xyz(27) = coef_xyz(27)+SUM(coef_xy(:, 7)*pol_z(:, 1, kg)) + coef_xyz(28) = coef_xyz(28)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(29) = coef_xyz(29)+SUM(coef_xy(:, 9)*pol_z(:, 1, kg)) + coef_xyz(30) = coef_xyz(30)+SUM(coef_xy(:, 10)*pol_z(:, 1, kg)) + coef_xyz(31) = coef_xyz(31)+SUM(coef_xy(:, 12)*pol_z(:, 1, kg)) + coef_xyz(32) = coef_xyz(32)+SUM(coef_xy(:, 13)*pol_z(:, 1, kg)) + coef_xyz(33) = coef_xyz(33)+SUM(coef_xy(:, 14)*pol_z(:, 1, kg)) + coef_xyz(34) = coef_xyz(34)+SUM(coef_xy(:, 16)*pol_z(:, 1, kg)) + coef_xyz(35) = coef_xyz(35)+SUM(coef_xy(:, 17)*pol_z(:, 1, kg)) + coef_xyz(36) = coef_xyz(36)+SUM(coef_xy(:, 19)*pol_z(:, 1, kg)) + coef_xyz(37) = coef_xyz(37)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(38) = coef_xyz(38)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(39) = coef_xyz(39)+SUM(coef_xy(:, 3)*pol_z(:, 2, kg)) + coef_xyz(40) = coef_xyz(40)+SUM(coef_xy(:, 4)*pol_z(:, 2, kg)) + coef_xyz(41) = coef_xyz(41)+SUM(coef_xy(:, 7)*pol_z(:, 2, kg)) + coef_xyz(42) = coef_xyz(42)+SUM(coef_xy(:, 8)*pol_z(:, 2, kg)) + coef_xyz(43) = coef_xyz(43)+SUM(coef_xy(:, 9)*pol_z(:, 2, kg)) + coef_xyz(44) = coef_xyz(44)+SUM(coef_xy(:, 12)*pol_z(:, 2, kg)) + coef_xyz(45) = coef_xyz(45)+SUM(coef_xy(:, 13)*pol_z(:, 2, kg)) + coef_xyz(46) = coef_xyz(46)+SUM(coef_xy(:, 16)*pol_z(:, 2, kg)) + coef_xyz(47) = coef_xyz(47)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + coef_xyz(48) = coef_xyz(48)+SUM(coef_xy(:, 2)*pol_z(:, 3, kg)) + coef_xyz(49) = coef_xyz(49)+SUM(coef_xy(:, 3)*pol_z(:, 3, kg)) + coef_xyz(50) = coef_xyz(50)+SUM(coef_xy(:, 7)*pol_z(:, 3, kg)) + coef_xyz(51) = coef_xyz(51)+SUM(coef_xy(:, 8)*pol_z(:, 3, kg)) + coef_xyz(52) = coef_xyz(52)+SUM(coef_xy(:, 12)*pol_z(:, 3, kg)) + coef_xyz(53) = coef_xyz(53)+SUM(coef_xy(:, 1)*pol_z(:, 4, kg)) + coef_xyz(54) = coef_xyz(54)+SUM(coef_xy(:, 2)*pol_z(:, 4, kg)) + coef_xyz(55) = coef_xyz(55)+SUM(coef_xy(:, 7)*pol_z(:, 4, kg)) + coef_xyz(56) = coef_xyz(56)+SUM(coef_xy(:, 1)*pol_z(:, 5, kg)) + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -828,342 +828,342 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - DO lxp=0,lp - coef_x(:,lxp)=coef_x(:,lxp)+s(:)*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,6,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,8)*pol_z(1,3,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,8)*pol_z(2,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,8)*pol_z(1,4,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,8)*pol_z(2,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,8)*pol_z(1,5,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,8)*pol_z(2,5,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,1)*pol_z(2,6,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(:, lxp) = coef_x(:, lxp)+s(:)*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 6, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 8)*pol_z(1, 3, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 8)*pol_z(2, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 8)*pol_z(1, 4, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 8)*pol_z(2, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 8)*pol_z(1, 5, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 8)*pol_z(2, 5, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 1)*pol_z(2, 6, kg) + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -1178,150 +1178,150 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,7,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 7, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1336,168 +1336,168 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,0)*pol_y(2,8,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 0)*pol_y(2, 8, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -1512,187 +1512,187 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,6)*pol_y(1,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,6)*pol_y(2,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,7)*pol_y(1,0,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,7)*pol_y(2,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,8)*pol_y(1,0,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,8)*pol_y(2,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,9)*pol_y(1,0,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,9)*pol_y(2,0,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,5)*pol_y(1,1,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,5)*pol_y(2,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,6)*pol_y(1,1,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,6)*pol_y(2,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,7)*pol_y(1,1,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,7)*pol_y(2,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,8)*pol_y(1,1,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,8)*pol_y(2,1,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,22)=coef_xy(:,22)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,23)=coef_xy(:,23)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(1:2,4)*pol_y(1,2,jg) - coef_xy(:,24)=coef_xy(:,24)+coef_x(3:4,4)*pol_y(2,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(1:2,5)*pol_y(1,2,jg) - coef_xy(:,25)=coef_xy(:,25)+coef_x(3:4,5)*pol_y(2,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(1:2,6)*pol_y(1,2,jg) - coef_xy(:,26)=coef_xy(:,26)+coef_x(3:4,6)*pol_y(2,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(1:2,7)*pol_y(1,2,jg) - coef_xy(:,27)=coef_xy(:,27)+coef_x(3:4,7)*pol_y(2,2,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,28)=coef_xy(:,28)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,29)=coef_xy(:,29)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,30)=coef_xy(:,30)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(1:2,3)*pol_y(1,3,jg) - coef_xy(:,31)=coef_xy(:,31)+coef_x(3:4,3)*pol_y(2,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(1:2,4)*pol_y(1,3,jg) - coef_xy(:,32)=coef_xy(:,32)+coef_x(3:4,4)*pol_y(2,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(1:2,5)*pol_y(1,3,jg) - coef_xy(:,33)=coef_xy(:,33)+coef_x(3:4,5)*pol_y(2,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(1:2,6)*pol_y(1,3,jg) - coef_xy(:,34)=coef_xy(:,34)+coef_x(3:4,6)*pol_y(2,3,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,35)=coef_xy(:,35)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,36)=coef_xy(:,36)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(1:2,2)*pol_y(1,4,jg) - coef_xy(:,37)=coef_xy(:,37)+coef_x(3:4,2)*pol_y(2,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(1:2,3)*pol_y(1,4,jg) - coef_xy(:,38)=coef_xy(:,38)+coef_x(3:4,3)*pol_y(2,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(1:2,4)*pol_y(1,4,jg) - coef_xy(:,39)=coef_xy(:,39)+coef_x(3:4,4)*pol_y(2,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(1:2,5)*pol_y(1,4,jg) - coef_xy(:,40)=coef_xy(:,40)+coef_x(3:4,5)*pol_y(2,4,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,41)=coef_xy(:,41)+coef_x(3:4,0)*pol_y(2,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(1:2,1)*pol_y(1,5,jg) - coef_xy(:,42)=coef_xy(:,42)+coef_x(3:4,1)*pol_y(2,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(1:2,2)*pol_y(1,5,jg) - coef_xy(:,43)=coef_xy(:,43)+coef_x(3:4,2)*pol_y(2,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(1:2,3)*pol_y(1,5,jg) - coef_xy(:,44)=coef_xy(:,44)+coef_x(3:4,3)*pol_y(2,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(1:2,4)*pol_y(1,5,jg) - coef_xy(:,45)=coef_xy(:,45)+coef_x(3:4,4)*pol_y(2,5,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(1:2,0)*pol_y(1,6,jg) - coef_xy(:,46)=coef_xy(:,46)+coef_x(3:4,0)*pol_y(2,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(1:2,1)*pol_y(1,6,jg) - coef_xy(:,47)=coef_xy(:,47)+coef_x(3:4,1)*pol_y(2,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(1:2,2)*pol_y(1,6,jg) - coef_xy(:,48)=coef_xy(:,48)+coef_x(3:4,2)*pol_y(2,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(1:2,3)*pol_y(1,6,jg) - coef_xy(:,49)=coef_xy(:,49)+coef_x(3:4,3)*pol_y(2,6,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(1:2,0)*pol_y(1,7,jg) - coef_xy(:,50)=coef_xy(:,50)+coef_x(3:4,0)*pol_y(2,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(1:2,1)*pol_y(1,7,jg) - coef_xy(:,51)=coef_xy(:,51)+coef_x(3:4,1)*pol_y(2,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(1:2,2)*pol_y(1,7,jg) - coef_xy(:,52)=coef_xy(:,52)+coef_x(3:4,2)*pol_y(2,7,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(1:2,0)*pol_y(1,8,jg) - coef_xy(:,53)=coef_xy(:,53)+coef_x(3:4,0)*pol_y(2,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(1:2,1)*pol_y(1,8,jg) - coef_xy(:,54)=coef_xy(:,54)+coef_x(3:4,1)*pol_y(2,8,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(1:2,0)*pol_y(1,9,jg) - coef_xy(:,55)=coef_xy(:,55)+coef_x(3:4,0)*pol_y(2,9,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 6)*pol_y(1, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 6)*pol_y(2, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 7)*pol_y(1, 0, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 7)*pol_y(2, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 8)*pol_y(1, 0, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 8)*pol_y(2, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 9)*pol_y(1, 0, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 9)*pol_y(2, 0, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 5)*pol_y(1, 1, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 5)*pol_y(2, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 6)*pol_y(1, 1, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 6)*pol_y(2, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 7)*pol_y(1, 1, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 7)*pol_y(2, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 8)*pol_y(1, 1, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 8)*pol_y(2, 1, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 22) = coef_xy(:, 22)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 23) = coef_xy(:, 23)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(1:2, 4)*pol_y(1, 2, jg) + coef_xy(:, 24) = coef_xy(:, 24)+coef_x(3:4, 4)*pol_y(2, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(1:2, 5)*pol_y(1, 2, jg) + coef_xy(:, 25) = coef_xy(:, 25)+coef_x(3:4, 5)*pol_y(2, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(1:2, 6)*pol_y(1, 2, jg) + coef_xy(:, 26) = coef_xy(:, 26)+coef_x(3:4, 6)*pol_y(2, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(1:2, 7)*pol_y(1, 2, jg) + coef_xy(:, 27) = coef_xy(:, 27)+coef_x(3:4, 7)*pol_y(2, 2, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 28) = coef_xy(:, 28)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 29) = coef_xy(:, 29)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 30) = coef_xy(:, 30)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(1:2, 3)*pol_y(1, 3, jg) + coef_xy(:, 31) = coef_xy(:, 31)+coef_x(3:4, 3)*pol_y(2, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(1:2, 4)*pol_y(1, 3, jg) + coef_xy(:, 32) = coef_xy(:, 32)+coef_x(3:4, 4)*pol_y(2, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(1:2, 5)*pol_y(1, 3, jg) + coef_xy(:, 33) = coef_xy(:, 33)+coef_x(3:4, 5)*pol_y(2, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(1:2, 6)*pol_y(1, 3, jg) + coef_xy(:, 34) = coef_xy(:, 34)+coef_x(3:4, 6)*pol_y(2, 3, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 35) = coef_xy(:, 35)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 36) = coef_xy(:, 36)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(1:2, 2)*pol_y(1, 4, jg) + coef_xy(:, 37) = coef_xy(:, 37)+coef_x(3:4, 2)*pol_y(2, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(1:2, 3)*pol_y(1, 4, jg) + coef_xy(:, 38) = coef_xy(:, 38)+coef_x(3:4, 3)*pol_y(2, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(1:2, 4)*pol_y(1, 4, jg) + coef_xy(:, 39) = coef_xy(:, 39)+coef_x(3:4, 4)*pol_y(2, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(1:2, 5)*pol_y(1, 4, jg) + coef_xy(:, 40) = coef_xy(:, 40)+coef_x(3:4, 5)*pol_y(2, 4, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 41) = coef_xy(:, 41)+coef_x(3:4, 0)*pol_y(2, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(1:2, 1)*pol_y(1, 5, jg) + coef_xy(:, 42) = coef_xy(:, 42)+coef_x(3:4, 1)*pol_y(2, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(1:2, 2)*pol_y(1, 5, jg) + coef_xy(:, 43) = coef_xy(:, 43)+coef_x(3:4, 2)*pol_y(2, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(1:2, 3)*pol_y(1, 5, jg) + coef_xy(:, 44) = coef_xy(:, 44)+coef_x(3:4, 3)*pol_y(2, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(1:2, 4)*pol_y(1, 5, jg) + coef_xy(:, 45) = coef_xy(:, 45)+coef_x(3:4, 4)*pol_y(2, 5, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(1:2, 0)*pol_y(1, 6, jg) + coef_xy(:, 46) = coef_xy(:, 46)+coef_x(3:4, 0)*pol_y(2, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(1:2, 1)*pol_y(1, 6, jg) + coef_xy(:, 47) = coef_xy(:, 47)+coef_x(3:4, 1)*pol_y(2, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(1:2, 2)*pol_y(1, 6, jg) + coef_xy(:, 48) = coef_xy(:, 48)+coef_x(3:4, 2)*pol_y(2, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(1:2, 3)*pol_y(1, 6, jg) + coef_xy(:, 49) = coef_xy(:, 49)+coef_x(3:4, 3)*pol_y(2, 6, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(1:2, 0)*pol_y(1, 7, jg) + coef_xy(:, 50) = coef_xy(:, 50)+coef_x(3:4, 0)*pol_y(2, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(1:2, 1)*pol_y(1, 7, jg) + coef_xy(:, 51) = coef_xy(:, 51)+coef_x(3:4, 1)*pol_y(2, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(1:2, 2)*pol_y(1, 7, jg) + coef_xy(:, 52) = coef_xy(:, 52)+coef_x(3:4, 2)*pol_y(2, 7, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(1:2, 0)*pol_y(1, 8, jg) + coef_xy(:, 53) = coef_xy(:, 53)+coef_x(3:4, 0)*pol_y(2, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(1:2, 1)*pol_y(1, 8, jg) + coef_xy(:, 54) = coef_xy(:, 54)+coef_x(3:4, 1)*pol_y(2, 8, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(1:2, 0)*pol_y(1, 9, jg) + coef_xy(:, 55) = coef_xy(:, 55)+coef_x(3:4, 0)*pol_y(2, 9, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_9 diff --git a/src/grid/integrate_fast_6.f90 b/src/grid/integrate_fast_6.f90 index 3246aadbab..bd5f90f318 100644 --- a/src/grid/integrate_fast_6.f90 +++ b/src/grid/integrate_fast_6.f90 @@ -11,93 +11,93 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_default(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,lp,cmax,gridbounds) + SUBROUTINE integrate_core_default(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, lp, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), lp - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER, INTENT(IN) :: cmax - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - INTEGER, INTENT(IN) :: map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) + INTEGER, INTENT(IN) :: sphere_bounds(*), lp + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: cmax + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + INTEGER, INTENT(IN) :: map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp + coef_x = 0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO - END DO + END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO - END DO + END DO END SUBROUTINE integrate_core_default ! ************************************************************************************************** @@ -112,82 +112,82 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_0(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_0(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 0 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 0 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lxyz, & - lyp, lzp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lxyz, & + lyp, lzp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - END DO - lxyz = 0 - DO lzp=0,lp - lxy=0 - DO lyp=0,lp-lzp - DO lxp=0,lp-lzp-lyp - lxyz=lxyz+1 ; lxy=lxy+1 - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(1,lxy)*pol_z(1,lzp,kg) - coef_xyz(lxyz)=coef_xyz(lxyz)+coef_xy(2,lxy)*pol_z(2,lzp,kg) - ENDDO - lxy=lxy+lzp - ENDDO - ENDDO - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + END DO + lxyz = 0 + DO lzp = 0, lp + lxy = 0 + DO lyp = 0, lp-lzp + DO lxp = 0, lp-lzp-lyp + lxyz = lxyz+1; lxy = lxy+1 + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(1, lxy)*pol_z(1, lzp, kg) + coef_xyz(lxyz) = coef_xyz(lxyz)+coef_xy(2, lxy)*pol_z(2, lzp, kg) + ENDDO + lxy = lxy+lzp + ENDDO + ENDDO + END DO END SUBROUTINE integrate_core_0 ! ************************************************************************************************** @@ -202,75 +202,75 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_1(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_1(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 1 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 1 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,0)*pol_y(2,1,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 0)*pol_y(2, 1, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + END DO END SUBROUTINE integrate_core_1 ! ************************************************************************************************** @@ -285,99 +285,99 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_2(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_2(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 2 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 2 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(1:2,lxp)*pol_y(1,lyp,jg) - coef_xy(:,lxy)=coef_xy(:,lxy)+coef_x(3:4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,1)*pol_z(2,2,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(1:2, lxp)*pol_y(1, lyp, jg) + coef_xy(:, lxy) = coef_xy(:, lxy)+coef_x(3:4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 1)*pol_z(2, 2, kg) + END DO END SUBROUTINE integrate_core_2 ! ************************************************************************************************** @@ -392,125 +392,125 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_3(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_3(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 3 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 3 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, lxy, lyp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, lxy, lyp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - END DO - lxy=0 - DO lyp=0,lp - DO lxp=0,lp-lyp - lxy=lxy+1 - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(1,lxp)*pol_y(1,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(2,lxp)*pol_y(1,lyp,jg) - coef_xy(1,lxy)=coef_xy(1,lxy)+coef_x(3,lxp)*pol_y(2,lyp,jg) - coef_xy(2,lxy)=coef_xy(2,lxy)+coef_x(4,lxp)*pol_y(2,lyp,jg) - ENDDO - ENDDO - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,1)*pol_z(2,3,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + END DO + lxy = 0 + DO lyp = 0, lp + DO lxp = 0, lp-lyp + lxy = lxy+1 + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(1, lxp)*pol_y(1, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(2, lxp)*pol_y(1, lyp, jg) + coef_xy(1, lxy) = coef_xy(1, lxy)+coef_x(3, lxp)*pol_y(2, lyp, jg) + coef_xy(2, lxy) = coef_xy(2, lxy)+coef_x(4, lxp)*pol_y(2, lyp, jg) + ENDDO + ENDDO + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 1)*pol_z(2, 3, kg) + END DO END SUBROUTINE integrate_core_3 ! ************************************************************************************************** @@ -525,195 +525,195 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_4(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_4(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 4 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 4 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,0)*pol_y(2,4,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,1)*pol_z(2,4,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 0)*pol_y(2, 4, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 1)*pol_z(2, 4, kg) + END DO END SUBROUTINE integrate_core_4 ! ************************************************************************************************** @@ -728,181 +728,181 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_5(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_5(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 5 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 5 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - coef_x(1,0)=coef_x(1,0)+s01*pol_x(0,ig) - coef_x(2,0)=coef_x(2,0)+s02*pol_x(0,ig) - coef_x(3,0)=coef_x(3,0)+s03*pol_x(0,ig) - coef_x(4,0)=coef_x(4,0)+s04*pol_x(0,ig) - coef_x(1,1)=coef_x(1,1)+s01*pol_x(1,ig) - coef_x(2,1)=coef_x(2,1)+s02*pol_x(1,ig) - coef_x(3,1)=coef_x(3,1)+s03*pol_x(1,ig) - coef_x(4,1)=coef_x(4,1)+s04*pol_x(1,ig) - coef_x(1,2)=coef_x(1,2)+s01*pol_x(2,ig) - coef_x(2,2)=coef_x(2,2)+s02*pol_x(2,ig) - coef_x(3,2)=coef_x(3,2)+s03*pol_x(2,ig) - coef_x(4,2)=coef_x(4,2)+s04*pol_x(2,ig) - coef_x(1,3)=coef_x(1,3)+s01*pol_x(3,ig) - coef_x(2,3)=coef_x(2,3)+s02*pol_x(3,ig) - coef_x(3,3)=coef_x(3,3)+s03*pol_x(3,ig) - coef_x(4,3)=coef_x(4,3)+s04*pol_x(3,ig) - coef_x(1,4)=coef_x(1,4)+s01*pol_x(4,ig) - coef_x(2,4)=coef_x(2,4)+s02*pol_x(4,ig) - coef_x(3,4)=coef_x(3,4)+s03*pol_x(4,ig) - coef_x(4,4)=coef_x(4,4)+s04*pol_x(4,ig) - coef_x(1,5)=coef_x(1,5)+s01*pol_x(5,ig) - coef_x(2,5)=coef_x(2,5)+s02*pol_x(5,ig) - coef_x(3,5)=coef_x(3,5)+s03*pol_x(5,ig) - coef_x(4,5)=coef_x(4,5)+s04*pol_x(5,ig) - END DO - coef_xy(:,1)=coef_xy(:,1)+coef_x(1:2,0)*pol_y(1,0,jg) - coef_xy(:,1)=coef_xy(:,1)+coef_x(3:4,0)*pol_y(2,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(1:2,1)*pol_y(1,0,jg) - coef_xy(:,2)=coef_xy(:,2)+coef_x(3:4,1)*pol_y(2,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(1:2,2)*pol_y(1,0,jg) - coef_xy(:,3)=coef_xy(:,3)+coef_x(3:4,2)*pol_y(2,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(1:2,3)*pol_y(1,0,jg) - coef_xy(:,4)=coef_xy(:,4)+coef_x(3:4,3)*pol_y(2,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(1:2,4)*pol_y(1,0,jg) - coef_xy(:,5)=coef_xy(:,5)+coef_x(3:4,4)*pol_y(2,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(1:2,5)*pol_y(1,0,jg) - coef_xy(:,6)=coef_xy(:,6)+coef_x(3:4,5)*pol_y(2,0,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(1:2,0)*pol_y(1,1,jg) - coef_xy(:,7)=coef_xy(:,7)+coef_x(3:4,0)*pol_y(2,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(1:2,1)*pol_y(1,1,jg) - coef_xy(:,8)=coef_xy(:,8)+coef_x(3:4,1)*pol_y(2,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(1:2,2)*pol_y(1,1,jg) - coef_xy(:,9)=coef_xy(:,9)+coef_x(3:4,2)*pol_y(2,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(1:2,3)*pol_y(1,1,jg) - coef_xy(:,10)=coef_xy(:,10)+coef_x(3:4,3)*pol_y(2,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(1:2,4)*pol_y(1,1,jg) - coef_xy(:,11)=coef_xy(:,11)+coef_x(3:4,4)*pol_y(2,1,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(1:2,0)*pol_y(1,2,jg) - coef_xy(:,12)=coef_xy(:,12)+coef_x(3:4,0)*pol_y(2,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(1:2,1)*pol_y(1,2,jg) - coef_xy(:,13)=coef_xy(:,13)+coef_x(3:4,1)*pol_y(2,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(1:2,2)*pol_y(1,2,jg) - coef_xy(:,14)=coef_xy(:,14)+coef_x(3:4,2)*pol_y(2,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(1:2,3)*pol_y(1,2,jg) - coef_xy(:,15)=coef_xy(:,15)+coef_x(3:4,3)*pol_y(2,2,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(1:2,0)*pol_y(1,3,jg) - coef_xy(:,16)=coef_xy(:,16)+coef_x(3:4,0)*pol_y(2,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(1:2,1)*pol_y(1,3,jg) - coef_xy(:,17)=coef_xy(:,17)+coef_x(3:4,1)*pol_y(2,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(1:2,2)*pol_y(1,3,jg) - coef_xy(:,18)=coef_xy(:,18)+coef_x(3:4,2)*pol_y(2,3,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(1:2,0)*pol_y(1,4,jg) - coef_xy(:,19)=coef_xy(:,19)+coef_x(3:4,0)*pol_y(2,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(1:2,1)*pol_y(1,4,jg) - coef_xy(:,20)=coef_xy(:,20)+coef_x(3:4,1)*pol_y(2,4,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(1:2,0)*pol_y(1,5,jg) - coef_xy(:,21)=coef_xy(:,21)+coef_x(3:4,0)*pol_y(2,5,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,11)*pol_z(:,0,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,12)*pol_z(:,0,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,13)*pol_z(:,0,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,14)*pol_z(:,0,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,15)*pol_z(:,0,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,16)*pol_z(:,0,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,17)*pol_z(:,0,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,18)*pol_z(:,0,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,19)*pol_z(:,0,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,20)*pol_z(:,0,kg)) - coef_xyz(21)=coef_xyz(21)+SUM(coef_xy(:,21)*pol_z(:,0,kg)) - coef_xyz(22)=coef_xyz(22)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(23)=coef_xyz(23)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(24)=coef_xyz(24)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(25)=coef_xyz(25)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(26)=coef_xyz(26)+SUM(coef_xy(:,5)*pol_z(:,1,kg)) - coef_xyz(27)=coef_xyz(27)+SUM(coef_xy(:,7)*pol_z(:,1,kg)) - coef_xyz(28)=coef_xyz(28)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(29)=coef_xyz(29)+SUM(coef_xy(:,9)*pol_z(:,1,kg)) - coef_xyz(30)=coef_xyz(30)+SUM(coef_xy(:,10)*pol_z(:,1,kg)) - coef_xyz(31)=coef_xyz(31)+SUM(coef_xy(:,12)*pol_z(:,1,kg)) - coef_xyz(32)=coef_xyz(32)+SUM(coef_xy(:,13)*pol_z(:,1,kg)) - coef_xyz(33)=coef_xyz(33)+SUM(coef_xy(:,14)*pol_z(:,1,kg)) - coef_xyz(34)=coef_xyz(34)+SUM(coef_xy(:,16)*pol_z(:,1,kg)) - coef_xyz(35)=coef_xyz(35)+SUM(coef_xy(:,17)*pol_z(:,1,kg)) - coef_xyz(36)=coef_xyz(36)+SUM(coef_xy(:,19)*pol_z(:,1,kg)) - coef_xyz(37)=coef_xyz(37)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(38)=coef_xyz(38)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(39)=coef_xyz(39)+SUM(coef_xy(:,3)*pol_z(:,2,kg)) - coef_xyz(40)=coef_xyz(40)+SUM(coef_xy(:,4)*pol_z(:,2,kg)) - coef_xyz(41)=coef_xyz(41)+SUM(coef_xy(:,7)*pol_z(:,2,kg)) - coef_xyz(42)=coef_xyz(42)+SUM(coef_xy(:,8)*pol_z(:,2,kg)) - coef_xyz(43)=coef_xyz(43)+SUM(coef_xy(:,9)*pol_z(:,2,kg)) - coef_xyz(44)=coef_xyz(44)+SUM(coef_xy(:,12)*pol_z(:,2,kg)) - coef_xyz(45)=coef_xyz(45)+SUM(coef_xy(:,13)*pol_z(:,2,kg)) - coef_xyz(46)=coef_xyz(46)+SUM(coef_xy(:,16)*pol_z(:,2,kg)) - coef_xyz(47)=coef_xyz(47)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - coef_xyz(48)=coef_xyz(48)+SUM(coef_xy(:,2)*pol_z(:,3,kg)) - coef_xyz(49)=coef_xyz(49)+SUM(coef_xy(:,3)*pol_z(:,3,kg)) - coef_xyz(50)=coef_xyz(50)+SUM(coef_xy(:,7)*pol_z(:,3,kg)) - coef_xyz(51)=coef_xyz(51)+SUM(coef_xy(:,8)*pol_z(:,3,kg)) - coef_xyz(52)=coef_xyz(52)+SUM(coef_xy(:,12)*pol_z(:,3,kg)) - coef_xyz(53)=coef_xyz(53)+SUM(coef_xy(:,1)*pol_z(:,4,kg)) - coef_xyz(54)=coef_xyz(54)+SUM(coef_xy(:,2)*pol_z(:,4,kg)) - coef_xyz(55)=coef_xyz(55)+SUM(coef_xy(:,7)*pol_z(:,4,kg)) - coef_xyz(56)=coef_xyz(56)+SUM(coef_xy(:,1)*pol_z(:,5,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + coef_x(1, 0) = coef_x(1, 0)+s01*pol_x(0, ig) + coef_x(2, 0) = coef_x(2, 0)+s02*pol_x(0, ig) + coef_x(3, 0) = coef_x(3, 0)+s03*pol_x(0, ig) + coef_x(4, 0) = coef_x(4, 0)+s04*pol_x(0, ig) + coef_x(1, 1) = coef_x(1, 1)+s01*pol_x(1, ig) + coef_x(2, 1) = coef_x(2, 1)+s02*pol_x(1, ig) + coef_x(3, 1) = coef_x(3, 1)+s03*pol_x(1, ig) + coef_x(4, 1) = coef_x(4, 1)+s04*pol_x(1, ig) + coef_x(1, 2) = coef_x(1, 2)+s01*pol_x(2, ig) + coef_x(2, 2) = coef_x(2, 2)+s02*pol_x(2, ig) + coef_x(3, 2) = coef_x(3, 2)+s03*pol_x(2, ig) + coef_x(4, 2) = coef_x(4, 2)+s04*pol_x(2, ig) + coef_x(1, 3) = coef_x(1, 3)+s01*pol_x(3, ig) + coef_x(2, 3) = coef_x(2, 3)+s02*pol_x(3, ig) + coef_x(3, 3) = coef_x(3, 3)+s03*pol_x(3, ig) + coef_x(4, 3) = coef_x(4, 3)+s04*pol_x(3, ig) + coef_x(1, 4) = coef_x(1, 4)+s01*pol_x(4, ig) + coef_x(2, 4) = coef_x(2, 4)+s02*pol_x(4, ig) + coef_x(3, 4) = coef_x(3, 4)+s03*pol_x(4, ig) + coef_x(4, 4) = coef_x(4, 4)+s04*pol_x(4, ig) + coef_x(1, 5) = coef_x(1, 5)+s01*pol_x(5, ig) + coef_x(2, 5) = coef_x(2, 5)+s02*pol_x(5, ig) + coef_x(3, 5) = coef_x(3, 5)+s03*pol_x(5, ig) + coef_x(4, 5) = coef_x(4, 5)+s04*pol_x(5, ig) + END DO + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(1:2, 0)*pol_y(1, 0, jg) + coef_xy(:, 1) = coef_xy(:, 1)+coef_x(3:4, 0)*pol_y(2, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(1:2, 1)*pol_y(1, 0, jg) + coef_xy(:, 2) = coef_xy(:, 2)+coef_x(3:4, 1)*pol_y(2, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(1:2, 2)*pol_y(1, 0, jg) + coef_xy(:, 3) = coef_xy(:, 3)+coef_x(3:4, 2)*pol_y(2, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(1:2, 3)*pol_y(1, 0, jg) + coef_xy(:, 4) = coef_xy(:, 4)+coef_x(3:4, 3)*pol_y(2, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(1:2, 4)*pol_y(1, 0, jg) + coef_xy(:, 5) = coef_xy(:, 5)+coef_x(3:4, 4)*pol_y(2, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(1:2, 5)*pol_y(1, 0, jg) + coef_xy(:, 6) = coef_xy(:, 6)+coef_x(3:4, 5)*pol_y(2, 0, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(1:2, 0)*pol_y(1, 1, jg) + coef_xy(:, 7) = coef_xy(:, 7)+coef_x(3:4, 0)*pol_y(2, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(1:2, 1)*pol_y(1, 1, jg) + coef_xy(:, 8) = coef_xy(:, 8)+coef_x(3:4, 1)*pol_y(2, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(1:2, 2)*pol_y(1, 1, jg) + coef_xy(:, 9) = coef_xy(:, 9)+coef_x(3:4, 2)*pol_y(2, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(1:2, 3)*pol_y(1, 1, jg) + coef_xy(:, 10) = coef_xy(:, 10)+coef_x(3:4, 3)*pol_y(2, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(1:2, 4)*pol_y(1, 1, jg) + coef_xy(:, 11) = coef_xy(:, 11)+coef_x(3:4, 4)*pol_y(2, 1, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(1:2, 0)*pol_y(1, 2, jg) + coef_xy(:, 12) = coef_xy(:, 12)+coef_x(3:4, 0)*pol_y(2, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(1:2, 1)*pol_y(1, 2, jg) + coef_xy(:, 13) = coef_xy(:, 13)+coef_x(3:4, 1)*pol_y(2, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(1:2, 2)*pol_y(1, 2, jg) + coef_xy(:, 14) = coef_xy(:, 14)+coef_x(3:4, 2)*pol_y(2, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(1:2, 3)*pol_y(1, 2, jg) + coef_xy(:, 15) = coef_xy(:, 15)+coef_x(3:4, 3)*pol_y(2, 2, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(1:2, 0)*pol_y(1, 3, jg) + coef_xy(:, 16) = coef_xy(:, 16)+coef_x(3:4, 0)*pol_y(2, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(1:2, 1)*pol_y(1, 3, jg) + coef_xy(:, 17) = coef_xy(:, 17)+coef_x(3:4, 1)*pol_y(2, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(1:2, 2)*pol_y(1, 3, jg) + coef_xy(:, 18) = coef_xy(:, 18)+coef_x(3:4, 2)*pol_y(2, 3, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(1:2, 0)*pol_y(1, 4, jg) + coef_xy(:, 19) = coef_xy(:, 19)+coef_x(3:4, 0)*pol_y(2, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(1:2, 1)*pol_y(1, 4, jg) + coef_xy(:, 20) = coef_xy(:, 20)+coef_x(3:4, 1)*pol_y(2, 4, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(1:2, 0)*pol_y(1, 5, jg) + coef_xy(:, 21) = coef_xy(:, 21)+coef_x(3:4, 0)*pol_y(2, 5, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 11)*pol_z(:, 0, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 12)*pol_z(:, 0, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 13)*pol_z(:, 0, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 14)*pol_z(:, 0, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 15)*pol_z(:, 0, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 16)*pol_z(:, 0, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 17)*pol_z(:, 0, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 18)*pol_z(:, 0, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 19)*pol_z(:, 0, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 20)*pol_z(:, 0, kg)) + coef_xyz(21) = coef_xyz(21)+SUM(coef_xy(:, 21)*pol_z(:, 0, kg)) + coef_xyz(22) = coef_xyz(22)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(23) = coef_xyz(23)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(24) = coef_xyz(24)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(25) = coef_xyz(25)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(26) = coef_xyz(26)+SUM(coef_xy(:, 5)*pol_z(:, 1, kg)) + coef_xyz(27) = coef_xyz(27)+SUM(coef_xy(:, 7)*pol_z(:, 1, kg)) + coef_xyz(28) = coef_xyz(28)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(29) = coef_xyz(29)+SUM(coef_xy(:, 9)*pol_z(:, 1, kg)) + coef_xyz(30) = coef_xyz(30)+SUM(coef_xy(:, 10)*pol_z(:, 1, kg)) + coef_xyz(31) = coef_xyz(31)+SUM(coef_xy(:, 12)*pol_z(:, 1, kg)) + coef_xyz(32) = coef_xyz(32)+SUM(coef_xy(:, 13)*pol_z(:, 1, kg)) + coef_xyz(33) = coef_xyz(33)+SUM(coef_xy(:, 14)*pol_z(:, 1, kg)) + coef_xyz(34) = coef_xyz(34)+SUM(coef_xy(:, 16)*pol_z(:, 1, kg)) + coef_xyz(35) = coef_xyz(35)+SUM(coef_xy(:, 17)*pol_z(:, 1, kg)) + coef_xyz(36) = coef_xyz(36)+SUM(coef_xy(:, 19)*pol_z(:, 1, kg)) + coef_xyz(37) = coef_xyz(37)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(38) = coef_xyz(38)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(39) = coef_xyz(39)+SUM(coef_xy(:, 3)*pol_z(:, 2, kg)) + coef_xyz(40) = coef_xyz(40)+SUM(coef_xy(:, 4)*pol_z(:, 2, kg)) + coef_xyz(41) = coef_xyz(41)+SUM(coef_xy(:, 7)*pol_z(:, 2, kg)) + coef_xyz(42) = coef_xyz(42)+SUM(coef_xy(:, 8)*pol_z(:, 2, kg)) + coef_xyz(43) = coef_xyz(43)+SUM(coef_xy(:, 9)*pol_z(:, 2, kg)) + coef_xyz(44) = coef_xyz(44)+SUM(coef_xy(:, 12)*pol_z(:, 2, kg)) + coef_xyz(45) = coef_xyz(45)+SUM(coef_xy(:, 13)*pol_z(:, 2, kg)) + coef_xyz(46) = coef_xyz(46)+SUM(coef_xy(:, 16)*pol_z(:, 2, kg)) + coef_xyz(47) = coef_xyz(47)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + coef_xyz(48) = coef_xyz(48)+SUM(coef_xy(:, 2)*pol_z(:, 3, kg)) + coef_xyz(49) = coef_xyz(49)+SUM(coef_xy(:, 3)*pol_z(:, 3, kg)) + coef_xyz(50) = coef_xyz(50)+SUM(coef_xy(:, 7)*pol_z(:, 3, kg)) + coef_xyz(51) = coef_xyz(51)+SUM(coef_xy(:, 8)*pol_z(:, 3, kg)) + coef_xyz(52) = coef_xyz(52)+SUM(coef_xy(:, 12)*pol_z(:, 3, kg)) + coef_xyz(53) = coef_xyz(53)+SUM(coef_xy(:, 1)*pol_z(:, 4, kg)) + coef_xyz(54) = coef_xyz(54)+SUM(coef_xy(:, 2)*pol_z(:, 4, kg)) + coef_xyz(55) = coef_xyz(55)+SUM(coef_xy(:, 7)*pol_z(:, 4, kg)) + coef_xyz(56) = coef_xyz(56)+SUM(coef_xy(:, 1)*pol_z(:, 5, kg)) + END DO END SUBROUTINE integrate_core_5 ! ************************************************************************************************** @@ -917,261 +917,261 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_6(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_6(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 6 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 6 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, lxp, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s01, s02, s03, s04 + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, lxp, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s01, s02, s03, s04 - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s01=grid(i,j,k) - s02=grid(i,j,k2) - s03=grid(i,j2,k) - s04=grid(i,j2,k2) - DO lxp=0,lp - coef_x(1,lxp)=coef_x(1,lxp)+s01*pol_x(lxp,ig) - coef_x(2,lxp)=coef_x(2,lxp)+s02*pol_x(lxp,ig) - coef_x(3,lxp)=coef_x(3,lxp)+s03*pol_x(lxp,ig) - coef_x(4,lxp)=coef_x(4,lxp)+s04*pol_x(lxp,ig) - ENDDO - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,6,jg) - END DO - coef_xyz(1)=coef_xyz(1)+SUM(coef_xy(:,1)*pol_z(:,0,kg)) - coef_xyz(2)=coef_xyz(2)+SUM(coef_xy(:,2)*pol_z(:,0,kg)) - coef_xyz(3)=coef_xyz(3)+SUM(coef_xy(:,3)*pol_z(:,0,kg)) - coef_xyz(4)=coef_xyz(4)+SUM(coef_xy(:,4)*pol_z(:,0,kg)) - coef_xyz(5)=coef_xyz(5)+SUM(coef_xy(:,5)*pol_z(:,0,kg)) - coef_xyz(6)=coef_xyz(6)+SUM(coef_xy(:,6)*pol_z(:,0,kg)) - coef_xyz(7)=coef_xyz(7)+SUM(coef_xy(:,7)*pol_z(:,0,kg)) - coef_xyz(8)=coef_xyz(8)+SUM(coef_xy(:,8)*pol_z(:,0,kg)) - coef_xyz(9)=coef_xyz(9)+SUM(coef_xy(:,9)*pol_z(:,0,kg)) - coef_xyz(10)=coef_xyz(10)+SUM(coef_xy(:,10)*pol_z(:,0,kg)) - coef_xyz(11)=coef_xyz(11)+SUM(coef_xy(:,11)*pol_z(:,0,kg)) - coef_xyz(12)=coef_xyz(12)+SUM(coef_xy(:,12)*pol_z(:,0,kg)) - coef_xyz(13)=coef_xyz(13)+SUM(coef_xy(:,13)*pol_z(:,0,kg)) - coef_xyz(14)=coef_xyz(14)+SUM(coef_xy(:,14)*pol_z(:,0,kg)) - coef_xyz(15)=coef_xyz(15)+SUM(coef_xy(:,15)*pol_z(:,0,kg)) - coef_xyz(16)=coef_xyz(16)+SUM(coef_xy(:,16)*pol_z(:,0,kg)) - coef_xyz(17)=coef_xyz(17)+SUM(coef_xy(:,17)*pol_z(:,0,kg)) - coef_xyz(18)=coef_xyz(18)+SUM(coef_xy(:,18)*pol_z(:,0,kg)) - coef_xyz(19)=coef_xyz(19)+SUM(coef_xy(:,19)*pol_z(:,0,kg)) - coef_xyz(20)=coef_xyz(20)+SUM(coef_xy(:,20)*pol_z(:,0,kg)) - coef_xyz(21)=coef_xyz(21)+SUM(coef_xy(:,21)*pol_z(:,0,kg)) - coef_xyz(22)=coef_xyz(22)+SUM(coef_xy(:,22)*pol_z(:,0,kg)) - coef_xyz(23)=coef_xyz(23)+SUM(coef_xy(:,23)*pol_z(:,0,kg)) - coef_xyz(24)=coef_xyz(24)+SUM(coef_xy(:,24)*pol_z(:,0,kg)) - coef_xyz(25)=coef_xyz(25)+SUM(coef_xy(:,25)*pol_z(:,0,kg)) - coef_xyz(26)=coef_xyz(26)+SUM(coef_xy(:,26)*pol_z(:,0,kg)) - coef_xyz(27)=coef_xyz(27)+SUM(coef_xy(:,27)*pol_z(:,0,kg)) - coef_xyz(28)=coef_xyz(28)+SUM(coef_xy(:,28)*pol_z(:,0,kg)) - coef_xyz(29)=coef_xyz(29)+SUM(coef_xy(:,1)*pol_z(:,1,kg)) - coef_xyz(30)=coef_xyz(30)+SUM(coef_xy(:,2)*pol_z(:,1,kg)) - coef_xyz(31)=coef_xyz(31)+SUM(coef_xy(:,3)*pol_z(:,1,kg)) - coef_xyz(32)=coef_xyz(32)+SUM(coef_xy(:,4)*pol_z(:,1,kg)) - coef_xyz(33)=coef_xyz(33)+SUM(coef_xy(:,5)*pol_z(:,1,kg)) - coef_xyz(34)=coef_xyz(34)+SUM(coef_xy(:,6)*pol_z(:,1,kg)) - coef_xyz(35)=coef_xyz(35)+SUM(coef_xy(:,8)*pol_z(:,1,kg)) - coef_xyz(36)=coef_xyz(36)+SUM(coef_xy(:,9)*pol_z(:,1,kg)) - coef_xyz(37)=coef_xyz(37)+SUM(coef_xy(:,10)*pol_z(:,1,kg)) - coef_xyz(38)=coef_xyz(38)+SUM(coef_xy(:,11)*pol_z(:,1,kg)) - coef_xyz(39)=coef_xyz(39)+SUM(coef_xy(:,12)*pol_z(:,1,kg)) - coef_xyz(40)=coef_xyz(40)+SUM(coef_xy(:,14)*pol_z(:,1,kg)) - coef_xyz(41)=coef_xyz(41)+SUM(coef_xy(:,15)*pol_z(:,1,kg)) - coef_xyz(42)=coef_xyz(42)+SUM(coef_xy(:,16)*pol_z(:,1,kg)) - coef_xyz(43)=coef_xyz(43)+SUM(coef_xy(:,17)*pol_z(:,1,kg)) - coef_xyz(44)=coef_xyz(44)+SUM(coef_xy(:,19)*pol_z(:,1,kg)) - coef_xyz(45)=coef_xyz(45)+SUM(coef_xy(:,20)*pol_z(:,1,kg)) - coef_xyz(46)=coef_xyz(46)+SUM(coef_xy(:,21)*pol_z(:,1,kg)) - coef_xyz(47)=coef_xyz(47)+SUM(coef_xy(:,23)*pol_z(:,1,kg)) - coef_xyz(48)=coef_xyz(48)+SUM(coef_xy(:,24)*pol_z(:,1,kg)) - coef_xyz(49)=coef_xyz(49)+SUM(coef_xy(:,26)*pol_z(:,1,kg)) - coef_xyz(50)=coef_xyz(50)+SUM(coef_xy(:,1)*pol_z(:,2,kg)) - coef_xyz(51)=coef_xyz(51)+SUM(coef_xy(:,2)*pol_z(:,2,kg)) - coef_xyz(52)=coef_xyz(52)+SUM(coef_xy(:,3)*pol_z(:,2,kg)) - coef_xyz(53)=coef_xyz(53)+SUM(coef_xy(:,4)*pol_z(:,2,kg)) - coef_xyz(54)=coef_xyz(54)+SUM(coef_xy(:,5)*pol_z(:,2,kg)) - coef_xyz(55)=coef_xyz(55)+SUM(coef_xy(:,8)*pol_z(:,2,kg)) - coef_xyz(56)=coef_xyz(56)+SUM(coef_xy(:,9)*pol_z(:,2,kg)) - coef_xyz(57)=coef_xyz(57)+SUM(coef_xy(:,10)*pol_z(:,2,kg)) - coef_xyz(58)=coef_xyz(58)+SUM(coef_xy(:,11)*pol_z(:,2,kg)) - coef_xyz(59)=coef_xyz(59)+SUM(coef_xy(:,14)*pol_z(:,2,kg)) - coef_xyz(60)=coef_xyz(60)+SUM(coef_xy(:,15)*pol_z(:,2,kg)) - coef_xyz(61)=coef_xyz(61)+SUM(coef_xy(:,16)*pol_z(:,2,kg)) - coef_xyz(62)=coef_xyz(62)+SUM(coef_xy(:,19)*pol_z(:,2,kg)) - coef_xyz(63)=coef_xyz(63)+SUM(coef_xy(:,20)*pol_z(:,2,kg)) - coef_xyz(64)=coef_xyz(64)+SUM(coef_xy(:,23)*pol_z(:,2,kg)) - coef_xyz(65)=coef_xyz(65)+SUM(coef_xy(:,1)*pol_z(:,3,kg)) - coef_xyz(66)=coef_xyz(66)+SUM(coef_xy(:,2)*pol_z(:,3,kg)) - coef_xyz(67)=coef_xyz(67)+SUM(coef_xy(:,3)*pol_z(:,3,kg)) - coef_xyz(68)=coef_xyz(68)+SUM(coef_xy(:,4)*pol_z(:,3,kg)) - coef_xyz(69)=coef_xyz(69)+SUM(coef_xy(:,8)*pol_z(:,3,kg)) - coef_xyz(70)=coef_xyz(70)+SUM(coef_xy(:,9)*pol_z(:,3,kg)) - coef_xyz(71)=coef_xyz(71)+SUM(coef_xy(:,10)*pol_z(:,3,kg)) - coef_xyz(72)=coef_xyz(72)+SUM(coef_xy(:,14)*pol_z(:,3,kg)) - coef_xyz(73)=coef_xyz(73)+SUM(coef_xy(:,15)*pol_z(:,3,kg)) - coef_xyz(74)=coef_xyz(74)+SUM(coef_xy(:,19)*pol_z(:,3,kg)) - coef_xyz(75)=coef_xyz(75)+SUM(coef_xy(:,1)*pol_z(:,4,kg)) - coef_xyz(76)=coef_xyz(76)+SUM(coef_xy(:,2)*pol_z(:,4,kg)) - coef_xyz(77)=coef_xyz(77)+SUM(coef_xy(:,3)*pol_z(:,4,kg)) - coef_xyz(78)=coef_xyz(78)+SUM(coef_xy(:,8)*pol_z(:,4,kg)) - coef_xyz(79)=coef_xyz(79)+SUM(coef_xy(:,9)*pol_z(:,4,kg)) - coef_xyz(80)=coef_xyz(80)+SUM(coef_xy(:,14)*pol_z(:,4,kg)) - coef_xyz(81)=coef_xyz(81)+SUM(coef_xy(:,1)*pol_z(:,5,kg)) - coef_xyz(82)=coef_xyz(82)+SUM(coef_xy(:,2)*pol_z(:,5,kg)) - coef_xyz(83)=coef_xyz(83)+SUM(coef_xy(:,8)*pol_z(:,5,kg)) - coef_xyz(84)=coef_xyz(84)+SUM(coef_xy(:,1)*pol_z(:,6,kg)) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s01 = grid(i, j, k) + s02 = grid(i, j, k2) + s03 = grid(i, j2, k) + s04 = grid(i, j2, k2) + DO lxp = 0, lp + coef_x(1, lxp) = coef_x(1, lxp)+s01*pol_x(lxp, ig) + coef_x(2, lxp) = coef_x(2, lxp)+s02*pol_x(lxp, ig) + coef_x(3, lxp) = coef_x(3, lxp)+s03*pol_x(lxp, ig) + coef_x(4, lxp) = coef_x(4, lxp)+s04*pol_x(lxp, ig) + ENDDO + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 6, jg) + END DO + coef_xyz(1) = coef_xyz(1)+SUM(coef_xy(:, 1)*pol_z(:, 0, kg)) + coef_xyz(2) = coef_xyz(2)+SUM(coef_xy(:, 2)*pol_z(:, 0, kg)) + coef_xyz(3) = coef_xyz(3)+SUM(coef_xy(:, 3)*pol_z(:, 0, kg)) + coef_xyz(4) = coef_xyz(4)+SUM(coef_xy(:, 4)*pol_z(:, 0, kg)) + coef_xyz(5) = coef_xyz(5)+SUM(coef_xy(:, 5)*pol_z(:, 0, kg)) + coef_xyz(6) = coef_xyz(6)+SUM(coef_xy(:, 6)*pol_z(:, 0, kg)) + coef_xyz(7) = coef_xyz(7)+SUM(coef_xy(:, 7)*pol_z(:, 0, kg)) + coef_xyz(8) = coef_xyz(8)+SUM(coef_xy(:, 8)*pol_z(:, 0, kg)) + coef_xyz(9) = coef_xyz(9)+SUM(coef_xy(:, 9)*pol_z(:, 0, kg)) + coef_xyz(10) = coef_xyz(10)+SUM(coef_xy(:, 10)*pol_z(:, 0, kg)) + coef_xyz(11) = coef_xyz(11)+SUM(coef_xy(:, 11)*pol_z(:, 0, kg)) + coef_xyz(12) = coef_xyz(12)+SUM(coef_xy(:, 12)*pol_z(:, 0, kg)) + coef_xyz(13) = coef_xyz(13)+SUM(coef_xy(:, 13)*pol_z(:, 0, kg)) + coef_xyz(14) = coef_xyz(14)+SUM(coef_xy(:, 14)*pol_z(:, 0, kg)) + coef_xyz(15) = coef_xyz(15)+SUM(coef_xy(:, 15)*pol_z(:, 0, kg)) + coef_xyz(16) = coef_xyz(16)+SUM(coef_xy(:, 16)*pol_z(:, 0, kg)) + coef_xyz(17) = coef_xyz(17)+SUM(coef_xy(:, 17)*pol_z(:, 0, kg)) + coef_xyz(18) = coef_xyz(18)+SUM(coef_xy(:, 18)*pol_z(:, 0, kg)) + coef_xyz(19) = coef_xyz(19)+SUM(coef_xy(:, 19)*pol_z(:, 0, kg)) + coef_xyz(20) = coef_xyz(20)+SUM(coef_xy(:, 20)*pol_z(:, 0, kg)) + coef_xyz(21) = coef_xyz(21)+SUM(coef_xy(:, 21)*pol_z(:, 0, kg)) + coef_xyz(22) = coef_xyz(22)+SUM(coef_xy(:, 22)*pol_z(:, 0, kg)) + coef_xyz(23) = coef_xyz(23)+SUM(coef_xy(:, 23)*pol_z(:, 0, kg)) + coef_xyz(24) = coef_xyz(24)+SUM(coef_xy(:, 24)*pol_z(:, 0, kg)) + coef_xyz(25) = coef_xyz(25)+SUM(coef_xy(:, 25)*pol_z(:, 0, kg)) + coef_xyz(26) = coef_xyz(26)+SUM(coef_xy(:, 26)*pol_z(:, 0, kg)) + coef_xyz(27) = coef_xyz(27)+SUM(coef_xy(:, 27)*pol_z(:, 0, kg)) + coef_xyz(28) = coef_xyz(28)+SUM(coef_xy(:, 28)*pol_z(:, 0, kg)) + coef_xyz(29) = coef_xyz(29)+SUM(coef_xy(:, 1)*pol_z(:, 1, kg)) + coef_xyz(30) = coef_xyz(30)+SUM(coef_xy(:, 2)*pol_z(:, 1, kg)) + coef_xyz(31) = coef_xyz(31)+SUM(coef_xy(:, 3)*pol_z(:, 1, kg)) + coef_xyz(32) = coef_xyz(32)+SUM(coef_xy(:, 4)*pol_z(:, 1, kg)) + coef_xyz(33) = coef_xyz(33)+SUM(coef_xy(:, 5)*pol_z(:, 1, kg)) + coef_xyz(34) = coef_xyz(34)+SUM(coef_xy(:, 6)*pol_z(:, 1, kg)) + coef_xyz(35) = coef_xyz(35)+SUM(coef_xy(:, 8)*pol_z(:, 1, kg)) + coef_xyz(36) = coef_xyz(36)+SUM(coef_xy(:, 9)*pol_z(:, 1, kg)) + coef_xyz(37) = coef_xyz(37)+SUM(coef_xy(:, 10)*pol_z(:, 1, kg)) + coef_xyz(38) = coef_xyz(38)+SUM(coef_xy(:, 11)*pol_z(:, 1, kg)) + coef_xyz(39) = coef_xyz(39)+SUM(coef_xy(:, 12)*pol_z(:, 1, kg)) + coef_xyz(40) = coef_xyz(40)+SUM(coef_xy(:, 14)*pol_z(:, 1, kg)) + coef_xyz(41) = coef_xyz(41)+SUM(coef_xy(:, 15)*pol_z(:, 1, kg)) + coef_xyz(42) = coef_xyz(42)+SUM(coef_xy(:, 16)*pol_z(:, 1, kg)) + coef_xyz(43) = coef_xyz(43)+SUM(coef_xy(:, 17)*pol_z(:, 1, kg)) + coef_xyz(44) = coef_xyz(44)+SUM(coef_xy(:, 19)*pol_z(:, 1, kg)) + coef_xyz(45) = coef_xyz(45)+SUM(coef_xy(:, 20)*pol_z(:, 1, kg)) + coef_xyz(46) = coef_xyz(46)+SUM(coef_xy(:, 21)*pol_z(:, 1, kg)) + coef_xyz(47) = coef_xyz(47)+SUM(coef_xy(:, 23)*pol_z(:, 1, kg)) + coef_xyz(48) = coef_xyz(48)+SUM(coef_xy(:, 24)*pol_z(:, 1, kg)) + coef_xyz(49) = coef_xyz(49)+SUM(coef_xy(:, 26)*pol_z(:, 1, kg)) + coef_xyz(50) = coef_xyz(50)+SUM(coef_xy(:, 1)*pol_z(:, 2, kg)) + coef_xyz(51) = coef_xyz(51)+SUM(coef_xy(:, 2)*pol_z(:, 2, kg)) + coef_xyz(52) = coef_xyz(52)+SUM(coef_xy(:, 3)*pol_z(:, 2, kg)) + coef_xyz(53) = coef_xyz(53)+SUM(coef_xy(:, 4)*pol_z(:, 2, kg)) + coef_xyz(54) = coef_xyz(54)+SUM(coef_xy(:, 5)*pol_z(:, 2, kg)) + coef_xyz(55) = coef_xyz(55)+SUM(coef_xy(:, 8)*pol_z(:, 2, kg)) + coef_xyz(56) = coef_xyz(56)+SUM(coef_xy(:, 9)*pol_z(:, 2, kg)) + coef_xyz(57) = coef_xyz(57)+SUM(coef_xy(:, 10)*pol_z(:, 2, kg)) + coef_xyz(58) = coef_xyz(58)+SUM(coef_xy(:, 11)*pol_z(:, 2, kg)) + coef_xyz(59) = coef_xyz(59)+SUM(coef_xy(:, 14)*pol_z(:, 2, kg)) + coef_xyz(60) = coef_xyz(60)+SUM(coef_xy(:, 15)*pol_z(:, 2, kg)) + coef_xyz(61) = coef_xyz(61)+SUM(coef_xy(:, 16)*pol_z(:, 2, kg)) + coef_xyz(62) = coef_xyz(62)+SUM(coef_xy(:, 19)*pol_z(:, 2, kg)) + coef_xyz(63) = coef_xyz(63)+SUM(coef_xy(:, 20)*pol_z(:, 2, kg)) + coef_xyz(64) = coef_xyz(64)+SUM(coef_xy(:, 23)*pol_z(:, 2, kg)) + coef_xyz(65) = coef_xyz(65)+SUM(coef_xy(:, 1)*pol_z(:, 3, kg)) + coef_xyz(66) = coef_xyz(66)+SUM(coef_xy(:, 2)*pol_z(:, 3, kg)) + coef_xyz(67) = coef_xyz(67)+SUM(coef_xy(:, 3)*pol_z(:, 3, kg)) + coef_xyz(68) = coef_xyz(68)+SUM(coef_xy(:, 4)*pol_z(:, 3, kg)) + coef_xyz(69) = coef_xyz(69)+SUM(coef_xy(:, 8)*pol_z(:, 3, kg)) + coef_xyz(70) = coef_xyz(70)+SUM(coef_xy(:, 9)*pol_z(:, 3, kg)) + coef_xyz(71) = coef_xyz(71)+SUM(coef_xy(:, 10)*pol_z(:, 3, kg)) + coef_xyz(72) = coef_xyz(72)+SUM(coef_xy(:, 14)*pol_z(:, 3, kg)) + coef_xyz(73) = coef_xyz(73)+SUM(coef_xy(:, 15)*pol_z(:, 3, kg)) + coef_xyz(74) = coef_xyz(74)+SUM(coef_xy(:, 19)*pol_z(:, 3, kg)) + coef_xyz(75) = coef_xyz(75)+SUM(coef_xy(:, 1)*pol_z(:, 4, kg)) + coef_xyz(76) = coef_xyz(76)+SUM(coef_xy(:, 2)*pol_z(:, 4, kg)) + coef_xyz(77) = coef_xyz(77)+SUM(coef_xy(:, 3)*pol_z(:, 4, kg)) + coef_xyz(78) = coef_xyz(78)+SUM(coef_xy(:, 8)*pol_z(:, 4, kg)) + coef_xyz(79) = coef_xyz(79)+SUM(coef_xy(:, 9)*pol_z(:, 4, kg)) + coef_xyz(80) = coef_xyz(80)+SUM(coef_xy(:, 14)*pol_z(:, 4, kg)) + coef_xyz(81) = coef_xyz(81)+SUM(coef_xy(:, 1)*pol_z(:, 5, kg)) + coef_xyz(82) = coef_xyz(82)+SUM(coef_xy(:, 2)*pol_z(:, 5, kg)) + coef_xyz(83) = coef_xyz(83)+SUM(coef_xy(:, 8)*pol_z(:, 5, kg)) + coef_xyz(84) = coef_xyz(84)+SUM(coef_xy(:, 1)*pol_z(:, 6, kg)) + END DO END SUBROUTINE integrate_core_6 ! ************************************************************************************************** @@ -1186,451 +1186,451 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_7(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_7(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 7 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 7 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,7,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,9)*pol_z(1,2,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,9)*pol_z(2,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,9)*pol_z(1,3,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,9)*pol_z(2,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,17)*pol_z(1,3,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,17)*pol_z(2,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,9)*pol_z(1,4,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,9)*pol_z(2,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,16)*pol_z(1,4,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,16)*pol_z(2,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,17)*pol_z(1,4,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,17)*pol_z(2,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,9)*pol_z(1,5,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,9)*pol_z(2,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,16)*pol_z(1,5,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,16)*pol_z(2,5,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,9)*pol_z(1,6,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,9)*pol_z(2,6,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,1)*pol_z(2,7,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 7, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 9)*pol_z(1, 2, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 9)*pol_z(2, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 9)*pol_z(1, 3, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 9)*pol_z(2, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 17)*pol_z(1, 3, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 17)*pol_z(2, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 9)*pol_z(1, 4, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 9)*pol_z(2, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 16)*pol_z(1, 4, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 16)*pol_z(2, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 17)*pol_z(1, 4, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 17)*pol_z(2, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 9)*pol_z(1, 5, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 9)*pol_z(2, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 16)*pol_z(1, 5, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 16)*pol_z(2, 5, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 9)*pol_z(1, 6, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 9)*pol_z(2, 6, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 1)*pol_z(2, 7, kg) + END DO END SUBROUTINE integrate_core_7 ! ************************************************************************************************** @@ -1645,578 +1645,578 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_8(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_8(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 8 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 8 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - coef_x(:,8)=coef_x(:,8)+s(:)*pol_x(8,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,0)*pol_y(2,8,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,10)*pol_z(1,1,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,10)*pol_z(2,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,19)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,19)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,27)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,27)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,34)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,34)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,40)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,40)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,10)*pol_z(1,2,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,10)*pol_z(2,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,18)*pol_z(1,2,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,18)*pol_z(2,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,19)*pol_z(1,2,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,19)*pol_z(2,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,26)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,26)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,27)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,27)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,33)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,33)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,40)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,40)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,10)*pol_z(1,3,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,10)*pol_z(2,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,18)*pol_z(1,3,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,18)*pol_z(2,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,19)*pol_z(1,3,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,19)*pol_z(2,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,25)*pol_z(1,3,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,25)*pol_z(2,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,26)*pol_z(1,3,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,26)*pol_z(2,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,27)*pol_z(1,3,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,27)*pol_z(2,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,32)*pol_z(1,3,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,32)*pol_z(2,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,10)*pol_z(1,4,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,10)*pol_z(2,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,18)*pol_z(1,4,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,18)*pol_z(2,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,19)*pol_z(1,4,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,19)*pol_z(2,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,25)*pol_z(1,4,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,25)*pol_z(2,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,26)*pol_z(1,4,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,26)*pol_z(2,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,31)*pol_z(1,4,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,31)*pol_z(2,4,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,10)*pol_z(1,5,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,10)*pol_z(2,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,18)*pol_z(1,5,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,18)*pol_z(2,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,19)*pol_z(1,5,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,19)*pol_z(2,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,25)*pol_z(1,5,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,25)*pol_z(2,5,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,10)*pol_z(1,6,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,10)*pol_z(2,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,18)*pol_z(1,6,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,18)*pol_z(2,6,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,10)*pol_z(1,7,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,10)*pol_z(2,7,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,8,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + coef_x(:, 8) = coef_x(:, 8)+s(:)*pol_x(8, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 0)*pol_y(2, 8, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 10)*pol_z(1, 1, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 10)*pol_z(2, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 19)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 19)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 27)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 27)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 34)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 34)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 40)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 40)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 10)*pol_z(1, 2, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 10)*pol_z(2, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 18)*pol_z(1, 2, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 18)*pol_z(2, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 19)*pol_z(1, 2, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 19)*pol_z(2, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 26)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 26)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 27)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 27)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 33)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 33)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 40)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 40)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 10)*pol_z(1, 3, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 10)*pol_z(2, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 18)*pol_z(1, 3, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 18)*pol_z(2, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 19)*pol_z(1, 3, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 19)*pol_z(2, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 25)*pol_z(1, 3, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 25)*pol_z(2, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 26)*pol_z(1, 3, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 26)*pol_z(2, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 27)*pol_z(1, 3, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 27)*pol_z(2, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 32)*pol_z(1, 3, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 32)*pol_z(2, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 10)*pol_z(1, 4, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 10)*pol_z(2, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 18)*pol_z(1, 4, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 18)*pol_z(2, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 19)*pol_z(1, 4, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 19)*pol_z(2, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 25)*pol_z(1, 4, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 25)*pol_z(2, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 26)*pol_z(1, 4, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 26)*pol_z(2, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 31)*pol_z(1, 4, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 31)*pol_z(2, 4, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 10)*pol_z(1, 5, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 10)*pol_z(2, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 18)*pol_z(1, 5, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 18)*pol_z(2, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 19)*pol_z(1, 5, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 19)*pol_z(2, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 25)*pol_z(1, 5, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 25)*pol_z(2, 5, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 10)*pol_z(1, 6, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 10)*pol_z(2, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 18)*pol_z(1, 6, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 18)*pol_z(2, 6, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 10)*pol_z(1, 7, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 10)*pol_z(2, 7, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 8, kg) + END DO END SUBROUTINE integrate_core_8 ! ************************************************************************************************** @@ -2231,728 +2231,728 @@ !> \param cmax ... !> \param gridbounds ... ! ************************************************************************************************** - SUBROUTINE integrate_core_9(grid,coef_xyz,pol_x,pol_y,pol_z,map,sphere_bounds,cmax,gridbounds) + SUBROUTINE integrate_core_9(grid, coef_xyz, pol_x, pol_y, pol_z, map, sphere_bounds, cmax, gridbounds) USE kinds, ONLY: dp - INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & - map(-cmax:cmax,1:3), & - gridbounds(2,3) - REAL(dp), INTENT(IN) :: grid(gridbounds(1,1):gridbounds(2,1), gridbounds(1& - ,2):gridbounds(2,2), gridbounds(1,3):gridbounds(2,3)) - INTEGER, PARAMETER :: lp = 9 - REAL(dp), INTENT(IN) :: pol_x(0:lp,-cmax:cmax), & - pol_y(1:2,0:lp,-cmax:0), & - pol_z(1:2,0:lp,-cmax:0) - REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) + INTEGER, INTENT(IN) :: sphere_bounds(*), cmax, & + map(-cmax:cmax, 1:3), & + gridbounds(2, 3) + REAL(dp), INTENT(IN) :: grid(gridbounds(1, 1):gridbounds(2, 1), gridbounds(1 & + , 2):gridbounds(2, 2), gridbounds(1, 3):gridbounds(2, 3)) + INTEGER, PARAMETER :: lp = 9 + REAL(dp), INTENT(IN) :: pol_x(0:lp, -cmax:cmax), & + pol_y(1:2, 0:lp, -cmax:0), & + pol_z(1:2, 0:lp, -cmax:0) + REAL(dp), INTENT(OUT) :: coef_xyz(((lp+1)*(lp+2)*(lp+3))/6) - INTEGER :: i, ig, igmax, igmin, j, j2, & - jg, jg2, jgmin, k, k2, kg, & - kg2, kgmin, sci - REAL(dp) :: coef_x(4,0:lp), & - coef_xy(2,((lp+1)*(lp+2))/2), & - s(4) + INTEGER :: i, ig, igmax, igmin, j, j2, & + jg, jg2, jgmin, k, k2, kg, & + kg2, kgmin, sci + REAL(dp) :: coef_x(4, 0:lp), & + coef_xy(2, ((lp+1)*(lp+2))/2), & + s(4) - sci=1 + sci = 1 - coef_xyz=0.0_dp + coef_xyz = 0.0_dp - kgmin=sphere_bounds(sci) - sci=sci+1 - DO kg=kgmin,0 - kg2=1-kg - k=map(kg,3) - k2=map(kg2,3) + kgmin = sphere_bounds(sci) + sci = sci+1 + DO kg = kgmin, 0 + kg2 = 1-kg + k = map(kg, 3) + k2 = map(kg2, 3) - coef_xy=0.0_dp + coef_xy = 0.0_dp - jgmin=sphere_bounds(sci) - sci=sci+1 - DO jg=jgmin,0 - jg2=1-jg - j=map(jg,2) - j2=map(jg2,2) - igmin=sphere_bounds(sci) - sci=sci+1 - igmax=1-igmin + jgmin = sphere_bounds(sci) + sci = sci+1 + DO jg = jgmin, 0 + jg2 = 1-jg + j = map(jg, 2) + j2 = map(jg2, 2) + igmin = sphere_bounds(sci) + sci = sci+1 + igmax = 1-igmin - coef_x=0.0_dp - DO ig=igmin,igmax - i=map(ig,1) - s(1)=grid(i,j,k) - s(2)=grid(i,j,k2) - s(3)=grid(i,j2,k) - s(4)=grid(i,j2,k2) - coef_x(:,0)=coef_x(:,0)+s(:)*pol_x(0,ig) - coef_x(:,1)=coef_x(:,1)+s(:)*pol_x(1,ig) - coef_x(:,2)=coef_x(:,2)+s(:)*pol_x(2,ig) - coef_x(:,3)=coef_x(:,3)+s(:)*pol_x(3,ig) - coef_x(:,4)=coef_x(:,4)+s(:)*pol_x(4,ig) - coef_x(:,5)=coef_x(:,5)+s(:)*pol_x(5,ig) - coef_x(:,6)=coef_x(:,6)+s(:)*pol_x(6,ig) - coef_x(:,7)=coef_x(:,7)+s(:)*pol_x(7,ig) - coef_x(:,8)=coef_x(:,8)+s(:)*pol_x(8,ig) - coef_x(:,9)=coef_x(:,9)+s(:)*pol_x(9,ig) - END DO - coef_xy(1,1)=coef_xy(1,1)+coef_x(1,0)*pol_y(1,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(2,0)*pol_y(1,0,jg) - coef_xy(1,1)=coef_xy(1,1)+coef_x(3,0)*pol_y(2,0,jg) - coef_xy(2,1)=coef_xy(2,1)+coef_x(4,0)*pol_y(2,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(1,1)*pol_y(1,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(2,1)*pol_y(1,0,jg) - coef_xy(1,2)=coef_xy(1,2)+coef_x(3,1)*pol_y(2,0,jg) - coef_xy(2,2)=coef_xy(2,2)+coef_x(4,1)*pol_y(2,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(1,2)*pol_y(1,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(2,2)*pol_y(1,0,jg) - coef_xy(1,3)=coef_xy(1,3)+coef_x(3,2)*pol_y(2,0,jg) - coef_xy(2,3)=coef_xy(2,3)+coef_x(4,2)*pol_y(2,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(1,3)*pol_y(1,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(2,3)*pol_y(1,0,jg) - coef_xy(1,4)=coef_xy(1,4)+coef_x(3,3)*pol_y(2,0,jg) - coef_xy(2,4)=coef_xy(2,4)+coef_x(4,3)*pol_y(2,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(1,4)*pol_y(1,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(2,4)*pol_y(1,0,jg) - coef_xy(1,5)=coef_xy(1,5)+coef_x(3,4)*pol_y(2,0,jg) - coef_xy(2,5)=coef_xy(2,5)+coef_x(4,4)*pol_y(2,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(1,5)*pol_y(1,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(2,5)*pol_y(1,0,jg) - coef_xy(1,6)=coef_xy(1,6)+coef_x(3,5)*pol_y(2,0,jg) - coef_xy(2,6)=coef_xy(2,6)+coef_x(4,5)*pol_y(2,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(1,6)*pol_y(1,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(2,6)*pol_y(1,0,jg) - coef_xy(1,7)=coef_xy(1,7)+coef_x(3,6)*pol_y(2,0,jg) - coef_xy(2,7)=coef_xy(2,7)+coef_x(4,6)*pol_y(2,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(1,7)*pol_y(1,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(2,7)*pol_y(1,0,jg) - coef_xy(1,8)=coef_xy(1,8)+coef_x(3,7)*pol_y(2,0,jg) - coef_xy(2,8)=coef_xy(2,8)+coef_x(4,7)*pol_y(2,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(1,8)*pol_y(1,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(2,8)*pol_y(1,0,jg) - coef_xy(1,9)=coef_xy(1,9)+coef_x(3,8)*pol_y(2,0,jg) - coef_xy(2,9)=coef_xy(2,9)+coef_x(4,8)*pol_y(2,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(1,9)*pol_y(1,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(2,9)*pol_y(1,0,jg) - coef_xy(1,10)=coef_xy(1,10)+coef_x(3,9)*pol_y(2,0,jg) - coef_xy(2,10)=coef_xy(2,10)+coef_x(4,9)*pol_y(2,0,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(1,0)*pol_y(1,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(2,0)*pol_y(1,1,jg) - coef_xy(1,11)=coef_xy(1,11)+coef_x(3,0)*pol_y(2,1,jg) - coef_xy(2,11)=coef_xy(2,11)+coef_x(4,0)*pol_y(2,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(1,1)*pol_y(1,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(2,1)*pol_y(1,1,jg) - coef_xy(1,12)=coef_xy(1,12)+coef_x(3,1)*pol_y(2,1,jg) - coef_xy(2,12)=coef_xy(2,12)+coef_x(4,1)*pol_y(2,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(1,2)*pol_y(1,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(2,2)*pol_y(1,1,jg) - coef_xy(1,13)=coef_xy(1,13)+coef_x(3,2)*pol_y(2,1,jg) - coef_xy(2,13)=coef_xy(2,13)+coef_x(4,2)*pol_y(2,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(1,3)*pol_y(1,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(2,3)*pol_y(1,1,jg) - coef_xy(1,14)=coef_xy(1,14)+coef_x(3,3)*pol_y(2,1,jg) - coef_xy(2,14)=coef_xy(2,14)+coef_x(4,3)*pol_y(2,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(1,4)*pol_y(1,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(2,4)*pol_y(1,1,jg) - coef_xy(1,15)=coef_xy(1,15)+coef_x(3,4)*pol_y(2,1,jg) - coef_xy(2,15)=coef_xy(2,15)+coef_x(4,4)*pol_y(2,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(1,5)*pol_y(1,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(2,5)*pol_y(1,1,jg) - coef_xy(1,16)=coef_xy(1,16)+coef_x(3,5)*pol_y(2,1,jg) - coef_xy(2,16)=coef_xy(2,16)+coef_x(4,5)*pol_y(2,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(1,6)*pol_y(1,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(2,6)*pol_y(1,1,jg) - coef_xy(1,17)=coef_xy(1,17)+coef_x(3,6)*pol_y(2,1,jg) - coef_xy(2,17)=coef_xy(2,17)+coef_x(4,6)*pol_y(2,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(1,7)*pol_y(1,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(2,7)*pol_y(1,1,jg) - coef_xy(1,18)=coef_xy(1,18)+coef_x(3,7)*pol_y(2,1,jg) - coef_xy(2,18)=coef_xy(2,18)+coef_x(4,7)*pol_y(2,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(1,8)*pol_y(1,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(2,8)*pol_y(1,1,jg) - coef_xy(1,19)=coef_xy(1,19)+coef_x(3,8)*pol_y(2,1,jg) - coef_xy(2,19)=coef_xy(2,19)+coef_x(4,8)*pol_y(2,1,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(1,0)*pol_y(1,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(2,0)*pol_y(1,2,jg) - coef_xy(1,20)=coef_xy(1,20)+coef_x(3,0)*pol_y(2,2,jg) - coef_xy(2,20)=coef_xy(2,20)+coef_x(4,0)*pol_y(2,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(1,1)*pol_y(1,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(2,1)*pol_y(1,2,jg) - coef_xy(1,21)=coef_xy(1,21)+coef_x(3,1)*pol_y(2,2,jg) - coef_xy(2,21)=coef_xy(2,21)+coef_x(4,1)*pol_y(2,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(1,2)*pol_y(1,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(2,2)*pol_y(1,2,jg) - coef_xy(1,22)=coef_xy(1,22)+coef_x(3,2)*pol_y(2,2,jg) - coef_xy(2,22)=coef_xy(2,22)+coef_x(4,2)*pol_y(2,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(1,3)*pol_y(1,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(2,3)*pol_y(1,2,jg) - coef_xy(1,23)=coef_xy(1,23)+coef_x(3,3)*pol_y(2,2,jg) - coef_xy(2,23)=coef_xy(2,23)+coef_x(4,3)*pol_y(2,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(1,4)*pol_y(1,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(2,4)*pol_y(1,2,jg) - coef_xy(1,24)=coef_xy(1,24)+coef_x(3,4)*pol_y(2,2,jg) - coef_xy(2,24)=coef_xy(2,24)+coef_x(4,4)*pol_y(2,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(1,5)*pol_y(1,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(2,5)*pol_y(1,2,jg) - coef_xy(1,25)=coef_xy(1,25)+coef_x(3,5)*pol_y(2,2,jg) - coef_xy(2,25)=coef_xy(2,25)+coef_x(4,5)*pol_y(2,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(1,6)*pol_y(1,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(2,6)*pol_y(1,2,jg) - coef_xy(1,26)=coef_xy(1,26)+coef_x(3,6)*pol_y(2,2,jg) - coef_xy(2,26)=coef_xy(2,26)+coef_x(4,6)*pol_y(2,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(1,7)*pol_y(1,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(2,7)*pol_y(1,2,jg) - coef_xy(1,27)=coef_xy(1,27)+coef_x(3,7)*pol_y(2,2,jg) - coef_xy(2,27)=coef_xy(2,27)+coef_x(4,7)*pol_y(2,2,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(1,0)*pol_y(1,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(2,0)*pol_y(1,3,jg) - coef_xy(1,28)=coef_xy(1,28)+coef_x(3,0)*pol_y(2,3,jg) - coef_xy(2,28)=coef_xy(2,28)+coef_x(4,0)*pol_y(2,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(1,1)*pol_y(1,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(2,1)*pol_y(1,3,jg) - coef_xy(1,29)=coef_xy(1,29)+coef_x(3,1)*pol_y(2,3,jg) - coef_xy(2,29)=coef_xy(2,29)+coef_x(4,1)*pol_y(2,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(1,2)*pol_y(1,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(2,2)*pol_y(1,3,jg) - coef_xy(1,30)=coef_xy(1,30)+coef_x(3,2)*pol_y(2,3,jg) - coef_xy(2,30)=coef_xy(2,30)+coef_x(4,2)*pol_y(2,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(1,3)*pol_y(1,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(2,3)*pol_y(1,3,jg) - coef_xy(1,31)=coef_xy(1,31)+coef_x(3,3)*pol_y(2,3,jg) - coef_xy(2,31)=coef_xy(2,31)+coef_x(4,3)*pol_y(2,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(1,4)*pol_y(1,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(2,4)*pol_y(1,3,jg) - coef_xy(1,32)=coef_xy(1,32)+coef_x(3,4)*pol_y(2,3,jg) - coef_xy(2,32)=coef_xy(2,32)+coef_x(4,4)*pol_y(2,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(1,5)*pol_y(1,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(2,5)*pol_y(1,3,jg) - coef_xy(1,33)=coef_xy(1,33)+coef_x(3,5)*pol_y(2,3,jg) - coef_xy(2,33)=coef_xy(2,33)+coef_x(4,5)*pol_y(2,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(1,6)*pol_y(1,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(2,6)*pol_y(1,3,jg) - coef_xy(1,34)=coef_xy(1,34)+coef_x(3,6)*pol_y(2,3,jg) - coef_xy(2,34)=coef_xy(2,34)+coef_x(4,6)*pol_y(2,3,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(1,0)*pol_y(1,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(2,0)*pol_y(1,4,jg) - coef_xy(1,35)=coef_xy(1,35)+coef_x(3,0)*pol_y(2,4,jg) - coef_xy(2,35)=coef_xy(2,35)+coef_x(4,0)*pol_y(2,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(1,1)*pol_y(1,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(2,1)*pol_y(1,4,jg) - coef_xy(1,36)=coef_xy(1,36)+coef_x(3,1)*pol_y(2,4,jg) - coef_xy(2,36)=coef_xy(2,36)+coef_x(4,1)*pol_y(2,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(1,2)*pol_y(1,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(2,2)*pol_y(1,4,jg) - coef_xy(1,37)=coef_xy(1,37)+coef_x(3,2)*pol_y(2,4,jg) - coef_xy(2,37)=coef_xy(2,37)+coef_x(4,2)*pol_y(2,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(1,3)*pol_y(1,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(2,3)*pol_y(1,4,jg) - coef_xy(1,38)=coef_xy(1,38)+coef_x(3,3)*pol_y(2,4,jg) - coef_xy(2,38)=coef_xy(2,38)+coef_x(4,3)*pol_y(2,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(1,4)*pol_y(1,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(2,4)*pol_y(1,4,jg) - coef_xy(1,39)=coef_xy(1,39)+coef_x(3,4)*pol_y(2,4,jg) - coef_xy(2,39)=coef_xy(2,39)+coef_x(4,4)*pol_y(2,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(1,5)*pol_y(1,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(2,5)*pol_y(1,4,jg) - coef_xy(1,40)=coef_xy(1,40)+coef_x(3,5)*pol_y(2,4,jg) - coef_xy(2,40)=coef_xy(2,40)+coef_x(4,5)*pol_y(2,4,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(1,0)*pol_y(1,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(2,0)*pol_y(1,5,jg) - coef_xy(1,41)=coef_xy(1,41)+coef_x(3,0)*pol_y(2,5,jg) - coef_xy(2,41)=coef_xy(2,41)+coef_x(4,0)*pol_y(2,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(1,1)*pol_y(1,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(2,1)*pol_y(1,5,jg) - coef_xy(1,42)=coef_xy(1,42)+coef_x(3,1)*pol_y(2,5,jg) - coef_xy(2,42)=coef_xy(2,42)+coef_x(4,1)*pol_y(2,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(1,2)*pol_y(1,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(2,2)*pol_y(1,5,jg) - coef_xy(1,43)=coef_xy(1,43)+coef_x(3,2)*pol_y(2,5,jg) - coef_xy(2,43)=coef_xy(2,43)+coef_x(4,2)*pol_y(2,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(1,3)*pol_y(1,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(2,3)*pol_y(1,5,jg) - coef_xy(1,44)=coef_xy(1,44)+coef_x(3,3)*pol_y(2,5,jg) - coef_xy(2,44)=coef_xy(2,44)+coef_x(4,3)*pol_y(2,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(1,4)*pol_y(1,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(2,4)*pol_y(1,5,jg) - coef_xy(1,45)=coef_xy(1,45)+coef_x(3,4)*pol_y(2,5,jg) - coef_xy(2,45)=coef_xy(2,45)+coef_x(4,4)*pol_y(2,5,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(1,0)*pol_y(1,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(2,0)*pol_y(1,6,jg) - coef_xy(1,46)=coef_xy(1,46)+coef_x(3,0)*pol_y(2,6,jg) - coef_xy(2,46)=coef_xy(2,46)+coef_x(4,0)*pol_y(2,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(1,1)*pol_y(1,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(2,1)*pol_y(1,6,jg) - coef_xy(1,47)=coef_xy(1,47)+coef_x(3,1)*pol_y(2,6,jg) - coef_xy(2,47)=coef_xy(2,47)+coef_x(4,1)*pol_y(2,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(1,2)*pol_y(1,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(2,2)*pol_y(1,6,jg) - coef_xy(1,48)=coef_xy(1,48)+coef_x(3,2)*pol_y(2,6,jg) - coef_xy(2,48)=coef_xy(2,48)+coef_x(4,2)*pol_y(2,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(1,3)*pol_y(1,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(2,3)*pol_y(1,6,jg) - coef_xy(1,49)=coef_xy(1,49)+coef_x(3,3)*pol_y(2,6,jg) - coef_xy(2,49)=coef_xy(2,49)+coef_x(4,3)*pol_y(2,6,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(1,0)*pol_y(1,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(2,0)*pol_y(1,7,jg) - coef_xy(1,50)=coef_xy(1,50)+coef_x(3,0)*pol_y(2,7,jg) - coef_xy(2,50)=coef_xy(2,50)+coef_x(4,0)*pol_y(2,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(1,1)*pol_y(1,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(2,1)*pol_y(1,7,jg) - coef_xy(1,51)=coef_xy(1,51)+coef_x(3,1)*pol_y(2,7,jg) - coef_xy(2,51)=coef_xy(2,51)+coef_x(4,1)*pol_y(2,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(1,2)*pol_y(1,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(2,2)*pol_y(1,7,jg) - coef_xy(1,52)=coef_xy(1,52)+coef_x(3,2)*pol_y(2,7,jg) - coef_xy(2,52)=coef_xy(2,52)+coef_x(4,2)*pol_y(2,7,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(1,0)*pol_y(1,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(2,0)*pol_y(1,8,jg) - coef_xy(1,53)=coef_xy(1,53)+coef_x(3,0)*pol_y(2,8,jg) - coef_xy(2,53)=coef_xy(2,53)+coef_x(4,0)*pol_y(2,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(1,1)*pol_y(1,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(2,1)*pol_y(1,8,jg) - coef_xy(1,54)=coef_xy(1,54)+coef_x(3,1)*pol_y(2,8,jg) - coef_xy(2,54)=coef_xy(2,54)+coef_x(4,1)*pol_y(2,8,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(1,0)*pol_y(1,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(2,0)*pol_y(1,9,jg) - coef_xy(1,55)=coef_xy(1,55)+coef_x(3,0)*pol_y(2,9,jg) - coef_xy(2,55)=coef_xy(2,55)+coef_x(4,0)*pol_y(2,9,jg) - END DO - coef_xyz(1)=coef_xyz(1)+coef_xy(1,1)*pol_z(1,0,kg) - coef_xyz(1)=coef_xyz(1)+coef_xy(2,1)*pol_z(2,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(1,2)*pol_z(1,0,kg) - coef_xyz(2)=coef_xyz(2)+coef_xy(2,2)*pol_z(2,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(1,3)*pol_z(1,0,kg) - coef_xyz(3)=coef_xyz(3)+coef_xy(2,3)*pol_z(2,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(1,4)*pol_z(1,0,kg) - coef_xyz(4)=coef_xyz(4)+coef_xy(2,4)*pol_z(2,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(1,5)*pol_z(1,0,kg) - coef_xyz(5)=coef_xyz(5)+coef_xy(2,5)*pol_z(2,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(1,6)*pol_z(1,0,kg) - coef_xyz(6)=coef_xyz(6)+coef_xy(2,6)*pol_z(2,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(1,7)*pol_z(1,0,kg) - coef_xyz(7)=coef_xyz(7)+coef_xy(2,7)*pol_z(2,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(1,8)*pol_z(1,0,kg) - coef_xyz(8)=coef_xyz(8)+coef_xy(2,8)*pol_z(2,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(1,9)*pol_z(1,0,kg) - coef_xyz(9)=coef_xyz(9)+coef_xy(2,9)*pol_z(2,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(1,10)*pol_z(1,0,kg) - coef_xyz(10)=coef_xyz(10)+coef_xy(2,10)*pol_z(2,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(1,11)*pol_z(1,0,kg) - coef_xyz(11)=coef_xyz(11)+coef_xy(2,11)*pol_z(2,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(1,12)*pol_z(1,0,kg) - coef_xyz(12)=coef_xyz(12)+coef_xy(2,12)*pol_z(2,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(1,13)*pol_z(1,0,kg) - coef_xyz(13)=coef_xyz(13)+coef_xy(2,13)*pol_z(2,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(1,14)*pol_z(1,0,kg) - coef_xyz(14)=coef_xyz(14)+coef_xy(2,14)*pol_z(2,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(1,15)*pol_z(1,0,kg) - coef_xyz(15)=coef_xyz(15)+coef_xy(2,15)*pol_z(2,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(1,16)*pol_z(1,0,kg) - coef_xyz(16)=coef_xyz(16)+coef_xy(2,16)*pol_z(2,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(1,17)*pol_z(1,0,kg) - coef_xyz(17)=coef_xyz(17)+coef_xy(2,17)*pol_z(2,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(1,18)*pol_z(1,0,kg) - coef_xyz(18)=coef_xyz(18)+coef_xy(2,18)*pol_z(2,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(1,19)*pol_z(1,0,kg) - coef_xyz(19)=coef_xyz(19)+coef_xy(2,19)*pol_z(2,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(1,20)*pol_z(1,0,kg) - coef_xyz(20)=coef_xyz(20)+coef_xy(2,20)*pol_z(2,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(1,21)*pol_z(1,0,kg) - coef_xyz(21)=coef_xyz(21)+coef_xy(2,21)*pol_z(2,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(1,22)*pol_z(1,0,kg) - coef_xyz(22)=coef_xyz(22)+coef_xy(2,22)*pol_z(2,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(1,23)*pol_z(1,0,kg) - coef_xyz(23)=coef_xyz(23)+coef_xy(2,23)*pol_z(2,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(1,24)*pol_z(1,0,kg) - coef_xyz(24)=coef_xyz(24)+coef_xy(2,24)*pol_z(2,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(1,25)*pol_z(1,0,kg) - coef_xyz(25)=coef_xyz(25)+coef_xy(2,25)*pol_z(2,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(1,26)*pol_z(1,0,kg) - coef_xyz(26)=coef_xyz(26)+coef_xy(2,26)*pol_z(2,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(1,27)*pol_z(1,0,kg) - coef_xyz(27)=coef_xyz(27)+coef_xy(2,27)*pol_z(2,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(1,28)*pol_z(1,0,kg) - coef_xyz(28)=coef_xyz(28)+coef_xy(2,28)*pol_z(2,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(1,29)*pol_z(1,0,kg) - coef_xyz(29)=coef_xyz(29)+coef_xy(2,29)*pol_z(2,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(1,30)*pol_z(1,0,kg) - coef_xyz(30)=coef_xyz(30)+coef_xy(2,30)*pol_z(2,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(1,31)*pol_z(1,0,kg) - coef_xyz(31)=coef_xyz(31)+coef_xy(2,31)*pol_z(2,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(1,32)*pol_z(1,0,kg) - coef_xyz(32)=coef_xyz(32)+coef_xy(2,32)*pol_z(2,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(1,33)*pol_z(1,0,kg) - coef_xyz(33)=coef_xyz(33)+coef_xy(2,33)*pol_z(2,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(1,34)*pol_z(1,0,kg) - coef_xyz(34)=coef_xyz(34)+coef_xy(2,34)*pol_z(2,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(1,35)*pol_z(1,0,kg) - coef_xyz(35)=coef_xyz(35)+coef_xy(2,35)*pol_z(2,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(1,36)*pol_z(1,0,kg) - coef_xyz(36)=coef_xyz(36)+coef_xy(2,36)*pol_z(2,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(1,37)*pol_z(1,0,kg) - coef_xyz(37)=coef_xyz(37)+coef_xy(2,37)*pol_z(2,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(1,38)*pol_z(1,0,kg) - coef_xyz(38)=coef_xyz(38)+coef_xy(2,38)*pol_z(2,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(1,39)*pol_z(1,0,kg) - coef_xyz(39)=coef_xyz(39)+coef_xy(2,39)*pol_z(2,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(1,40)*pol_z(1,0,kg) - coef_xyz(40)=coef_xyz(40)+coef_xy(2,40)*pol_z(2,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(1,41)*pol_z(1,0,kg) - coef_xyz(41)=coef_xyz(41)+coef_xy(2,41)*pol_z(2,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(1,42)*pol_z(1,0,kg) - coef_xyz(42)=coef_xyz(42)+coef_xy(2,42)*pol_z(2,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(1,43)*pol_z(1,0,kg) - coef_xyz(43)=coef_xyz(43)+coef_xy(2,43)*pol_z(2,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(1,44)*pol_z(1,0,kg) - coef_xyz(44)=coef_xyz(44)+coef_xy(2,44)*pol_z(2,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(1,45)*pol_z(1,0,kg) - coef_xyz(45)=coef_xyz(45)+coef_xy(2,45)*pol_z(2,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(1,46)*pol_z(1,0,kg) - coef_xyz(46)=coef_xyz(46)+coef_xy(2,46)*pol_z(2,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(1,47)*pol_z(1,0,kg) - coef_xyz(47)=coef_xyz(47)+coef_xy(2,47)*pol_z(2,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(1,48)*pol_z(1,0,kg) - coef_xyz(48)=coef_xyz(48)+coef_xy(2,48)*pol_z(2,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(1,49)*pol_z(1,0,kg) - coef_xyz(49)=coef_xyz(49)+coef_xy(2,49)*pol_z(2,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(1,50)*pol_z(1,0,kg) - coef_xyz(50)=coef_xyz(50)+coef_xy(2,50)*pol_z(2,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(1,51)*pol_z(1,0,kg) - coef_xyz(51)=coef_xyz(51)+coef_xy(2,51)*pol_z(2,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(1,52)*pol_z(1,0,kg) - coef_xyz(52)=coef_xyz(52)+coef_xy(2,52)*pol_z(2,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(1,53)*pol_z(1,0,kg) - coef_xyz(53)=coef_xyz(53)+coef_xy(2,53)*pol_z(2,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(1,54)*pol_z(1,0,kg) - coef_xyz(54)=coef_xyz(54)+coef_xy(2,54)*pol_z(2,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(1,55)*pol_z(1,0,kg) - coef_xyz(55)=coef_xyz(55)+coef_xy(2,55)*pol_z(2,0,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(1,1)*pol_z(1,1,kg) - coef_xyz(56)=coef_xyz(56)+coef_xy(2,1)*pol_z(2,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(1,2)*pol_z(1,1,kg) - coef_xyz(57)=coef_xyz(57)+coef_xy(2,2)*pol_z(2,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(1,3)*pol_z(1,1,kg) - coef_xyz(58)=coef_xyz(58)+coef_xy(2,3)*pol_z(2,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(1,4)*pol_z(1,1,kg) - coef_xyz(59)=coef_xyz(59)+coef_xy(2,4)*pol_z(2,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(1,5)*pol_z(1,1,kg) - coef_xyz(60)=coef_xyz(60)+coef_xy(2,5)*pol_z(2,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(1,6)*pol_z(1,1,kg) - coef_xyz(61)=coef_xyz(61)+coef_xy(2,6)*pol_z(2,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(1,7)*pol_z(1,1,kg) - coef_xyz(62)=coef_xyz(62)+coef_xy(2,7)*pol_z(2,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(1,8)*pol_z(1,1,kg) - coef_xyz(63)=coef_xyz(63)+coef_xy(2,8)*pol_z(2,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(1,9)*pol_z(1,1,kg) - coef_xyz(64)=coef_xyz(64)+coef_xy(2,9)*pol_z(2,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(1,11)*pol_z(1,1,kg) - coef_xyz(65)=coef_xyz(65)+coef_xy(2,11)*pol_z(2,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(1,12)*pol_z(1,1,kg) - coef_xyz(66)=coef_xyz(66)+coef_xy(2,12)*pol_z(2,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(1,13)*pol_z(1,1,kg) - coef_xyz(67)=coef_xyz(67)+coef_xy(2,13)*pol_z(2,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(1,14)*pol_z(1,1,kg) - coef_xyz(68)=coef_xyz(68)+coef_xy(2,14)*pol_z(2,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(1,15)*pol_z(1,1,kg) - coef_xyz(69)=coef_xyz(69)+coef_xy(2,15)*pol_z(2,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(1,16)*pol_z(1,1,kg) - coef_xyz(70)=coef_xyz(70)+coef_xy(2,16)*pol_z(2,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(1,17)*pol_z(1,1,kg) - coef_xyz(71)=coef_xyz(71)+coef_xy(2,17)*pol_z(2,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(1,18)*pol_z(1,1,kg) - coef_xyz(72)=coef_xyz(72)+coef_xy(2,18)*pol_z(2,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(1,20)*pol_z(1,1,kg) - coef_xyz(73)=coef_xyz(73)+coef_xy(2,20)*pol_z(2,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(1,21)*pol_z(1,1,kg) - coef_xyz(74)=coef_xyz(74)+coef_xy(2,21)*pol_z(2,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(1,22)*pol_z(1,1,kg) - coef_xyz(75)=coef_xyz(75)+coef_xy(2,22)*pol_z(2,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(1,23)*pol_z(1,1,kg) - coef_xyz(76)=coef_xyz(76)+coef_xy(2,23)*pol_z(2,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(1,24)*pol_z(1,1,kg) - coef_xyz(77)=coef_xyz(77)+coef_xy(2,24)*pol_z(2,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(1,25)*pol_z(1,1,kg) - coef_xyz(78)=coef_xyz(78)+coef_xy(2,25)*pol_z(2,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(1,26)*pol_z(1,1,kg) - coef_xyz(79)=coef_xyz(79)+coef_xy(2,26)*pol_z(2,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(1,28)*pol_z(1,1,kg) - coef_xyz(80)=coef_xyz(80)+coef_xy(2,28)*pol_z(2,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(1,29)*pol_z(1,1,kg) - coef_xyz(81)=coef_xyz(81)+coef_xy(2,29)*pol_z(2,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(1,30)*pol_z(1,1,kg) - coef_xyz(82)=coef_xyz(82)+coef_xy(2,30)*pol_z(2,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(1,31)*pol_z(1,1,kg) - coef_xyz(83)=coef_xyz(83)+coef_xy(2,31)*pol_z(2,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(1,32)*pol_z(1,1,kg) - coef_xyz(84)=coef_xyz(84)+coef_xy(2,32)*pol_z(2,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(1,33)*pol_z(1,1,kg) - coef_xyz(85)=coef_xyz(85)+coef_xy(2,33)*pol_z(2,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(1,35)*pol_z(1,1,kg) - coef_xyz(86)=coef_xyz(86)+coef_xy(2,35)*pol_z(2,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(1,36)*pol_z(1,1,kg) - coef_xyz(87)=coef_xyz(87)+coef_xy(2,36)*pol_z(2,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(1,37)*pol_z(1,1,kg) - coef_xyz(88)=coef_xyz(88)+coef_xy(2,37)*pol_z(2,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(1,38)*pol_z(1,1,kg) - coef_xyz(89)=coef_xyz(89)+coef_xy(2,38)*pol_z(2,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(1,39)*pol_z(1,1,kg) - coef_xyz(90)=coef_xyz(90)+coef_xy(2,39)*pol_z(2,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(1,41)*pol_z(1,1,kg) - coef_xyz(91)=coef_xyz(91)+coef_xy(2,41)*pol_z(2,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(1,42)*pol_z(1,1,kg) - coef_xyz(92)=coef_xyz(92)+coef_xy(2,42)*pol_z(2,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(1,43)*pol_z(1,1,kg) - coef_xyz(93)=coef_xyz(93)+coef_xy(2,43)*pol_z(2,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(1,44)*pol_z(1,1,kg) - coef_xyz(94)=coef_xyz(94)+coef_xy(2,44)*pol_z(2,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(1,46)*pol_z(1,1,kg) - coef_xyz(95)=coef_xyz(95)+coef_xy(2,46)*pol_z(2,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(1,47)*pol_z(1,1,kg) - coef_xyz(96)=coef_xyz(96)+coef_xy(2,47)*pol_z(2,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(1,48)*pol_z(1,1,kg) - coef_xyz(97)=coef_xyz(97)+coef_xy(2,48)*pol_z(2,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(1,50)*pol_z(1,1,kg) - coef_xyz(98)=coef_xyz(98)+coef_xy(2,50)*pol_z(2,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(1,51)*pol_z(1,1,kg) - coef_xyz(99)=coef_xyz(99)+coef_xy(2,51)*pol_z(2,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(1,53)*pol_z(1,1,kg) - coef_xyz(100)=coef_xyz(100)+coef_xy(2,53)*pol_z(2,1,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(1,1)*pol_z(1,2,kg) - coef_xyz(101)=coef_xyz(101)+coef_xy(2,1)*pol_z(2,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(1,2)*pol_z(1,2,kg) - coef_xyz(102)=coef_xyz(102)+coef_xy(2,2)*pol_z(2,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(1,3)*pol_z(1,2,kg) - coef_xyz(103)=coef_xyz(103)+coef_xy(2,3)*pol_z(2,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(1,4)*pol_z(1,2,kg) - coef_xyz(104)=coef_xyz(104)+coef_xy(2,4)*pol_z(2,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(1,5)*pol_z(1,2,kg) - coef_xyz(105)=coef_xyz(105)+coef_xy(2,5)*pol_z(2,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(1,6)*pol_z(1,2,kg) - coef_xyz(106)=coef_xyz(106)+coef_xy(2,6)*pol_z(2,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(1,7)*pol_z(1,2,kg) - coef_xyz(107)=coef_xyz(107)+coef_xy(2,7)*pol_z(2,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(1,8)*pol_z(1,2,kg) - coef_xyz(108)=coef_xyz(108)+coef_xy(2,8)*pol_z(2,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(1,11)*pol_z(1,2,kg) - coef_xyz(109)=coef_xyz(109)+coef_xy(2,11)*pol_z(2,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(1,12)*pol_z(1,2,kg) - coef_xyz(110)=coef_xyz(110)+coef_xy(2,12)*pol_z(2,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(1,13)*pol_z(1,2,kg) - coef_xyz(111)=coef_xyz(111)+coef_xy(2,13)*pol_z(2,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(1,14)*pol_z(1,2,kg) - coef_xyz(112)=coef_xyz(112)+coef_xy(2,14)*pol_z(2,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(1,15)*pol_z(1,2,kg) - coef_xyz(113)=coef_xyz(113)+coef_xy(2,15)*pol_z(2,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(1,16)*pol_z(1,2,kg) - coef_xyz(114)=coef_xyz(114)+coef_xy(2,16)*pol_z(2,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(1,17)*pol_z(1,2,kg) - coef_xyz(115)=coef_xyz(115)+coef_xy(2,17)*pol_z(2,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(1,20)*pol_z(1,2,kg) - coef_xyz(116)=coef_xyz(116)+coef_xy(2,20)*pol_z(2,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(1,21)*pol_z(1,2,kg) - coef_xyz(117)=coef_xyz(117)+coef_xy(2,21)*pol_z(2,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(1,22)*pol_z(1,2,kg) - coef_xyz(118)=coef_xyz(118)+coef_xy(2,22)*pol_z(2,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(1,23)*pol_z(1,2,kg) - coef_xyz(119)=coef_xyz(119)+coef_xy(2,23)*pol_z(2,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(1,24)*pol_z(1,2,kg) - coef_xyz(120)=coef_xyz(120)+coef_xy(2,24)*pol_z(2,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(1,25)*pol_z(1,2,kg) - coef_xyz(121)=coef_xyz(121)+coef_xy(2,25)*pol_z(2,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(1,28)*pol_z(1,2,kg) - coef_xyz(122)=coef_xyz(122)+coef_xy(2,28)*pol_z(2,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(1,29)*pol_z(1,2,kg) - coef_xyz(123)=coef_xyz(123)+coef_xy(2,29)*pol_z(2,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(1,30)*pol_z(1,2,kg) - coef_xyz(124)=coef_xyz(124)+coef_xy(2,30)*pol_z(2,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(1,31)*pol_z(1,2,kg) - coef_xyz(125)=coef_xyz(125)+coef_xy(2,31)*pol_z(2,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(1,32)*pol_z(1,2,kg) - coef_xyz(126)=coef_xyz(126)+coef_xy(2,32)*pol_z(2,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(1,35)*pol_z(1,2,kg) - coef_xyz(127)=coef_xyz(127)+coef_xy(2,35)*pol_z(2,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(1,36)*pol_z(1,2,kg) - coef_xyz(128)=coef_xyz(128)+coef_xy(2,36)*pol_z(2,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(1,37)*pol_z(1,2,kg) - coef_xyz(129)=coef_xyz(129)+coef_xy(2,37)*pol_z(2,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(1,38)*pol_z(1,2,kg) - coef_xyz(130)=coef_xyz(130)+coef_xy(2,38)*pol_z(2,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(1,41)*pol_z(1,2,kg) - coef_xyz(131)=coef_xyz(131)+coef_xy(2,41)*pol_z(2,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(1,42)*pol_z(1,2,kg) - coef_xyz(132)=coef_xyz(132)+coef_xy(2,42)*pol_z(2,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(1,43)*pol_z(1,2,kg) - coef_xyz(133)=coef_xyz(133)+coef_xy(2,43)*pol_z(2,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(1,46)*pol_z(1,2,kg) - coef_xyz(134)=coef_xyz(134)+coef_xy(2,46)*pol_z(2,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(1,47)*pol_z(1,2,kg) - coef_xyz(135)=coef_xyz(135)+coef_xy(2,47)*pol_z(2,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(1,50)*pol_z(1,2,kg) - coef_xyz(136)=coef_xyz(136)+coef_xy(2,50)*pol_z(2,2,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(1,1)*pol_z(1,3,kg) - coef_xyz(137)=coef_xyz(137)+coef_xy(2,1)*pol_z(2,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(1,2)*pol_z(1,3,kg) - coef_xyz(138)=coef_xyz(138)+coef_xy(2,2)*pol_z(2,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(1,3)*pol_z(1,3,kg) - coef_xyz(139)=coef_xyz(139)+coef_xy(2,3)*pol_z(2,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(1,4)*pol_z(1,3,kg) - coef_xyz(140)=coef_xyz(140)+coef_xy(2,4)*pol_z(2,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(1,5)*pol_z(1,3,kg) - coef_xyz(141)=coef_xyz(141)+coef_xy(2,5)*pol_z(2,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(1,6)*pol_z(1,3,kg) - coef_xyz(142)=coef_xyz(142)+coef_xy(2,6)*pol_z(2,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(1,7)*pol_z(1,3,kg) - coef_xyz(143)=coef_xyz(143)+coef_xy(2,7)*pol_z(2,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(1,11)*pol_z(1,3,kg) - coef_xyz(144)=coef_xyz(144)+coef_xy(2,11)*pol_z(2,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(1,12)*pol_z(1,3,kg) - coef_xyz(145)=coef_xyz(145)+coef_xy(2,12)*pol_z(2,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(1,13)*pol_z(1,3,kg) - coef_xyz(146)=coef_xyz(146)+coef_xy(2,13)*pol_z(2,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(1,14)*pol_z(1,3,kg) - coef_xyz(147)=coef_xyz(147)+coef_xy(2,14)*pol_z(2,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(1,15)*pol_z(1,3,kg) - coef_xyz(148)=coef_xyz(148)+coef_xy(2,15)*pol_z(2,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(1,16)*pol_z(1,3,kg) - coef_xyz(149)=coef_xyz(149)+coef_xy(2,16)*pol_z(2,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(1,20)*pol_z(1,3,kg) - coef_xyz(150)=coef_xyz(150)+coef_xy(2,20)*pol_z(2,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(1,21)*pol_z(1,3,kg) - coef_xyz(151)=coef_xyz(151)+coef_xy(2,21)*pol_z(2,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(1,22)*pol_z(1,3,kg) - coef_xyz(152)=coef_xyz(152)+coef_xy(2,22)*pol_z(2,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(1,23)*pol_z(1,3,kg) - coef_xyz(153)=coef_xyz(153)+coef_xy(2,23)*pol_z(2,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(1,24)*pol_z(1,3,kg) - coef_xyz(154)=coef_xyz(154)+coef_xy(2,24)*pol_z(2,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(1,28)*pol_z(1,3,kg) - coef_xyz(155)=coef_xyz(155)+coef_xy(2,28)*pol_z(2,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(1,29)*pol_z(1,3,kg) - coef_xyz(156)=coef_xyz(156)+coef_xy(2,29)*pol_z(2,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(1,30)*pol_z(1,3,kg) - coef_xyz(157)=coef_xyz(157)+coef_xy(2,30)*pol_z(2,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(1,31)*pol_z(1,3,kg) - coef_xyz(158)=coef_xyz(158)+coef_xy(2,31)*pol_z(2,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(1,35)*pol_z(1,3,kg) - coef_xyz(159)=coef_xyz(159)+coef_xy(2,35)*pol_z(2,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(1,36)*pol_z(1,3,kg) - coef_xyz(160)=coef_xyz(160)+coef_xy(2,36)*pol_z(2,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(1,37)*pol_z(1,3,kg) - coef_xyz(161)=coef_xyz(161)+coef_xy(2,37)*pol_z(2,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(1,41)*pol_z(1,3,kg) - coef_xyz(162)=coef_xyz(162)+coef_xy(2,41)*pol_z(2,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(1,42)*pol_z(1,3,kg) - coef_xyz(163)=coef_xyz(163)+coef_xy(2,42)*pol_z(2,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(1,46)*pol_z(1,3,kg) - coef_xyz(164)=coef_xyz(164)+coef_xy(2,46)*pol_z(2,3,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(1,1)*pol_z(1,4,kg) - coef_xyz(165)=coef_xyz(165)+coef_xy(2,1)*pol_z(2,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(1,2)*pol_z(1,4,kg) - coef_xyz(166)=coef_xyz(166)+coef_xy(2,2)*pol_z(2,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(1,3)*pol_z(1,4,kg) - coef_xyz(167)=coef_xyz(167)+coef_xy(2,3)*pol_z(2,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(1,4)*pol_z(1,4,kg) - coef_xyz(168)=coef_xyz(168)+coef_xy(2,4)*pol_z(2,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(1,5)*pol_z(1,4,kg) - coef_xyz(169)=coef_xyz(169)+coef_xy(2,5)*pol_z(2,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(1,6)*pol_z(1,4,kg) - coef_xyz(170)=coef_xyz(170)+coef_xy(2,6)*pol_z(2,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(1,11)*pol_z(1,4,kg) - coef_xyz(171)=coef_xyz(171)+coef_xy(2,11)*pol_z(2,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(1,12)*pol_z(1,4,kg) - coef_xyz(172)=coef_xyz(172)+coef_xy(2,12)*pol_z(2,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(1,13)*pol_z(1,4,kg) - coef_xyz(173)=coef_xyz(173)+coef_xy(2,13)*pol_z(2,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(1,14)*pol_z(1,4,kg) - coef_xyz(174)=coef_xyz(174)+coef_xy(2,14)*pol_z(2,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(1,15)*pol_z(1,4,kg) - coef_xyz(175)=coef_xyz(175)+coef_xy(2,15)*pol_z(2,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(1,20)*pol_z(1,4,kg) - coef_xyz(176)=coef_xyz(176)+coef_xy(2,20)*pol_z(2,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(1,21)*pol_z(1,4,kg) - coef_xyz(177)=coef_xyz(177)+coef_xy(2,21)*pol_z(2,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(1,22)*pol_z(1,4,kg) - coef_xyz(178)=coef_xyz(178)+coef_xy(2,22)*pol_z(2,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(1,23)*pol_z(1,4,kg) - coef_xyz(179)=coef_xyz(179)+coef_xy(2,23)*pol_z(2,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(1,28)*pol_z(1,4,kg) - coef_xyz(180)=coef_xyz(180)+coef_xy(2,28)*pol_z(2,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(1,29)*pol_z(1,4,kg) - coef_xyz(181)=coef_xyz(181)+coef_xy(2,29)*pol_z(2,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(1,30)*pol_z(1,4,kg) - coef_xyz(182)=coef_xyz(182)+coef_xy(2,30)*pol_z(2,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(1,35)*pol_z(1,4,kg) - coef_xyz(183)=coef_xyz(183)+coef_xy(2,35)*pol_z(2,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(1,36)*pol_z(1,4,kg) - coef_xyz(184)=coef_xyz(184)+coef_xy(2,36)*pol_z(2,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(1,41)*pol_z(1,4,kg) - coef_xyz(185)=coef_xyz(185)+coef_xy(2,41)*pol_z(2,4,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(1,1)*pol_z(1,5,kg) - coef_xyz(186)=coef_xyz(186)+coef_xy(2,1)*pol_z(2,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(1,2)*pol_z(1,5,kg) - coef_xyz(187)=coef_xyz(187)+coef_xy(2,2)*pol_z(2,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(1,3)*pol_z(1,5,kg) - coef_xyz(188)=coef_xyz(188)+coef_xy(2,3)*pol_z(2,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(1,4)*pol_z(1,5,kg) - coef_xyz(189)=coef_xyz(189)+coef_xy(2,4)*pol_z(2,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(1,5)*pol_z(1,5,kg) - coef_xyz(190)=coef_xyz(190)+coef_xy(2,5)*pol_z(2,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(1,11)*pol_z(1,5,kg) - coef_xyz(191)=coef_xyz(191)+coef_xy(2,11)*pol_z(2,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(1,12)*pol_z(1,5,kg) - coef_xyz(192)=coef_xyz(192)+coef_xy(2,12)*pol_z(2,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(1,13)*pol_z(1,5,kg) - coef_xyz(193)=coef_xyz(193)+coef_xy(2,13)*pol_z(2,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(1,14)*pol_z(1,5,kg) - coef_xyz(194)=coef_xyz(194)+coef_xy(2,14)*pol_z(2,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(1,20)*pol_z(1,5,kg) - coef_xyz(195)=coef_xyz(195)+coef_xy(2,20)*pol_z(2,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(1,21)*pol_z(1,5,kg) - coef_xyz(196)=coef_xyz(196)+coef_xy(2,21)*pol_z(2,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(1,22)*pol_z(1,5,kg) - coef_xyz(197)=coef_xyz(197)+coef_xy(2,22)*pol_z(2,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(1,28)*pol_z(1,5,kg) - coef_xyz(198)=coef_xyz(198)+coef_xy(2,28)*pol_z(2,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(1,29)*pol_z(1,5,kg) - coef_xyz(199)=coef_xyz(199)+coef_xy(2,29)*pol_z(2,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(1,35)*pol_z(1,5,kg) - coef_xyz(200)=coef_xyz(200)+coef_xy(2,35)*pol_z(2,5,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(1,1)*pol_z(1,6,kg) - coef_xyz(201)=coef_xyz(201)+coef_xy(2,1)*pol_z(2,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(1,2)*pol_z(1,6,kg) - coef_xyz(202)=coef_xyz(202)+coef_xy(2,2)*pol_z(2,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(1,3)*pol_z(1,6,kg) - coef_xyz(203)=coef_xyz(203)+coef_xy(2,3)*pol_z(2,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(1,4)*pol_z(1,6,kg) - coef_xyz(204)=coef_xyz(204)+coef_xy(2,4)*pol_z(2,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(1,11)*pol_z(1,6,kg) - coef_xyz(205)=coef_xyz(205)+coef_xy(2,11)*pol_z(2,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(1,12)*pol_z(1,6,kg) - coef_xyz(206)=coef_xyz(206)+coef_xy(2,12)*pol_z(2,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(1,13)*pol_z(1,6,kg) - coef_xyz(207)=coef_xyz(207)+coef_xy(2,13)*pol_z(2,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(1,20)*pol_z(1,6,kg) - coef_xyz(208)=coef_xyz(208)+coef_xy(2,20)*pol_z(2,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(1,21)*pol_z(1,6,kg) - coef_xyz(209)=coef_xyz(209)+coef_xy(2,21)*pol_z(2,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(1,28)*pol_z(1,6,kg) - coef_xyz(210)=coef_xyz(210)+coef_xy(2,28)*pol_z(2,6,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(1,1)*pol_z(1,7,kg) - coef_xyz(211)=coef_xyz(211)+coef_xy(2,1)*pol_z(2,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(1,2)*pol_z(1,7,kg) - coef_xyz(212)=coef_xyz(212)+coef_xy(2,2)*pol_z(2,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(1,3)*pol_z(1,7,kg) - coef_xyz(213)=coef_xyz(213)+coef_xy(2,3)*pol_z(2,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(1,11)*pol_z(1,7,kg) - coef_xyz(214)=coef_xyz(214)+coef_xy(2,11)*pol_z(2,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(1,12)*pol_z(1,7,kg) - coef_xyz(215)=coef_xyz(215)+coef_xy(2,12)*pol_z(2,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(1,20)*pol_z(1,7,kg) - coef_xyz(216)=coef_xyz(216)+coef_xy(2,20)*pol_z(2,7,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(1,1)*pol_z(1,8,kg) - coef_xyz(217)=coef_xyz(217)+coef_xy(2,1)*pol_z(2,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(1,2)*pol_z(1,8,kg) - coef_xyz(218)=coef_xyz(218)+coef_xy(2,2)*pol_z(2,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(1,11)*pol_z(1,8,kg) - coef_xyz(219)=coef_xyz(219)+coef_xy(2,11)*pol_z(2,8,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(1,1)*pol_z(1,9,kg) - coef_xyz(220)=coef_xyz(220)+coef_xy(2,1)*pol_z(2,9,kg) - END DO + coef_x = 0.0_dp + DO ig = igmin, igmax + i = map(ig, 1) + s(1) = grid(i, j, k) + s(2) = grid(i, j, k2) + s(3) = grid(i, j2, k) + s(4) = grid(i, j2, k2) + coef_x(:, 0) = coef_x(:, 0)+s(:)*pol_x(0, ig) + coef_x(:, 1) = coef_x(:, 1)+s(:)*pol_x(1, ig) + coef_x(:, 2) = coef_x(:, 2)+s(:)*pol_x(2, ig) + coef_x(:, 3) = coef_x(:, 3)+s(:)*pol_x(3, ig) + coef_x(:, 4) = coef_x(:, 4)+s(:)*pol_x(4, ig) + coef_x(:, 5) = coef_x(:, 5)+s(:)*pol_x(5, ig) + coef_x(:, 6) = coef_x(:, 6)+s(:)*pol_x(6, ig) + coef_x(:, 7) = coef_x(:, 7)+s(:)*pol_x(7, ig) + coef_x(:, 8) = coef_x(:, 8)+s(:)*pol_x(8, ig) + coef_x(:, 9) = coef_x(:, 9)+s(:)*pol_x(9, ig) + END DO + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(1, 0)*pol_y(1, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(2, 0)*pol_y(1, 0, jg) + coef_xy(1, 1) = coef_xy(1, 1)+coef_x(3, 0)*pol_y(2, 0, jg) + coef_xy(2, 1) = coef_xy(2, 1)+coef_x(4, 0)*pol_y(2, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(1, 1)*pol_y(1, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(2, 1)*pol_y(1, 0, jg) + coef_xy(1, 2) = coef_xy(1, 2)+coef_x(3, 1)*pol_y(2, 0, jg) + coef_xy(2, 2) = coef_xy(2, 2)+coef_x(4, 1)*pol_y(2, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(1, 2)*pol_y(1, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(2, 2)*pol_y(1, 0, jg) + coef_xy(1, 3) = coef_xy(1, 3)+coef_x(3, 2)*pol_y(2, 0, jg) + coef_xy(2, 3) = coef_xy(2, 3)+coef_x(4, 2)*pol_y(2, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(1, 3)*pol_y(1, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(2, 3)*pol_y(1, 0, jg) + coef_xy(1, 4) = coef_xy(1, 4)+coef_x(3, 3)*pol_y(2, 0, jg) + coef_xy(2, 4) = coef_xy(2, 4)+coef_x(4, 3)*pol_y(2, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(1, 4)*pol_y(1, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(2, 4)*pol_y(1, 0, jg) + coef_xy(1, 5) = coef_xy(1, 5)+coef_x(3, 4)*pol_y(2, 0, jg) + coef_xy(2, 5) = coef_xy(2, 5)+coef_x(4, 4)*pol_y(2, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(1, 5)*pol_y(1, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(2, 5)*pol_y(1, 0, jg) + coef_xy(1, 6) = coef_xy(1, 6)+coef_x(3, 5)*pol_y(2, 0, jg) + coef_xy(2, 6) = coef_xy(2, 6)+coef_x(4, 5)*pol_y(2, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(1, 6)*pol_y(1, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(2, 6)*pol_y(1, 0, jg) + coef_xy(1, 7) = coef_xy(1, 7)+coef_x(3, 6)*pol_y(2, 0, jg) + coef_xy(2, 7) = coef_xy(2, 7)+coef_x(4, 6)*pol_y(2, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(1, 7)*pol_y(1, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(2, 7)*pol_y(1, 0, jg) + coef_xy(1, 8) = coef_xy(1, 8)+coef_x(3, 7)*pol_y(2, 0, jg) + coef_xy(2, 8) = coef_xy(2, 8)+coef_x(4, 7)*pol_y(2, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(1, 8)*pol_y(1, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(2, 8)*pol_y(1, 0, jg) + coef_xy(1, 9) = coef_xy(1, 9)+coef_x(3, 8)*pol_y(2, 0, jg) + coef_xy(2, 9) = coef_xy(2, 9)+coef_x(4, 8)*pol_y(2, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(1, 9)*pol_y(1, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(2, 9)*pol_y(1, 0, jg) + coef_xy(1, 10) = coef_xy(1, 10)+coef_x(3, 9)*pol_y(2, 0, jg) + coef_xy(2, 10) = coef_xy(2, 10)+coef_x(4, 9)*pol_y(2, 0, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(1, 0)*pol_y(1, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(2, 0)*pol_y(1, 1, jg) + coef_xy(1, 11) = coef_xy(1, 11)+coef_x(3, 0)*pol_y(2, 1, jg) + coef_xy(2, 11) = coef_xy(2, 11)+coef_x(4, 0)*pol_y(2, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(1, 1)*pol_y(1, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(2, 1)*pol_y(1, 1, jg) + coef_xy(1, 12) = coef_xy(1, 12)+coef_x(3, 1)*pol_y(2, 1, jg) + coef_xy(2, 12) = coef_xy(2, 12)+coef_x(4, 1)*pol_y(2, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(1, 2)*pol_y(1, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(2, 2)*pol_y(1, 1, jg) + coef_xy(1, 13) = coef_xy(1, 13)+coef_x(3, 2)*pol_y(2, 1, jg) + coef_xy(2, 13) = coef_xy(2, 13)+coef_x(4, 2)*pol_y(2, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(1, 3)*pol_y(1, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(2, 3)*pol_y(1, 1, jg) + coef_xy(1, 14) = coef_xy(1, 14)+coef_x(3, 3)*pol_y(2, 1, jg) + coef_xy(2, 14) = coef_xy(2, 14)+coef_x(4, 3)*pol_y(2, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(1, 4)*pol_y(1, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(2, 4)*pol_y(1, 1, jg) + coef_xy(1, 15) = coef_xy(1, 15)+coef_x(3, 4)*pol_y(2, 1, jg) + coef_xy(2, 15) = coef_xy(2, 15)+coef_x(4, 4)*pol_y(2, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(1, 5)*pol_y(1, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(2, 5)*pol_y(1, 1, jg) + coef_xy(1, 16) = coef_xy(1, 16)+coef_x(3, 5)*pol_y(2, 1, jg) + coef_xy(2, 16) = coef_xy(2, 16)+coef_x(4, 5)*pol_y(2, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(1, 6)*pol_y(1, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(2, 6)*pol_y(1, 1, jg) + coef_xy(1, 17) = coef_xy(1, 17)+coef_x(3, 6)*pol_y(2, 1, jg) + coef_xy(2, 17) = coef_xy(2, 17)+coef_x(4, 6)*pol_y(2, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(1, 7)*pol_y(1, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(2, 7)*pol_y(1, 1, jg) + coef_xy(1, 18) = coef_xy(1, 18)+coef_x(3, 7)*pol_y(2, 1, jg) + coef_xy(2, 18) = coef_xy(2, 18)+coef_x(4, 7)*pol_y(2, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(1, 8)*pol_y(1, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(2, 8)*pol_y(1, 1, jg) + coef_xy(1, 19) = coef_xy(1, 19)+coef_x(3, 8)*pol_y(2, 1, jg) + coef_xy(2, 19) = coef_xy(2, 19)+coef_x(4, 8)*pol_y(2, 1, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(1, 0)*pol_y(1, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(2, 0)*pol_y(1, 2, jg) + coef_xy(1, 20) = coef_xy(1, 20)+coef_x(3, 0)*pol_y(2, 2, jg) + coef_xy(2, 20) = coef_xy(2, 20)+coef_x(4, 0)*pol_y(2, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(1, 1)*pol_y(1, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(2, 1)*pol_y(1, 2, jg) + coef_xy(1, 21) = coef_xy(1, 21)+coef_x(3, 1)*pol_y(2, 2, jg) + coef_xy(2, 21) = coef_xy(2, 21)+coef_x(4, 1)*pol_y(2, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(1, 2)*pol_y(1, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(2, 2)*pol_y(1, 2, jg) + coef_xy(1, 22) = coef_xy(1, 22)+coef_x(3, 2)*pol_y(2, 2, jg) + coef_xy(2, 22) = coef_xy(2, 22)+coef_x(4, 2)*pol_y(2, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(1, 3)*pol_y(1, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(2, 3)*pol_y(1, 2, jg) + coef_xy(1, 23) = coef_xy(1, 23)+coef_x(3, 3)*pol_y(2, 2, jg) + coef_xy(2, 23) = coef_xy(2, 23)+coef_x(4, 3)*pol_y(2, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(1, 4)*pol_y(1, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(2, 4)*pol_y(1, 2, jg) + coef_xy(1, 24) = coef_xy(1, 24)+coef_x(3, 4)*pol_y(2, 2, jg) + coef_xy(2, 24) = coef_xy(2, 24)+coef_x(4, 4)*pol_y(2, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(1, 5)*pol_y(1, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(2, 5)*pol_y(1, 2, jg) + coef_xy(1, 25) = coef_xy(1, 25)+coef_x(3, 5)*pol_y(2, 2, jg) + coef_xy(2, 25) = coef_xy(2, 25)+coef_x(4, 5)*pol_y(2, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(1, 6)*pol_y(1, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(2, 6)*pol_y(1, 2, jg) + coef_xy(1, 26) = coef_xy(1, 26)+coef_x(3, 6)*pol_y(2, 2, jg) + coef_xy(2, 26) = coef_xy(2, 26)+coef_x(4, 6)*pol_y(2, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(1, 7)*pol_y(1, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(2, 7)*pol_y(1, 2, jg) + coef_xy(1, 27) = coef_xy(1, 27)+coef_x(3, 7)*pol_y(2, 2, jg) + coef_xy(2, 27) = coef_xy(2, 27)+coef_x(4, 7)*pol_y(2, 2, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(1, 0)*pol_y(1, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(2, 0)*pol_y(1, 3, jg) + coef_xy(1, 28) = coef_xy(1, 28)+coef_x(3, 0)*pol_y(2, 3, jg) + coef_xy(2, 28) = coef_xy(2, 28)+coef_x(4, 0)*pol_y(2, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(1, 1)*pol_y(1, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(2, 1)*pol_y(1, 3, jg) + coef_xy(1, 29) = coef_xy(1, 29)+coef_x(3, 1)*pol_y(2, 3, jg) + coef_xy(2, 29) = coef_xy(2, 29)+coef_x(4, 1)*pol_y(2, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(1, 2)*pol_y(1, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(2, 2)*pol_y(1, 3, jg) + coef_xy(1, 30) = coef_xy(1, 30)+coef_x(3, 2)*pol_y(2, 3, jg) + coef_xy(2, 30) = coef_xy(2, 30)+coef_x(4, 2)*pol_y(2, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(1, 3)*pol_y(1, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(2, 3)*pol_y(1, 3, jg) + coef_xy(1, 31) = coef_xy(1, 31)+coef_x(3, 3)*pol_y(2, 3, jg) + coef_xy(2, 31) = coef_xy(2, 31)+coef_x(4, 3)*pol_y(2, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(1, 4)*pol_y(1, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(2, 4)*pol_y(1, 3, jg) + coef_xy(1, 32) = coef_xy(1, 32)+coef_x(3, 4)*pol_y(2, 3, jg) + coef_xy(2, 32) = coef_xy(2, 32)+coef_x(4, 4)*pol_y(2, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(1, 5)*pol_y(1, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(2, 5)*pol_y(1, 3, jg) + coef_xy(1, 33) = coef_xy(1, 33)+coef_x(3, 5)*pol_y(2, 3, jg) + coef_xy(2, 33) = coef_xy(2, 33)+coef_x(4, 5)*pol_y(2, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(1, 6)*pol_y(1, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(2, 6)*pol_y(1, 3, jg) + coef_xy(1, 34) = coef_xy(1, 34)+coef_x(3, 6)*pol_y(2, 3, jg) + coef_xy(2, 34) = coef_xy(2, 34)+coef_x(4, 6)*pol_y(2, 3, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(1, 0)*pol_y(1, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(2, 0)*pol_y(1, 4, jg) + coef_xy(1, 35) = coef_xy(1, 35)+coef_x(3, 0)*pol_y(2, 4, jg) + coef_xy(2, 35) = coef_xy(2, 35)+coef_x(4, 0)*pol_y(2, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(1, 1)*pol_y(1, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(2, 1)*pol_y(1, 4, jg) + coef_xy(1, 36) = coef_xy(1, 36)+coef_x(3, 1)*pol_y(2, 4, jg) + coef_xy(2, 36) = coef_xy(2, 36)+coef_x(4, 1)*pol_y(2, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(1, 2)*pol_y(1, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(2, 2)*pol_y(1, 4, jg) + coef_xy(1, 37) = coef_xy(1, 37)+coef_x(3, 2)*pol_y(2, 4, jg) + coef_xy(2, 37) = coef_xy(2, 37)+coef_x(4, 2)*pol_y(2, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(1, 3)*pol_y(1, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(2, 3)*pol_y(1, 4, jg) + coef_xy(1, 38) = coef_xy(1, 38)+coef_x(3, 3)*pol_y(2, 4, jg) + coef_xy(2, 38) = coef_xy(2, 38)+coef_x(4, 3)*pol_y(2, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(1, 4)*pol_y(1, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(2, 4)*pol_y(1, 4, jg) + coef_xy(1, 39) = coef_xy(1, 39)+coef_x(3, 4)*pol_y(2, 4, jg) + coef_xy(2, 39) = coef_xy(2, 39)+coef_x(4, 4)*pol_y(2, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(1, 5)*pol_y(1, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(2, 5)*pol_y(1, 4, jg) + coef_xy(1, 40) = coef_xy(1, 40)+coef_x(3, 5)*pol_y(2, 4, jg) + coef_xy(2, 40) = coef_xy(2, 40)+coef_x(4, 5)*pol_y(2, 4, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(1, 0)*pol_y(1, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(2, 0)*pol_y(1, 5, jg) + coef_xy(1, 41) = coef_xy(1, 41)+coef_x(3, 0)*pol_y(2, 5, jg) + coef_xy(2, 41) = coef_xy(2, 41)+coef_x(4, 0)*pol_y(2, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(1, 1)*pol_y(1, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(2, 1)*pol_y(1, 5, jg) + coef_xy(1, 42) = coef_xy(1, 42)+coef_x(3, 1)*pol_y(2, 5, jg) + coef_xy(2, 42) = coef_xy(2, 42)+coef_x(4, 1)*pol_y(2, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(1, 2)*pol_y(1, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(2, 2)*pol_y(1, 5, jg) + coef_xy(1, 43) = coef_xy(1, 43)+coef_x(3, 2)*pol_y(2, 5, jg) + coef_xy(2, 43) = coef_xy(2, 43)+coef_x(4, 2)*pol_y(2, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(1, 3)*pol_y(1, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(2, 3)*pol_y(1, 5, jg) + coef_xy(1, 44) = coef_xy(1, 44)+coef_x(3, 3)*pol_y(2, 5, jg) + coef_xy(2, 44) = coef_xy(2, 44)+coef_x(4, 3)*pol_y(2, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(1, 4)*pol_y(1, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(2, 4)*pol_y(1, 5, jg) + coef_xy(1, 45) = coef_xy(1, 45)+coef_x(3, 4)*pol_y(2, 5, jg) + coef_xy(2, 45) = coef_xy(2, 45)+coef_x(4, 4)*pol_y(2, 5, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(1, 0)*pol_y(1, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(2, 0)*pol_y(1, 6, jg) + coef_xy(1, 46) = coef_xy(1, 46)+coef_x(3, 0)*pol_y(2, 6, jg) + coef_xy(2, 46) = coef_xy(2, 46)+coef_x(4, 0)*pol_y(2, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(1, 1)*pol_y(1, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(2, 1)*pol_y(1, 6, jg) + coef_xy(1, 47) = coef_xy(1, 47)+coef_x(3, 1)*pol_y(2, 6, jg) + coef_xy(2, 47) = coef_xy(2, 47)+coef_x(4, 1)*pol_y(2, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(1, 2)*pol_y(1, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(2, 2)*pol_y(1, 6, jg) + coef_xy(1, 48) = coef_xy(1, 48)+coef_x(3, 2)*pol_y(2, 6, jg) + coef_xy(2, 48) = coef_xy(2, 48)+coef_x(4, 2)*pol_y(2, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(1, 3)*pol_y(1, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(2, 3)*pol_y(1, 6, jg) + coef_xy(1, 49) = coef_xy(1, 49)+coef_x(3, 3)*pol_y(2, 6, jg) + coef_xy(2, 49) = coef_xy(2, 49)+coef_x(4, 3)*pol_y(2, 6, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(1, 0)*pol_y(1, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(2, 0)*pol_y(1, 7, jg) + coef_xy(1, 50) = coef_xy(1, 50)+coef_x(3, 0)*pol_y(2, 7, jg) + coef_xy(2, 50) = coef_xy(2, 50)+coef_x(4, 0)*pol_y(2, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(1, 1)*pol_y(1, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(2, 1)*pol_y(1, 7, jg) + coef_xy(1, 51) = coef_xy(1, 51)+coef_x(3, 1)*pol_y(2, 7, jg) + coef_xy(2, 51) = coef_xy(2, 51)+coef_x(4, 1)*pol_y(2, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(1, 2)*pol_y(1, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(2, 2)*pol_y(1, 7, jg) + coef_xy(1, 52) = coef_xy(1, 52)+coef_x(3, 2)*pol_y(2, 7, jg) + coef_xy(2, 52) = coef_xy(2, 52)+coef_x(4, 2)*pol_y(2, 7, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(1, 0)*pol_y(1, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(2, 0)*pol_y(1, 8, jg) + coef_xy(1, 53) = coef_xy(1, 53)+coef_x(3, 0)*pol_y(2, 8, jg) + coef_xy(2, 53) = coef_xy(2, 53)+coef_x(4, 0)*pol_y(2, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(1, 1)*pol_y(1, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(2, 1)*pol_y(1, 8, jg) + coef_xy(1, 54) = coef_xy(1, 54)+coef_x(3, 1)*pol_y(2, 8, jg) + coef_xy(2, 54) = coef_xy(2, 54)+coef_x(4, 1)*pol_y(2, 8, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(1, 0)*pol_y(1, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(2, 0)*pol_y(1, 9, jg) + coef_xy(1, 55) = coef_xy(1, 55)+coef_x(3, 0)*pol_y(2, 9, jg) + coef_xy(2, 55) = coef_xy(2, 55)+coef_x(4, 0)*pol_y(2, 9, jg) + END DO + coef_xyz(1) = coef_xyz(1)+coef_xy(1, 1)*pol_z(1, 0, kg) + coef_xyz(1) = coef_xyz(1)+coef_xy(2, 1)*pol_z(2, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(1, 2)*pol_z(1, 0, kg) + coef_xyz(2) = coef_xyz(2)+coef_xy(2, 2)*pol_z(2, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(1, 3)*pol_z(1, 0, kg) + coef_xyz(3) = coef_xyz(3)+coef_xy(2, 3)*pol_z(2, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(1, 4)*pol_z(1, 0, kg) + coef_xyz(4) = coef_xyz(4)+coef_xy(2, 4)*pol_z(2, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(1, 5)*pol_z(1, 0, kg) + coef_xyz(5) = coef_xyz(5)+coef_xy(2, 5)*pol_z(2, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(1, 6)*pol_z(1, 0, kg) + coef_xyz(6) = coef_xyz(6)+coef_xy(2, 6)*pol_z(2, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(1, 7)*pol_z(1, 0, kg) + coef_xyz(7) = coef_xyz(7)+coef_xy(2, 7)*pol_z(2, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(1, 8)*pol_z(1, 0, kg) + coef_xyz(8) = coef_xyz(8)+coef_xy(2, 8)*pol_z(2, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(1, 9)*pol_z(1, 0, kg) + coef_xyz(9) = coef_xyz(9)+coef_xy(2, 9)*pol_z(2, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(1, 10)*pol_z(1, 0, kg) + coef_xyz(10) = coef_xyz(10)+coef_xy(2, 10)*pol_z(2, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(1, 11)*pol_z(1, 0, kg) + coef_xyz(11) = coef_xyz(11)+coef_xy(2, 11)*pol_z(2, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(1, 12)*pol_z(1, 0, kg) + coef_xyz(12) = coef_xyz(12)+coef_xy(2, 12)*pol_z(2, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(1, 13)*pol_z(1, 0, kg) + coef_xyz(13) = coef_xyz(13)+coef_xy(2, 13)*pol_z(2, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(1, 14)*pol_z(1, 0, kg) + coef_xyz(14) = coef_xyz(14)+coef_xy(2, 14)*pol_z(2, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(1, 15)*pol_z(1, 0, kg) + coef_xyz(15) = coef_xyz(15)+coef_xy(2, 15)*pol_z(2, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(1, 16)*pol_z(1, 0, kg) + coef_xyz(16) = coef_xyz(16)+coef_xy(2, 16)*pol_z(2, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(1, 17)*pol_z(1, 0, kg) + coef_xyz(17) = coef_xyz(17)+coef_xy(2, 17)*pol_z(2, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(1, 18)*pol_z(1, 0, kg) + coef_xyz(18) = coef_xyz(18)+coef_xy(2, 18)*pol_z(2, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(1, 19)*pol_z(1, 0, kg) + coef_xyz(19) = coef_xyz(19)+coef_xy(2, 19)*pol_z(2, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(1, 20)*pol_z(1, 0, kg) + coef_xyz(20) = coef_xyz(20)+coef_xy(2, 20)*pol_z(2, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(1, 21)*pol_z(1, 0, kg) + coef_xyz(21) = coef_xyz(21)+coef_xy(2, 21)*pol_z(2, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(1, 22)*pol_z(1, 0, kg) + coef_xyz(22) = coef_xyz(22)+coef_xy(2, 22)*pol_z(2, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(1, 23)*pol_z(1, 0, kg) + coef_xyz(23) = coef_xyz(23)+coef_xy(2, 23)*pol_z(2, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(1, 24)*pol_z(1, 0, kg) + coef_xyz(24) = coef_xyz(24)+coef_xy(2, 24)*pol_z(2, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(1, 25)*pol_z(1, 0, kg) + coef_xyz(25) = coef_xyz(25)+coef_xy(2, 25)*pol_z(2, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(1, 26)*pol_z(1, 0, kg) + coef_xyz(26) = coef_xyz(26)+coef_xy(2, 26)*pol_z(2, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(1, 27)*pol_z(1, 0, kg) + coef_xyz(27) = coef_xyz(27)+coef_xy(2, 27)*pol_z(2, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(1, 28)*pol_z(1, 0, kg) + coef_xyz(28) = coef_xyz(28)+coef_xy(2, 28)*pol_z(2, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(1, 29)*pol_z(1, 0, kg) + coef_xyz(29) = coef_xyz(29)+coef_xy(2, 29)*pol_z(2, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(1, 30)*pol_z(1, 0, kg) + coef_xyz(30) = coef_xyz(30)+coef_xy(2, 30)*pol_z(2, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(1, 31)*pol_z(1, 0, kg) + coef_xyz(31) = coef_xyz(31)+coef_xy(2, 31)*pol_z(2, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(1, 32)*pol_z(1, 0, kg) + coef_xyz(32) = coef_xyz(32)+coef_xy(2, 32)*pol_z(2, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(1, 33)*pol_z(1, 0, kg) + coef_xyz(33) = coef_xyz(33)+coef_xy(2, 33)*pol_z(2, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(1, 34)*pol_z(1, 0, kg) + coef_xyz(34) = coef_xyz(34)+coef_xy(2, 34)*pol_z(2, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(1, 35)*pol_z(1, 0, kg) + coef_xyz(35) = coef_xyz(35)+coef_xy(2, 35)*pol_z(2, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(1, 36)*pol_z(1, 0, kg) + coef_xyz(36) = coef_xyz(36)+coef_xy(2, 36)*pol_z(2, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(1, 37)*pol_z(1, 0, kg) + coef_xyz(37) = coef_xyz(37)+coef_xy(2, 37)*pol_z(2, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(1, 38)*pol_z(1, 0, kg) + coef_xyz(38) = coef_xyz(38)+coef_xy(2, 38)*pol_z(2, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(1, 39)*pol_z(1, 0, kg) + coef_xyz(39) = coef_xyz(39)+coef_xy(2, 39)*pol_z(2, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(1, 40)*pol_z(1, 0, kg) + coef_xyz(40) = coef_xyz(40)+coef_xy(2, 40)*pol_z(2, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(1, 41)*pol_z(1, 0, kg) + coef_xyz(41) = coef_xyz(41)+coef_xy(2, 41)*pol_z(2, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(1, 42)*pol_z(1, 0, kg) + coef_xyz(42) = coef_xyz(42)+coef_xy(2, 42)*pol_z(2, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(1, 43)*pol_z(1, 0, kg) + coef_xyz(43) = coef_xyz(43)+coef_xy(2, 43)*pol_z(2, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(1, 44)*pol_z(1, 0, kg) + coef_xyz(44) = coef_xyz(44)+coef_xy(2, 44)*pol_z(2, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(1, 45)*pol_z(1, 0, kg) + coef_xyz(45) = coef_xyz(45)+coef_xy(2, 45)*pol_z(2, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(1, 46)*pol_z(1, 0, kg) + coef_xyz(46) = coef_xyz(46)+coef_xy(2, 46)*pol_z(2, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(1, 47)*pol_z(1, 0, kg) + coef_xyz(47) = coef_xyz(47)+coef_xy(2, 47)*pol_z(2, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(1, 48)*pol_z(1, 0, kg) + coef_xyz(48) = coef_xyz(48)+coef_xy(2, 48)*pol_z(2, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(1, 49)*pol_z(1, 0, kg) + coef_xyz(49) = coef_xyz(49)+coef_xy(2, 49)*pol_z(2, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(1, 50)*pol_z(1, 0, kg) + coef_xyz(50) = coef_xyz(50)+coef_xy(2, 50)*pol_z(2, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(1, 51)*pol_z(1, 0, kg) + coef_xyz(51) = coef_xyz(51)+coef_xy(2, 51)*pol_z(2, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(1, 52)*pol_z(1, 0, kg) + coef_xyz(52) = coef_xyz(52)+coef_xy(2, 52)*pol_z(2, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(1, 53)*pol_z(1, 0, kg) + coef_xyz(53) = coef_xyz(53)+coef_xy(2, 53)*pol_z(2, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(1, 54)*pol_z(1, 0, kg) + coef_xyz(54) = coef_xyz(54)+coef_xy(2, 54)*pol_z(2, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(1, 55)*pol_z(1, 0, kg) + coef_xyz(55) = coef_xyz(55)+coef_xy(2, 55)*pol_z(2, 0, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(1, 1)*pol_z(1, 1, kg) + coef_xyz(56) = coef_xyz(56)+coef_xy(2, 1)*pol_z(2, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(1, 2)*pol_z(1, 1, kg) + coef_xyz(57) = coef_xyz(57)+coef_xy(2, 2)*pol_z(2, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(1, 3)*pol_z(1, 1, kg) + coef_xyz(58) = coef_xyz(58)+coef_xy(2, 3)*pol_z(2, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(1, 4)*pol_z(1, 1, kg) + coef_xyz(59) = coef_xyz(59)+coef_xy(2, 4)*pol_z(2, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(1, 5)*pol_z(1, 1, kg) + coef_xyz(60) = coef_xyz(60)+coef_xy(2, 5)*pol_z(2, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(1, 6)*pol_z(1, 1, kg) + coef_xyz(61) = coef_xyz(61)+coef_xy(2, 6)*pol_z(2, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(1, 7)*pol_z(1, 1, kg) + coef_xyz(62) = coef_xyz(62)+coef_xy(2, 7)*pol_z(2, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(1, 8)*pol_z(1, 1, kg) + coef_xyz(63) = coef_xyz(63)+coef_xy(2, 8)*pol_z(2, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(1, 9)*pol_z(1, 1, kg) + coef_xyz(64) = coef_xyz(64)+coef_xy(2, 9)*pol_z(2, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(1, 11)*pol_z(1, 1, kg) + coef_xyz(65) = coef_xyz(65)+coef_xy(2, 11)*pol_z(2, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(1, 12)*pol_z(1, 1, kg) + coef_xyz(66) = coef_xyz(66)+coef_xy(2, 12)*pol_z(2, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(1, 13)*pol_z(1, 1, kg) + coef_xyz(67) = coef_xyz(67)+coef_xy(2, 13)*pol_z(2, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(1, 14)*pol_z(1, 1, kg) + coef_xyz(68) = coef_xyz(68)+coef_xy(2, 14)*pol_z(2, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(1, 15)*pol_z(1, 1, kg) + coef_xyz(69) = coef_xyz(69)+coef_xy(2, 15)*pol_z(2, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(1, 16)*pol_z(1, 1, kg) + coef_xyz(70) = coef_xyz(70)+coef_xy(2, 16)*pol_z(2, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(1, 17)*pol_z(1, 1, kg) + coef_xyz(71) = coef_xyz(71)+coef_xy(2, 17)*pol_z(2, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(1, 18)*pol_z(1, 1, kg) + coef_xyz(72) = coef_xyz(72)+coef_xy(2, 18)*pol_z(2, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(1, 20)*pol_z(1, 1, kg) + coef_xyz(73) = coef_xyz(73)+coef_xy(2, 20)*pol_z(2, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(1, 21)*pol_z(1, 1, kg) + coef_xyz(74) = coef_xyz(74)+coef_xy(2, 21)*pol_z(2, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(1, 22)*pol_z(1, 1, kg) + coef_xyz(75) = coef_xyz(75)+coef_xy(2, 22)*pol_z(2, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(1, 23)*pol_z(1, 1, kg) + coef_xyz(76) = coef_xyz(76)+coef_xy(2, 23)*pol_z(2, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(1, 24)*pol_z(1, 1, kg) + coef_xyz(77) = coef_xyz(77)+coef_xy(2, 24)*pol_z(2, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(1, 25)*pol_z(1, 1, kg) + coef_xyz(78) = coef_xyz(78)+coef_xy(2, 25)*pol_z(2, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(1, 26)*pol_z(1, 1, kg) + coef_xyz(79) = coef_xyz(79)+coef_xy(2, 26)*pol_z(2, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(1, 28)*pol_z(1, 1, kg) + coef_xyz(80) = coef_xyz(80)+coef_xy(2, 28)*pol_z(2, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(1, 29)*pol_z(1, 1, kg) + coef_xyz(81) = coef_xyz(81)+coef_xy(2, 29)*pol_z(2, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(1, 30)*pol_z(1, 1, kg) + coef_xyz(82) = coef_xyz(82)+coef_xy(2, 30)*pol_z(2, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(1, 31)*pol_z(1, 1, kg) + coef_xyz(83) = coef_xyz(83)+coef_xy(2, 31)*pol_z(2, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(1, 32)*pol_z(1, 1, kg) + coef_xyz(84) = coef_xyz(84)+coef_xy(2, 32)*pol_z(2, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(1, 33)*pol_z(1, 1, kg) + coef_xyz(85) = coef_xyz(85)+coef_xy(2, 33)*pol_z(2, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(1, 35)*pol_z(1, 1, kg) + coef_xyz(86) = coef_xyz(86)+coef_xy(2, 35)*pol_z(2, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(1, 36)*pol_z(1, 1, kg) + coef_xyz(87) = coef_xyz(87)+coef_xy(2, 36)*pol_z(2, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(1, 37)*pol_z(1, 1, kg) + coef_xyz(88) = coef_xyz(88)+coef_xy(2, 37)*pol_z(2, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(1, 38)*pol_z(1, 1, kg) + coef_xyz(89) = coef_xyz(89)+coef_xy(2, 38)*pol_z(2, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(1, 39)*pol_z(1, 1, kg) + coef_xyz(90) = coef_xyz(90)+coef_xy(2, 39)*pol_z(2, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(1, 41)*pol_z(1, 1, kg) + coef_xyz(91) = coef_xyz(91)+coef_xy(2, 41)*pol_z(2, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(1, 42)*pol_z(1, 1, kg) + coef_xyz(92) = coef_xyz(92)+coef_xy(2, 42)*pol_z(2, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(1, 43)*pol_z(1, 1, kg) + coef_xyz(93) = coef_xyz(93)+coef_xy(2, 43)*pol_z(2, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(1, 44)*pol_z(1, 1, kg) + coef_xyz(94) = coef_xyz(94)+coef_xy(2, 44)*pol_z(2, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(1, 46)*pol_z(1, 1, kg) + coef_xyz(95) = coef_xyz(95)+coef_xy(2, 46)*pol_z(2, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(1, 47)*pol_z(1, 1, kg) + coef_xyz(96) = coef_xyz(96)+coef_xy(2, 47)*pol_z(2, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(1, 48)*pol_z(1, 1, kg) + coef_xyz(97) = coef_xyz(97)+coef_xy(2, 48)*pol_z(2, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(1, 50)*pol_z(1, 1, kg) + coef_xyz(98) = coef_xyz(98)+coef_xy(2, 50)*pol_z(2, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(1, 51)*pol_z(1, 1, kg) + coef_xyz(99) = coef_xyz(99)+coef_xy(2, 51)*pol_z(2, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(1, 53)*pol_z(1, 1, kg) + coef_xyz(100) = coef_xyz(100)+coef_xy(2, 53)*pol_z(2, 1, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(1, 1)*pol_z(1, 2, kg) + coef_xyz(101) = coef_xyz(101)+coef_xy(2, 1)*pol_z(2, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(1, 2)*pol_z(1, 2, kg) + coef_xyz(102) = coef_xyz(102)+coef_xy(2, 2)*pol_z(2, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(1, 3)*pol_z(1, 2, kg) + coef_xyz(103) = coef_xyz(103)+coef_xy(2, 3)*pol_z(2, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(1, 4)*pol_z(1, 2, kg) + coef_xyz(104) = coef_xyz(104)+coef_xy(2, 4)*pol_z(2, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(1, 5)*pol_z(1, 2, kg) + coef_xyz(105) = coef_xyz(105)+coef_xy(2, 5)*pol_z(2, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(1, 6)*pol_z(1, 2, kg) + coef_xyz(106) = coef_xyz(106)+coef_xy(2, 6)*pol_z(2, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(1, 7)*pol_z(1, 2, kg) + coef_xyz(107) = coef_xyz(107)+coef_xy(2, 7)*pol_z(2, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(1, 8)*pol_z(1, 2, kg) + coef_xyz(108) = coef_xyz(108)+coef_xy(2, 8)*pol_z(2, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(1, 11)*pol_z(1, 2, kg) + coef_xyz(109) = coef_xyz(109)+coef_xy(2, 11)*pol_z(2, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(1, 12)*pol_z(1, 2, kg) + coef_xyz(110) = coef_xyz(110)+coef_xy(2, 12)*pol_z(2, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(1, 13)*pol_z(1, 2, kg) + coef_xyz(111) = coef_xyz(111)+coef_xy(2, 13)*pol_z(2, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(1, 14)*pol_z(1, 2, kg) + coef_xyz(112) = coef_xyz(112)+coef_xy(2, 14)*pol_z(2, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(1, 15)*pol_z(1, 2, kg) + coef_xyz(113) = coef_xyz(113)+coef_xy(2, 15)*pol_z(2, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(1, 16)*pol_z(1, 2, kg) + coef_xyz(114) = coef_xyz(114)+coef_xy(2, 16)*pol_z(2, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(1, 17)*pol_z(1, 2, kg) + coef_xyz(115) = coef_xyz(115)+coef_xy(2, 17)*pol_z(2, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(1, 20)*pol_z(1, 2, kg) + coef_xyz(116) = coef_xyz(116)+coef_xy(2, 20)*pol_z(2, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(1, 21)*pol_z(1, 2, kg) + coef_xyz(117) = coef_xyz(117)+coef_xy(2, 21)*pol_z(2, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(1, 22)*pol_z(1, 2, kg) + coef_xyz(118) = coef_xyz(118)+coef_xy(2, 22)*pol_z(2, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(1, 23)*pol_z(1, 2, kg) + coef_xyz(119) = coef_xyz(119)+coef_xy(2, 23)*pol_z(2, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(1, 24)*pol_z(1, 2, kg) + coef_xyz(120) = coef_xyz(120)+coef_xy(2, 24)*pol_z(2, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(1, 25)*pol_z(1, 2, kg) + coef_xyz(121) = coef_xyz(121)+coef_xy(2, 25)*pol_z(2, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(1, 28)*pol_z(1, 2, kg) + coef_xyz(122) = coef_xyz(122)+coef_xy(2, 28)*pol_z(2, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(1, 29)*pol_z(1, 2, kg) + coef_xyz(123) = coef_xyz(123)+coef_xy(2, 29)*pol_z(2, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(1, 30)*pol_z(1, 2, kg) + coef_xyz(124) = coef_xyz(124)+coef_xy(2, 30)*pol_z(2, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(1, 31)*pol_z(1, 2, kg) + coef_xyz(125) = coef_xyz(125)+coef_xy(2, 31)*pol_z(2, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(1, 32)*pol_z(1, 2, kg) + coef_xyz(126) = coef_xyz(126)+coef_xy(2, 32)*pol_z(2, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(1, 35)*pol_z(1, 2, kg) + coef_xyz(127) = coef_xyz(127)+coef_xy(2, 35)*pol_z(2, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(1, 36)*pol_z(1, 2, kg) + coef_xyz(128) = coef_xyz(128)+coef_xy(2, 36)*pol_z(2, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(1, 37)*pol_z(1, 2, kg) + coef_xyz(129) = coef_xyz(129)+coef_xy(2, 37)*pol_z(2, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(1, 38)*pol_z(1, 2, kg) + coef_xyz(130) = coef_xyz(130)+coef_xy(2, 38)*pol_z(2, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(1, 41)*pol_z(1, 2, kg) + coef_xyz(131) = coef_xyz(131)+coef_xy(2, 41)*pol_z(2, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(1, 42)*pol_z(1, 2, kg) + coef_xyz(132) = coef_xyz(132)+coef_xy(2, 42)*pol_z(2, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(1, 43)*pol_z(1, 2, kg) + coef_xyz(133) = coef_xyz(133)+coef_xy(2, 43)*pol_z(2, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(1, 46)*pol_z(1, 2, kg) + coef_xyz(134) = coef_xyz(134)+coef_xy(2, 46)*pol_z(2, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(1, 47)*pol_z(1, 2, kg) + coef_xyz(135) = coef_xyz(135)+coef_xy(2, 47)*pol_z(2, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(1, 50)*pol_z(1, 2, kg) + coef_xyz(136) = coef_xyz(136)+coef_xy(2, 50)*pol_z(2, 2, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(1, 1)*pol_z(1, 3, kg) + coef_xyz(137) = coef_xyz(137)+coef_xy(2, 1)*pol_z(2, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(1, 2)*pol_z(1, 3, kg) + coef_xyz(138) = coef_xyz(138)+coef_xy(2, 2)*pol_z(2, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(1, 3)*pol_z(1, 3, kg) + coef_xyz(139) = coef_xyz(139)+coef_xy(2, 3)*pol_z(2, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(1, 4)*pol_z(1, 3, kg) + coef_xyz(140) = coef_xyz(140)+coef_xy(2, 4)*pol_z(2, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(1, 5)*pol_z(1, 3, kg) + coef_xyz(141) = coef_xyz(141)+coef_xy(2, 5)*pol_z(2, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(1, 6)*pol_z(1, 3, kg) + coef_xyz(142) = coef_xyz(142)+coef_xy(2, 6)*pol_z(2, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(1, 7)*pol_z(1, 3, kg) + coef_xyz(143) = coef_xyz(143)+coef_xy(2, 7)*pol_z(2, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(1, 11)*pol_z(1, 3, kg) + coef_xyz(144) = coef_xyz(144)+coef_xy(2, 11)*pol_z(2, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(1, 12)*pol_z(1, 3, kg) + coef_xyz(145) = coef_xyz(145)+coef_xy(2, 12)*pol_z(2, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(1, 13)*pol_z(1, 3, kg) + coef_xyz(146) = coef_xyz(146)+coef_xy(2, 13)*pol_z(2, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(1, 14)*pol_z(1, 3, kg) + coef_xyz(147) = coef_xyz(147)+coef_xy(2, 14)*pol_z(2, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(1, 15)*pol_z(1, 3, kg) + coef_xyz(148) = coef_xyz(148)+coef_xy(2, 15)*pol_z(2, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(1, 16)*pol_z(1, 3, kg) + coef_xyz(149) = coef_xyz(149)+coef_xy(2, 16)*pol_z(2, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(1, 20)*pol_z(1, 3, kg) + coef_xyz(150) = coef_xyz(150)+coef_xy(2, 20)*pol_z(2, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(1, 21)*pol_z(1, 3, kg) + coef_xyz(151) = coef_xyz(151)+coef_xy(2, 21)*pol_z(2, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(1, 22)*pol_z(1, 3, kg) + coef_xyz(152) = coef_xyz(152)+coef_xy(2, 22)*pol_z(2, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(1, 23)*pol_z(1, 3, kg) + coef_xyz(153) = coef_xyz(153)+coef_xy(2, 23)*pol_z(2, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(1, 24)*pol_z(1, 3, kg) + coef_xyz(154) = coef_xyz(154)+coef_xy(2, 24)*pol_z(2, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(1, 28)*pol_z(1, 3, kg) + coef_xyz(155) = coef_xyz(155)+coef_xy(2, 28)*pol_z(2, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(1, 29)*pol_z(1, 3, kg) + coef_xyz(156) = coef_xyz(156)+coef_xy(2, 29)*pol_z(2, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(1, 30)*pol_z(1, 3, kg) + coef_xyz(157) = coef_xyz(157)+coef_xy(2, 30)*pol_z(2, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(1, 31)*pol_z(1, 3, kg) + coef_xyz(158) = coef_xyz(158)+coef_xy(2, 31)*pol_z(2, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(1, 35)*pol_z(1, 3, kg) + coef_xyz(159) = coef_xyz(159)+coef_xy(2, 35)*pol_z(2, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(1, 36)*pol_z(1, 3, kg) + coef_xyz(160) = coef_xyz(160)+coef_xy(2, 36)*pol_z(2, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(1, 37)*pol_z(1, 3, kg) + coef_xyz(161) = coef_xyz(161)+coef_xy(2, 37)*pol_z(2, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(1, 41)*pol_z(1, 3, kg) + coef_xyz(162) = coef_xyz(162)+coef_xy(2, 41)*pol_z(2, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(1, 42)*pol_z(1, 3, kg) + coef_xyz(163) = coef_xyz(163)+coef_xy(2, 42)*pol_z(2, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(1, 46)*pol_z(1, 3, kg) + coef_xyz(164) = coef_xyz(164)+coef_xy(2, 46)*pol_z(2, 3, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(1, 1)*pol_z(1, 4, kg) + coef_xyz(165) = coef_xyz(165)+coef_xy(2, 1)*pol_z(2, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(1, 2)*pol_z(1, 4, kg) + coef_xyz(166) = coef_xyz(166)+coef_xy(2, 2)*pol_z(2, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(1, 3)*pol_z(1, 4, kg) + coef_xyz(167) = coef_xyz(167)+coef_xy(2, 3)*pol_z(2, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(1, 4)*pol_z(1, 4, kg) + coef_xyz(168) = coef_xyz(168)+coef_xy(2, 4)*pol_z(2, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(1, 5)*pol_z(1, 4, kg) + coef_xyz(169) = coef_xyz(169)+coef_xy(2, 5)*pol_z(2, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(1, 6)*pol_z(1, 4, kg) + coef_xyz(170) = coef_xyz(170)+coef_xy(2, 6)*pol_z(2, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(1, 11)*pol_z(1, 4, kg) + coef_xyz(171) = coef_xyz(171)+coef_xy(2, 11)*pol_z(2, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(1, 12)*pol_z(1, 4, kg) + coef_xyz(172) = coef_xyz(172)+coef_xy(2, 12)*pol_z(2, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(1, 13)*pol_z(1, 4, kg) + coef_xyz(173) = coef_xyz(173)+coef_xy(2, 13)*pol_z(2, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(1, 14)*pol_z(1, 4, kg) + coef_xyz(174) = coef_xyz(174)+coef_xy(2, 14)*pol_z(2, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(1, 15)*pol_z(1, 4, kg) + coef_xyz(175) = coef_xyz(175)+coef_xy(2, 15)*pol_z(2, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(1, 20)*pol_z(1, 4, kg) + coef_xyz(176) = coef_xyz(176)+coef_xy(2, 20)*pol_z(2, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(1, 21)*pol_z(1, 4, kg) + coef_xyz(177) = coef_xyz(177)+coef_xy(2, 21)*pol_z(2, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(1, 22)*pol_z(1, 4, kg) + coef_xyz(178) = coef_xyz(178)+coef_xy(2, 22)*pol_z(2, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(1, 23)*pol_z(1, 4, kg) + coef_xyz(179) = coef_xyz(179)+coef_xy(2, 23)*pol_z(2, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(1, 28)*pol_z(1, 4, kg) + coef_xyz(180) = coef_xyz(180)+coef_xy(2, 28)*pol_z(2, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(1, 29)*pol_z(1, 4, kg) + coef_xyz(181) = coef_xyz(181)+coef_xy(2, 29)*pol_z(2, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(1, 30)*pol_z(1, 4, kg) + coef_xyz(182) = coef_xyz(182)+coef_xy(2, 30)*pol_z(2, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(1, 35)*pol_z(1, 4, kg) + coef_xyz(183) = coef_xyz(183)+coef_xy(2, 35)*pol_z(2, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(1, 36)*pol_z(1, 4, kg) + coef_xyz(184) = coef_xyz(184)+coef_xy(2, 36)*pol_z(2, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(1, 41)*pol_z(1, 4, kg) + coef_xyz(185) = coef_xyz(185)+coef_xy(2, 41)*pol_z(2, 4, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(1, 1)*pol_z(1, 5, kg) + coef_xyz(186) = coef_xyz(186)+coef_xy(2, 1)*pol_z(2, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(1, 2)*pol_z(1, 5, kg) + coef_xyz(187) = coef_xyz(187)+coef_xy(2, 2)*pol_z(2, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(1, 3)*pol_z(1, 5, kg) + coef_xyz(188) = coef_xyz(188)+coef_xy(2, 3)*pol_z(2, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(1, 4)*pol_z(1, 5, kg) + coef_xyz(189) = coef_xyz(189)+coef_xy(2, 4)*pol_z(2, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(1, 5)*pol_z(1, 5, kg) + coef_xyz(190) = coef_xyz(190)+coef_xy(2, 5)*pol_z(2, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(1, 11)*pol_z(1, 5, kg) + coef_xyz(191) = coef_xyz(191)+coef_xy(2, 11)*pol_z(2, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(1, 12)*pol_z(1, 5, kg) + coef_xyz(192) = coef_xyz(192)+coef_xy(2, 12)*pol_z(2, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(1, 13)*pol_z(1, 5, kg) + coef_xyz(193) = coef_xyz(193)+coef_xy(2, 13)*pol_z(2, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(1, 14)*pol_z(1, 5, kg) + coef_xyz(194) = coef_xyz(194)+coef_xy(2, 14)*pol_z(2, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(1, 20)*pol_z(1, 5, kg) + coef_xyz(195) = coef_xyz(195)+coef_xy(2, 20)*pol_z(2, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(1, 21)*pol_z(1, 5, kg) + coef_xyz(196) = coef_xyz(196)+coef_xy(2, 21)*pol_z(2, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(1, 22)*pol_z(1, 5, kg) + coef_xyz(197) = coef_xyz(197)+coef_xy(2, 22)*pol_z(2, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(1, 28)*pol_z(1, 5, kg) + coef_xyz(198) = coef_xyz(198)+coef_xy(2, 28)*pol_z(2, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(1, 29)*pol_z(1, 5, kg) + coef_xyz(199) = coef_xyz(199)+coef_xy(2, 29)*pol_z(2, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(1, 35)*pol_z(1, 5, kg) + coef_xyz(200) = coef_xyz(200)+coef_xy(2, 35)*pol_z(2, 5, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(1, 1)*pol_z(1, 6, kg) + coef_xyz(201) = coef_xyz(201)+coef_xy(2, 1)*pol_z(2, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(1, 2)*pol_z(1, 6, kg) + coef_xyz(202) = coef_xyz(202)+coef_xy(2, 2)*pol_z(2, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(1, 3)*pol_z(1, 6, kg) + coef_xyz(203) = coef_xyz(203)+coef_xy(2, 3)*pol_z(2, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(1, 4)*pol_z(1, 6, kg) + coef_xyz(204) = coef_xyz(204)+coef_xy(2, 4)*pol_z(2, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(1, 11)*pol_z(1, 6, kg) + coef_xyz(205) = coef_xyz(205)+coef_xy(2, 11)*pol_z(2, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(1, 12)*pol_z(1, 6, kg) + coef_xyz(206) = coef_xyz(206)+coef_xy(2, 12)*pol_z(2, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(1, 13)*pol_z(1, 6, kg) + coef_xyz(207) = coef_xyz(207)+coef_xy(2, 13)*pol_z(2, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(1, 20)*pol_z(1, 6, kg) + coef_xyz(208) = coef_xyz(208)+coef_xy(2, 20)*pol_z(2, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(1, 21)*pol_z(1, 6, kg) + coef_xyz(209) = coef_xyz(209)+coef_xy(2, 21)*pol_z(2, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(1, 28)*pol_z(1, 6, kg) + coef_xyz(210) = coef_xyz(210)+coef_xy(2, 28)*pol_z(2, 6, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(1, 1)*pol_z(1, 7, kg) + coef_xyz(211) = coef_xyz(211)+coef_xy(2, 1)*pol_z(2, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(1, 2)*pol_z(1, 7, kg) + coef_xyz(212) = coef_xyz(212)+coef_xy(2, 2)*pol_z(2, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(1, 3)*pol_z(1, 7, kg) + coef_xyz(213) = coef_xyz(213)+coef_xy(2, 3)*pol_z(2, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(1, 11)*pol_z(1, 7, kg) + coef_xyz(214) = coef_xyz(214)+coef_xy(2, 11)*pol_z(2, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(1, 12)*pol_z(1, 7, kg) + coef_xyz(215) = coef_xyz(215)+coef_xy(2, 12)*pol_z(2, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(1, 20)*pol_z(1, 7, kg) + coef_xyz(216) = coef_xyz(216)+coef_xy(2, 20)*pol_z(2, 7, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(1, 1)*pol_z(1, 8, kg) + coef_xyz(217) = coef_xyz(217)+coef_xy(2, 1)*pol_z(2, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(1, 2)*pol_z(1, 8, kg) + coef_xyz(218) = coef_xyz(218)+coef_xy(2, 2)*pol_z(2, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(1, 11)*pol_z(1, 8, kg) + coef_xyz(219) = coef_xyz(219)+coef_xy(2, 11)*pol_z(2, 8, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(1, 1)*pol_z(1, 9, kg) + coef_xyz(220) = coef_xyz(220)+coef_xy(2, 1)*pol_z(2, 9, kg) + END DO END SUBROUTINE integrate_core_9 diff --git a/src/hfx_get_pmax_val.f90 b/src/hfx_get_pmax_val.f90 index 3c1eb77442..7273ab6ebd 100644 --- a/src/hfx_get_pmax_val.f90 +++ b/src/hfx_get_pmax_val.f90 @@ -22,209 +22,207 @@ iset, jset, kset, lset, & pmax_val, swap_id) - REAL(dp), DIMENSION(:,:), POINTER :: ptr_p_1, ptr_p_2, ptr_p_3, ptr_p_4 - INTEGER, INTENT(IN) :: iset, jset, kset, lset + REAL(dp), DIMENSION(:, :), POINTER :: ptr_p_1, ptr_p_2, ptr_p_3, ptr_p_4 + INTEGER, INTENT(IN) :: iset, jset, kset, lset - REAL(dp), INTENT(OUT) :: pmax_val - INTEGER, INTENT(IN) :: swap_id + REAL(dp), INTENT(OUT) :: pmax_val + INTEGER, INTENT(IN) :: swap_id - REAL(dp) :: pmax_1, pmax_2, pmax_3, pmax_4 + REAL(dp) :: pmax_1, pmax_2, pmax_3, pmax_4 - - - SELECT CASE(swap_id) - CASE (0) + SELECT CASE (swap_id) + CASE (0) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (1) + CASE (1) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (2) + CASE (2) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (3) + CASE (3) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (4) + CASE (4) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (5) + CASE (5) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (6) + CASE (6) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (7) + CASE (7) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (8) + CASE (8) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (9) + CASE (9) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (10) + CASE (10) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (11) + CASE (11) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (12) + CASE (12) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (13) + CASE (13) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (14) + CASE (14) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (15) + CASE (15) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) pmax_val = MAX(pmax_1, pmax_2, pmax_3, pmax_4) - CASE (16) + CASE (16) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (17) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (17) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (18) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (18) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (19) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (19) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (20) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (20) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (21) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (21) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (22) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (22) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (23) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (23) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(kset, jset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (24) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (24) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (25) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (25) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (26) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (26) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (27) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (27) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(lset, iset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (28) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (28) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (29) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (29) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(lset, jset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (30) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (30) pmax_1 = ptr_p_1(kset, iset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - CASE (31) + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + CASE (31) pmax_1 = ptr_p_1(iset, kset) pmax_2 = ptr_p_2(jset, lset) pmax_3 = ptr_p_3(iset, lset) pmax_4 = ptr_p_4(jset, kset) - pmax_val = MAX(pmax_1 + pmax_2, pmax_3 + pmax_4) - END SELECT + pmax_val = MAX(pmax_1+pmax_2, pmax_3+pmax_4) + END SELECT END SUBROUTINE get_pmax_val diff --git a/src/prep.f90 b/src/prep.f90 index 79cf3d69a5..0e9b745a78 100644 --- a/src/prep.f90 +++ b/src/prep.f90 @@ -6,92 +6,91 @@ ! exp( -a*(x+d)**2)=exp(-a*x**2)*(-2*a*x*d)*exp(-a*d**2) ! exp(-2*a*(x+d)*d)=exp(-2*a*x*d)*exp(-2*a*d**2) - iaxis=3 - t_exp_1=EXP(-zetp*dr(iaxis)**2) - t_exp_2=t_exp_1**2 - t_exp_min_1=EXP(-zetp*(+dr(iaxis)- roffset(iaxis))**2) - t_exp_min_2=EXP(-2*zetp*(+dr(iaxis)- roffset(iaxis))*(-dr(iaxis))) - t_exp_plus_1=EXP(-zetp*( - roffset(iaxis))**2) - t_exp_plus_2=EXP(-2*zetp*( - roffset(iaxis))*(+dr(iaxis))) - DO ig=0,lb_cube(iaxis),-1 - rpg = REAL(ig,dp)*dr(iaxis) - roffset(iaxis) - t_exp_min_1=t_exp_min_1*t_exp_min_2*t_exp_1 - t_exp_min_2=t_exp_min_2*t_exp_2 - pg = t_exp_min_1 - ! pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_z(1,icoef,ig)=pg - pg=pg*(rpg) - ENDDO + iaxis = 3 + t_exp_1 = EXP(-zetp*dr(iaxis)**2) + t_exp_2 = t_exp_1**2 + t_exp_min_1 = EXP(-zetp*(+dr(iaxis)-roffset(iaxis))**2) + t_exp_min_2 = EXP(-2*zetp*(+dr(iaxis)-roffset(iaxis))*(-dr(iaxis))) + t_exp_plus_1 = EXP(-zetp*(-roffset(iaxis))**2) + t_exp_plus_2 = EXP(-2*zetp*(-roffset(iaxis))*(+dr(iaxis))) + DO ig = 0, lb_cube(iaxis), -1 + rpg = REAL(ig, dp)*dr(iaxis)-roffset(iaxis) + t_exp_min_1 = t_exp_min_1*t_exp_min_2*t_exp_1 + t_exp_min_2 = t_exp_min_2*t_exp_2 + pg = t_exp_min_1 + ! pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_z(1, icoef, ig) = pg + pg = pg*(rpg) + ENDDO - rpg = REAL(1-ig,dp)*dr(iaxis) - roffset(iaxis) - t_exp_plus_1=t_exp_plus_1*t_exp_plus_2*t_exp_1 - t_exp_plus_2=t_exp_plus_2*t_exp_2 - pg = t_exp_plus_1 - ! pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_z(2,icoef,ig)=pg - pg=pg*(rpg) - ENDDO + rpg = REAL(1-ig, dp)*dr(iaxis)-roffset(iaxis) + t_exp_plus_1 = t_exp_plus_1*t_exp_plus_2*t_exp_1 + t_exp_plus_2 = t_exp_plus_2*t_exp_2 + pg = t_exp_plus_1 + ! pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_z(2, icoef, ig) = pg + pg = pg*(rpg) + ENDDO ENDDO - iaxis=2 - t_exp_1=EXP(-zetp*dr(iaxis)**2) - t_exp_2=t_exp_1**2 - t_exp_min_1=EXP(-zetp*(+dr(iaxis)- roffset(iaxis))**2) - t_exp_min_2=EXP(-2*zetp*(+dr(iaxis)- roffset(iaxis))*(-dr(iaxis))) - t_exp_plus_1=EXP(-zetp*( - roffset(iaxis))**2) - t_exp_plus_2=EXP(-2*zetp*( - roffset(iaxis))*(+dr(iaxis))) - DO ig=0,lb_cube(iaxis),-1 - rpg = REAL(ig,dp)*dr(iaxis) - roffset(iaxis) - t_exp_min_1=t_exp_min_1*t_exp_min_2*t_exp_1 - t_exp_min_2=t_exp_min_2*t_exp_2 - pg = t_exp_min_1 - ! pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_y(1,icoef,ig)=pg - pg=pg*(rpg) - ENDDO + iaxis = 2 + t_exp_1 = EXP(-zetp*dr(iaxis)**2) + t_exp_2 = t_exp_1**2 + t_exp_min_1 = EXP(-zetp*(+dr(iaxis)-roffset(iaxis))**2) + t_exp_min_2 = EXP(-2*zetp*(+dr(iaxis)-roffset(iaxis))*(-dr(iaxis))) + t_exp_plus_1 = EXP(-zetp*(-roffset(iaxis))**2) + t_exp_plus_2 = EXP(-2*zetp*(-roffset(iaxis))*(+dr(iaxis))) + DO ig = 0, lb_cube(iaxis), -1 + rpg = REAL(ig, dp)*dr(iaxis)-roffset(iaxis) + t_exp_min_1 = t_exp_min_1*t_exp_min_2*t_exp_1 + t_exp_min_2 = t_exp_min_2*t_exp_2 + pg = t_exp_min_1 + ! pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_y(1, icoef, ig) = pg + pg = pg*(rpg) + ENDDO - rpg = REAL(1-ig,dp)*dr(iaxis) - roffset(iaxis) - t_exp_plus_1=t_exp_plus_1*t_exp_plus_2*t_exp_1 - t_exp_plus_2=t_exp_plus_2*t_exp_2 - pg = t_exp_plus_1 - ! pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_y(2,icoef,ig)=pg - pg=pg*(rpg) - ENDDO + rpg = REAL(1-ig, dp)*dr(iaxis)-roffset(iaxis) + t_exp_plus_1 = t_exp_plus_1*t_exp_plus_2*t_exp_1 + t_exp_plus_2 = t_exp_plus_2*t_exp_2 + pg = t_exp_plus_1 + ! pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_y(2, icoef, ig) = pg + pg = pg*(rpg) + ENDDO ENDDO - iaxis=1 - t_exp_1=EXP(-zetp*dr(iaxis)**2) - t_exp_2=t_exp_1**2 - t_exp_min_1=EXP(-zetp*(+dr(iaxis)- roffset(iaxis))**2) - t_exp_min_2=EXP(-2*zetp*(+dr(iaxis)- roffset(iaxis))*(-dr(iaxis))) - t_exp_plus_1=EXP(-zetp*( - roffset(iaxis))**2) - t_exp_plus_2=EXP(-2*zetp*( - roffset(iaxis))*(+dr(iaxis))) - DO ig=0,lb_cube(1),-1 + iaxis = 1 + t_exp_1 = EXP(-zetp*dr(iaxis)**2) + t_exp_2 = t_exp_1**2 + t_exp_min_1 = EXP(-zetp*(+dr(iaxis)-roffset(iaxis))**2) + t_exp_min_2 = EXP(-2*zetp*(+dr(iaxis)-roffset(iaxis))*(-dr(iaxis))) + t_exp_plus_1 = EXP(-zetp*(-roffset(iaxis))**2) + t_exp_plus_2 = EXP(-2*zetp*(-roffset(iaxis))*(+dr(iaxis))) + DO ig = 0, lb_cube(1), -1 - rpg = REAL(ig,dp)*dr(1) - roffset(1) - t_exp_min_1=t_exp_min_1*t_exp_min_2*t_exp_1 - t_exp_min_2=t_exp_min_2*t_exp_2 - pg = t_exp_min_1 - !pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_x(icoef,ig)=pg - pg=pg*(rpg) - ENDDO + rpg = REAL(ig, dp)*dr(1)-roffset(1) + t_exp_min_1 = t_exp_min_1*t_exp_min_2*t_exp_1 + t_exp_min_2 = t_exp_min_2*t_exp_2 + pg = t_exp_min_1 + !pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_x(icoef, ig) = pg + pg = pg*(rpg) + ENDDO - rpg = REAL(1-ig,dp)*dr(1) - roffset(1) - t_exp_plus_1=t_exp_plus_1*t_exp_plus_2*t_exp_1 - t_exp_plus_2=t_exp_plus_2*t_exp_2 - pg = t_exp_plus_1 - ! pg = EXP(-zetp*rpg**2) - DO icoef=0,lp - pol_x(icoef,1-ig)=pg - pg=pg*(rpg) - ENDDO + rpg = REAL(1-ig, dp)*dr(1)-roffset(1) + t_exp_plus_1 = t_exp_plus_1*t_exp_plus_2*t_exp_1 + t_exp_plus_2 = t_exp_plus_2*t_exp_2 + pg = t_exp_plus_1 + ! pg = EXP(-zetp*rpg**2) + DO icoef = 0, lp + pol_x(icoef, 1-ig) = pg + pg = pg*(rpg) + ENDDO ENDDO -