69 CHARACTER(CHRLEN) :: RCSIdentString = &
70 '$RCSfile: RFLU_ModWeights.F90,v $ $Revision: 1.16 $'
112 INTEGER,
INTENT(IN) :: orderinput
113 TYPE(t_patch),
POINTER :: ppatch
114 TYPE(t_region
),
POINTER :: pregion
120 INTEGER :: errorflag,ifl,
order
122 TYPE(t_grid),
POINTER :: pgrid
128 global => pregion%global
131 'RFLU_ModWeights.F90')
133 IF ( global%myProcid == masterproc .AND. &
134 global%verbLevel > verbose_none )
THEN
135 WRITE(stdout,
'(A,1X,A)') solver_name, &
136 'Creating boundary face-to-cell weights...'
143 pgrid => pregion%grid
161 SELECT CASE (
order )
168 IF ( ppatch%bcType /= bc_virtual )
THEN
169 SELECT CASE ( pregion%mixtInput%dimens )
172 DO ifl = 1,ppatch%nBFaces
173 ALLOCATE(ppatch%bf2cs(ifl)%xyzMoms(xyz_mom_11:xyz_mom_33), &
175 global%error = errorflag
176 IF ( global%error /= err_none )
THEN
177 CALL
errorstop(global,err_allocate,__line__, &
178 'pPatch%bf2cs%xyzMoms')
182 DO ifl = 1,ppatch%nBFaces
183 ALLOCATE(ppatch%bf2cs(ifl)%xyzMoms(xyz_mom_11:xyz_mom_44), &
185 global%error = errorflag
186 IF ( global%error /= err_none )
THEN
187 CALL
errorstop(global,err_allocate,__line__, &
188 'pPatch%bf2cs%xyzMoms')
192 CALL
errorstop(global,err_reached_default,__line__)
201 CALL
errorstop(global,err_reached_default,__line__)
208 IF ( global%myProcid == masterproc .AND. &
209 global%verbLevel > verbose_none )
THEN
210 WRITE(stdout,
'(A,1X,A)') solver_name, &
211 'Creating boundary face-to-cell weights done.'
252 INTEGER,
INTENT(IN) ::
order
253 TYPE(t_patch),
POINTER :: ppatch
254 TYPE(t_region
),
POINTER :: pregion
267 global => pregion%global
270 'RFLU_ModWeights.F90')
276 pmixtinput => pregion%mixtInput
282 SELECT CASE ( pmixtinput%stencilDimensBFaces )
287 CALL
errorstop(global,err_reached_default,__line__)
332 INTEGER,
INTENT(IN) ::
order
333 TYPE(t_region
),
POINTER :: pregion
339 INTEGER :: errorflag,icg
340 TYPE(t_grid),
POINTER :: pgrid
347 global => pregion%global
350 'RFLU_ModWeights.F90')
352 IF ( global%myProcid == masterproc .AND. &
353 global%verbLevel > verbose_none )
THEN
354 WRITE(stdout,
'(A,1X,A)') solver_name, &
355 'Creating cell-to-cell weights...'
362 pgrid => pregion%grid
374 SELECT CASE (
order )
381 SELECT CASE ( pregion%mixtInput%dimens )
384 DO icg = 1,pgrid%nCellsTot
385 ALLOCATE(pgrid%c2cs(icg)%xyzMoms(xyz_mom_11:xyz_mom_33), &
387 global%error = errorflag
388 IF ( global%error /= err_none )
THEN
389 CALL
errorstop(global,err_allocate,__line__, &
390 'pGrid%c2cs%xyzMoms')
394 DO icg = 1,pgrid%nCellsTot
395 ALLOCATE(pgrid%c2cs(icg)%xyzMoms(xyz_mom_11:xyz_mom_44), &
397 global%error = errorflag
398 IF ( global%error /= err_none )
THEN
399 CALL
errorstop(global,err_allocate,__line__, &
400 'pGrid%c2cs%xyzMoms')
404 CALL
errorstop(global,err_reached_default,__line__)
412 CALL
errorstop(global,err_reached_default,__line__)
419 IF ( global%myProcid == masterproc .AND. &
420 global%verbLevel > verbose_none )
THEN
421 WRITE(stdout,
'(A,1X,A)') solver_name, &
422 'Creating cell-to-cell weights done.'
464 INTEGER,
INTENT(IN) ::
order
465 TYPE(t_region
),
POINTER :: pregion
478 global => pregion%global
481 'RFLU_ModWeights.F90')
487 pmixtinput => pregion%mixtInput
493 SELECT CASE ( pmixtinput%stencilDimensCells )
498 CALL
errorstop(global,err_reached_default,__line__)
544 INTEGER,
INTENT(IN) :: orderinput
545 TYPE(t_region
),
POINTER :: pregion
551 INTEGER :: errorflag,ifg,
order
553 TYPE(t_grid),
POINTER :: pgrid
559 global => pregion%global
562 'RFLU_ModWeights.F90')
564 IF ( global%myProcid == masterproc .AND. &
565 global%verbLevel > verbose_none )
THEN
566 WRITE(stdout,
'(A,1X,A)') solver_name, &
567 'Creating face-to-cell weights...'
574 pgrid => pregion%grid
592 SELECT CASE (
order )
599 SELECT CASE ( pregion%mixtInput%dimens )
602 DO ifg = 1,pgrid%nFaces
603 ALLOCATE(pgrid%f2cs(ifg)%xyzMoms(xyz_mom_11:xyz_mom_33), &
605 global%error = errorflag
606 IF ( global%error /= err_none )
THEN
607 CALL
errorstop(global,err_allocate,__line__, &
608 'pGrid%f2cs%xyzMoms')
612 DO ifg = 1,pgrid%nFaces
613 ALLOCATE(pgrid%f2cs(ifg)%xyzMoms(xyz_mom_11:xyz_mom_44), &
615 global%error = errorflag
616 IF ( global%error /= err_none )
THEN
617 CALL
errorstop(global,err_allocate,__line__, &
618 'pGrid%f2cs%xyzMoms')
622 CALL
errorstop(global,err_reached_default,__line__)
630 CALL
errorstop(global,err_reached_default,__line__)
637 IF ( global%myProcid == masterproc .AND. &
638 global%verbLevel > verbose_none )
THEN
639 WRITE(stdout,
'(A,1X,A)') solver_name, &
640 'Creating face-to-cell weights done.'
681 INTEGER,
INTENT(IN) ::
order
682 TYPE(t_region
),
POINTER :: pregion
695 global => pregion%global
698 'RFLU_ModWeights.F90')
704 pmixtinput => pregion%mixtInput
710 SELECT CASE ( pmixtinput%stencilDimensFaces )
715 CALL
errorstop(global,err_reached_default,__line__)
760 INTEGER,
INTENT(IN) :: orderinput
761 TYPE(t_patch),
POINTER :: ppatch
762 TYPE(t_region
),
POINTER :: pregion
768 INTEGER :: errorflag,nmembs,icg,ifl,isl,
order
769 REAL(RFREAL),
DIMENSION(:,:),
ALLOCATABLE :: dr
771 TYPE(t_grid),
POINTER :: pgrid
777 global => pregion%global
780 'RFLU_ModWeights.F90')
782 IF ( global%myProcid == masterproc .AND. &
783 global%verbLevel > verbose_none )
THEN
784 WRITE(stdout,
'(A,1X,A)') solver_name, &
785 'Computing boundary face-to-cell weights...'
792 pgrid => pregion%grid
804 SELECT CASE (
order )
811 IF ( ppatch%bcType /= bc_virtual )
THEN
812 SELECT CASE ( pregion%mixtInput%dimens )
815 DO ifl = 1,ppatch%nBFaces
816 nmembs = ppatch%bf2cs(ifl)%nCellMembs
818 ALLOCATE(dr(xcoord:ycoord,nmembs),stat=errorflag)
819 global%error = errorflag
820 IF ( global%error /= err_none )
THEN
821 CALL
errorstop(global,err_allocate,__line__,
'dr')
825 icg = ppatch%bf2cs(ifl)%cellMembs(isl)
827 dr(xcoord,isl) = pgrid%cofg(xcoord,icg) &
828 - ppatch%fc(xcoord,ifl)
829 dr(ycoord,isl) = pgrid%cofg(ycoord,icg) &
830 - ppatch%fc(ycoord,ifl)
834 ppatch%bf2cs(ifl)%xyzMoms)
836 DEALLOCATE(dr,stat=errorflag)
837 global%error = errorflag
838 IF ( global%error /= err_none )
THEN
839 CALL
errorstop(global,err_deallocate,__line__,
'dr')
843 DO ifl = 1,ppatch%nBFaces
844 nmembs = ppatch%bf2cs(ifl)%nCellMembs
846 ALLOCATE(dr(xcoord:zcoord,nmembs),stat=errorflag)
847 global%error = errorflag
848 IF ( global%error /= err_none )
THEN
849 CALL
errorstop(global,err_allocate,__line__,
'dr')
853 icg = ppatch%bf2cs(ifl)%cellMembs(isl)
855 dr(xcoord,isl) = pgrid%cofg(xcoord,icg) &
856 - ppatch%fc(xcoord,ifl)
857 dr(ycoord,isl) = pgrid%cofg(ycoord,icg) &
858 - ppatch%fc(ycoord,ifl)
859 dr(zcoord,isl) = pgrid%cofg(zcoord,icg) &
860 - ppatch%fc(zcoord,ifl)
864 ppatch%bf2cs(ifl)%xyzMoms)
866 DEALLOCATE(dr,stat=errorflag)
867 global%error = errorflag
868 IF ( global%error /= err_none )
THEN
869 CALL
errorstop(global,err_deallocate,__line__,
'dr')
873 CALL
errorstop(global,err_reached_default,__line__)
882 CALL
errorstop(global,err_reached_default,__line__)
889 IF ( global%myProcid == masterproc .AND. &
890 global%verbLevel > verbose_none )
THEN
891 WRITE(stdout,
'(A,1X,A)') solver_name, &
892 'Computing boundary face-to-cell weights done.'
935 INTEGER,
INTENT(IN) ::
order
936 TYPE(t_patch),
POINTER :: ppatch
937 TYPE(t_region
),
POINTER :: pregion
950 global => pregion%global
953 'RFLU_ModWeights.F90')
959 pmixtinput => pregion%mixtInput
965 SELECT CASE ( pmixtinput%stencilDimensBFaces )
970 CALL
errorstop(global,err_reached_default,__line__)
1015 INTEGER,
INTENT(IN) ::
order
1016 TYPE(t_region
),
POINTER :: pregion
1022 INTEGER :: errorflag,nmembs,icg,icg2,isl
1023 REAL(RFREAL),
DIMENSION(:,:),
ALLOCATABLE :: dr
1024 TYPE(t_grid),
POINTER :: pgrid
1031 global => pregion%global
1034 'RFLU_ModWeights.F90')
1036 IF ( global%myProcid == masterproc .AND. &
1037 global%verbLevel > verbose_none )
THEN
1038 WRITE(stdout,
'(A,1X,A)') solver_name, &
1039 'Computing cell-to-cell weights...'
1046 pgrid => pregion%grid
1052 SELECT CASE (
order )
1059 SELECT CASE ( pregion%mixtInput%dimens )
1062 DO icg = 1,pgrid%nCellsTot
1063 nmembs = pgrid%c2cs(icg)%nCellMembs
1065 ALLOCATE(dr(xcoord:ycoord,nmembs),stat=errorflag)
1066 global%error = errorflag
1067 IF ( global%error /= err_none )
THEN
1068 CALL
errorstop(global,err_allocate,__line__,
'dr')
1072 icg2 = pgrid%c2cs(icg)%cellMembs(isl)
1074 dr(xcoord,isl) = pgrid%cofg(xcoord,icg2)-pgrid%cofg(xcoord,icg)
1075 dr(ycoord,isl) = pgrid%cofg(ycoord,icg2)-pgrid%cofg(ycoord,icg)
1079 pgrid%c2cs(icg)%xyzMoms)
1081 DEALLOCATE(dr,stat=errorflag)
1082 global%error = errorflag
1083 IF ( global%error /= err_none )
THEN
1084 CALL
errorstop(global,err_deallocate,__line__,
'dr')
1088 DO icg = 1,pgrid%nCellsTot
1089 nmembs = pgrid%c2cs(icg)%nCellMembs
1091 ALLOCATE(dr(xcoord:zcoord,nmembs),stat=errorflag)
1092 global%error = errorflag
1093 IF ( global%error /= err_none )
THEN
1094 CALL
errorstop(global,err_allocate,__line__,
'dr')
1098 icg2 = pgrid%c2cs(icg)%cellMembs(isl)
1100 dr(xcoord,isl) = pgrid%cofg(xcoord,icg2)-pgrid%cofg(xcoord,icg)
1101 dr(ycoord,isl) = pgrid%cofg(ycoord,icg2)-pgrid%cofg(ycoord,icg)
1102 dr(zcoord,isl) = pgrid%cofg(zcoord,icg2)-pgrid%cofg(zcoord,icg)
1106 pgrid%c2cs(icg)%xyzMoms)
1108 DEALLOCATE(dr,stat=errorflag)
1109 global%error = errorflag
1110 IF ( global%error /= err_none )
THEN
1111 CALL
errorstop(global,err_deallocate,__line__,
'dr')
1115 CALL
errorstop(global,err_reached_default,__line__)
1123 CALL
errorstop(global,err_reached_default,__line__)
1130 IF ( global%myProcid == masterproc .AND. &
1131 global%verbLevel > verbose_none )
THEN
1132 WRITE(stdout,
'(A,1X,A)') solver_name, &
1133 'Computing cell-to-cell weights done.'
1175 INTEGER,
INTENT(IN) ::
order
1176 TYPE(t_region
),
POINTER :: pregion
1189 global => pregion%global
1192 'RFLU_ModWeights.F90')
1198 pmixtinput => pregion%mixtInput
1204 SELECT CASE ( pmixtinput%stencilDimensCells )
1209 CALL
errorstop(global,err_reached_default,__line__)
1254 INTEGER,
INTENT(IN) :: orderinput
1255 TYPE(t_region
),
POINTER :: pregion
1261 INTEGER :: errorflag,nmembs,icg,ifg,isl,
order
1262 REAL(RFREAL),
DIMENSION(:,:),
ALLOCATABLE :: dr
1264 TYPE(t_grid),
POINTER :: pgrid
1270 global => pregion%global
1273 'RFLU_ModWeights.F90')
1275 IF ( global%myProcid == masterproc .AND. &
1276 global%verbLevel > verbose_none )
THEN
1277 WRITE(stdout,
'(A,1X,A)') solver_name, &
1278 'Computing face-to-cell weights...'
1285 pgrid => pregion%grid
1297 SELECT CASE (
order )
1309 SELECT CASE ( pregion%mixtInput%dimens )
1312 DO ifg = 1,pgrid%nFaces
1313 nmembs = pgrid%f2cs(ifg)%nCellMembs
1315 ALLOCATE(dr(xcoord:ycoord,nmembs),stat=errorflag)
1316 global%error = errorflag
1317 IF ( global%error /= err_none )
THEN
1318 CALL
errorstop(global,err_allocate,__line__,
'dr')
1322 icg = pgrid%f2cs(ifg)%cellMembs(isl)
1324 dr(xcoord,isl) = pgrid%cofg(xcoord,icg) - pgrid%fc(xcoord,ifg)
1325 dr(ycoord,isl) = pgrid%cofg(ycoord,icg) - pgrid%fc(ycoord,ifg)
1329 pgrid%f2cs(ifg)%xyzMoms)
1331 DEALLOCATE(dr,stat=errorflag)
1332 global%error = errorflag
1333 IF ( global%error /= err_none )
THEN
1334 CALL
errorstop(global,err_deallocate,__line__,
'dr')
1338 DO ifg = 1,pgrid%nFaces
1339 nmembs = pgrid%f2cs(ifg)%nCellMembs
1341 ALLOCATE(dr(xcoord:zcoord,nmembs),stat=errorflag)
1342 global%error = errorflag
1343 IF ( global%error /= err_none )
THEN
1344 CALL
errorstop(global,err_allocate,__line__,
'dr')
1348 icg = pgrid%f2cs(ifg)%cellMembs(isl)
1350 dr(xcoord,isl) = pgrid%cofg(xcoord,icg)-pgrid%fc(xcoord,ifg)
1351 dr(ycoord,isl) = pgrid%cofg(ycoord,icg)-pgrid%fc(ycoord,ifg)
1352 dr(zcoord,isl) = pgrid%cofg(zcoord,icg)-pgrid%fc(zcoord,ifg)
1356 dr,pgrid%f2cs(ifg)%xyzMoms)
1358 DEALLOCATE(dr,stat=errorflag)
1359 global%error = errorflag
1360 IF ( global%error /= err_none )
THEN
1361 CALL
errorstop(global,err_deallocate,__line__,
'dr')
1365 CALL
errorstop(global,err_reached_default,__line__)
1373 CALL
errorstop(global,err_reached_default,__line__)
1380 IF ( global%myProcid == masterproc .AND. &
1381 global%verbLevel > verbose_none )
THEN
1382 WRITE(stdout,
'(A,1X,A)') solver_name, &
1383 'Computing face-to-cell weights done.'
1424 INTEGER,
INTENT(IN) ::
order
1425 TYPE(t_region
),
POINTER :: pregion
1438 global => pregion%global
1441 'RFLU_ModWeights.F90')
1447 pmixtinput => pregion%mixtInput
1453 SELECT CASE ( pmixtinput%stencilDimensFaces )
1458 CALL
errorstop(global,err_reached_default,__line__)
1509 INTEGER,
INTENT(IN) ::
m,nmembs
1510 REAL(RFREAL),
INTENT(IN) ::
z
1511 REAL(RFREAL),
INTENT(IN) ::
x(0:nmembs-1)
1512 REAL(RFREAL),
INTENT(OUT) :: w(0:nmembs-1)
1519 INTEGER :: errorflag,
i,
j,
k,mn,
n
1520 REAL(RFREAL) :: c1,c2,c3,c4,c5
1521 REAL(RFREAL) ::
c(0:nmembs-1,0:
m)
1528 'RFLU_ModWeights.F90')
1569 IF (
j == (
i-1) )
THEN
1574 c(
i,0) = -c1*c5*
c(
i-1,0)/c2
1581 c(
j,0) = c4*
c(
j,0)/c3
1635 INTEGER,
INTENT(IN) :: nmembs
1636 REAL(RFREAL),
INTENT(INOUT) :: dr(xcoord:ycoord,nmembs)
1637 REAL(RFREAL),
INTENT(INOUT) :: xyzmoms(xyz_mom_11:xyz_mom_33)
1645 REAL(RFREAL) ::
dx,
dy,ir11,ir22,ir33,r11,r12,r13,r22,r23, &
1653 'RFLU_ModWeights.F90')
1663 xyzmoms(xyz_mom_11) = 0.0_rfreal
1665 xyzmoms(xyz_mom_12) = 0.0_rfreal
1666 xyzmoms(xyz_mom_22) = 0.0_rfreal
1668 xyzmoms(xyz_mom_13) = 0.0_rfreal
1669 xyzmoms(xyz_mom_23) = 0.0_rfreal
1670 xyzmoms(xyz_mom_33) = 0.0_rfreal
1685 xyzmoms(xyz_mom_11) = xyzmoms(xyz_mom_11) +
dx*
dx
1687 xyzmoms(xyz_mom_12) = xyzmoms(xyz_mom_12) +
dx*
dy
1688 xyzmoms(xyz_mom_22) = xyzmoms(xyz_mom_22) +
dy*
dy
1690 xyzmoms(xyz_mom_13) = xyzmoms(xyz_mom_13) + wt*
dx
1691 xyzmoms(xyz_mom_23) = xyzmoms(xyz_mom_23) + wt*
dy
1692 xyzmoms(xyz_mom_33) = xyzmoms(xyz_mom_33) + wt*wt
1695 r11 =
sqrt(xyzmoms(xyz_mom_11))
1696 ir11 = 1.0_rfreal/r11
1698 r12 = ir11*xyzmoms(xyz_mom_12)
1699 r22 =
sqrt(xyzmoms(xyz_mom_22) - r12*r12)
1700 ir22 = 1.0_rfreal/r22
1702 r13 = ir11*xyzmoms(xyz_mom_13)
1703 r23 = ir22*(xyzmoms(xyz_mom_23) - r12*r13 )
1704 r33 =
sqrt(xyzmoms(xyz_mom_33) - (r13*r13 + r23*r23))
1705 ir33 = 1.0_rfreal/r33
1711 xyzmoms(xyz_mom_11) = r11
1713 xyzmoms(xyz_mom_12) = r12
1714 xyzmoms(xyz_mom_22) = r22
1716 xyzmoms(xyz_mom_13) = r13
1717 xyzmoms(xyz_mom_23) = r23
1718 xyzmoms(xyz_mom_33) = r33
1766 INTEGER,
INTENT(IN) :: nmembs
1767 REAL(RFREAL),
INTENT(INOUT) :: dr(xcoord:zcoord,nmembs)
1768 REAL(RFREAL),
INTENT(INOUT) :: xyzmoms(xyz_mom_11:xyz_mom_44)
1776 REAL(RFREAL) ::
dx,
dy,
dz,ir11,ir22,ir33,r11,r12,r13,r14,r22,r23,r24, &
1784 'RFLU_ModWeights.F90')
1794 xyzmoms(xyz_mom_11) = 0.0_rfreal
1796 xyzmoms(xyz_mom_12) = 0.0_rfreal
1797 xyzmoms(xyz_mom_22) = 0.0_rfreal
1799 xyzmoms(xyz_mom_13) = 0.0_rfreal
1800 xyzmoms(xyz_mom_23) = 0.0_rfreal
1801 xyzmoms(xyz_mom_33) = 0.0_rfreal
1803 xyzmoms(xyz_mom_14) = 0.0_rfreal
1804 xyzmoms(xyz_mom_24) = 0.0_rfreal
1805 xyzmoms(xyz_mom_34) = 0.0_rfreal
1806 xyzmoms(xyz_mom_44) = 0.0_rfreal
1823 xyzmoms(xyz_mom_11) = xyzmoms(xyz_mom_11) +
dx*
dx
1825 xyzmoms(xyz_mom_12) = xyzmoms(xyz_mom_12) +
dx*
dy
1826 xyzmoms(xyz_mom_22) = xyzmoms(xyz_mom_22) +
dy*
dy
1828 xyzmoms(xyz_mom_13) = xyzmoms(xyz_mom_13) +
dx*
dz
1829 xyzmoms(xyz_mom_23) = xyzmoms(xyz_mom_23) +
dy*
dz
1830 xyzmoms(xyz_mom_33) = xyzmoms(xyz_mom_33) +
dz*
dz
1832 xyzmoms(xyz_mom_14) = xyzmoms(xyz_mom_14) + wt*
dx
1833 xyzmoms(xyz_mom_24) = xyzmoms(xyz_mom_24) + wt*
dy
1834 xyzmoms(xyz_mom_34) = xyzmoms(xyz_mom_34) + wt*
dz
1835 xyzmoms(xyz_mom_44) = xyzmoms(xyz_mom_44) + wt*wt
1838 r11 =
sqrt(xyzmoms(xyz_mom_11))
1839 ir11 = 1.0_rfreal/r11
1841 r12 = ir11*xyzmoms(xyz_mom_12)
1842 r22 =
sqrt(xyzmoms(xyz_mom_22) - r12*r12)
1843 ir22 = 1.0_rfreal/r22
1845 r13 = ir11*xyzmoms(xyz_mom_13)
1846 r23 = ir22*(xyzmoms(xyz_mom_23) - r12*r13 )
1847 r33 =
sqrt(xyzmoms(xyz_mom_33) - (r13*r13 + r23*r23))
1848 ir33 = 1.0_rfreal/r33
1850 r14 = ir11*xyzmoms(xyz_mom_14)
1851 r24 = ir22*(xyzmoms(xyz_mom_24) - r12*r14 )
1852 r34 = ir33*(xyzmoms(xyz_mom_34) - (r13*r14 + r23*r24 ))
1853 r44 =
sqrt(xyzmoms(xyz_mom_44) - (r14*r14 + r24*r24 + r34*r34))
1859 xyzmoms(xyz_mom_11) = r11
1861 xyzmoms(xyz_mom_12) = r12
1862 xyzmoms(xyz_mom_22) = r22
1864 xyzmoms(xyz_mom_13) = r13
1865 xyzmoms(xyz_mom_23) = r23
1866 xyzmoms(xyz_mom_33) = r33
1868 xyzmoms(xyz_mom_14) = r14
1869 xyzmoms(xyz_mom_24) = r24
1870 xyzmoms(xyz_mom_34) = r34
1871 xyzmoms(xyz_mom_44) = r44
1913 TYPE(t_region
),
POINTER :: pregion
1914 TYPE(t_patch),
POINTER :: ppatch
1920 INTEGER :: errorflag,ifl
1922 TYPE(t_grid),
POINTER :: pgrid
1928 global => pregion%global
1931 'RFLU_ModWeights.F90')
1933 IF ( global%myProcid == masterproc .AND. &
1934 global%verbLevel > verbose_none )
THEN
1935 WRITE(stdout,
'(A,1X,A)') solver_name, &
1936 'Destroying boundary face-to-cell weights...'
1943 pgrid => pregion%grid
1949 IF ( ppatch%bcType /= bc_virtual )
THEN
1950 DO ifl = 1,ppatch%nBFaces
1951 DEALLOCATE(ppatch%bf2cs(ifl)%xyzMoms,stat=errorflag)
1952 global%error = errorflag
1953 IF ( global%error /= err_none )
THEN
1954 CALL
errorstop(global,err_deallocate,__line__,
'pPatch%bf2cs%xyzMoms')
1969 IF ( global%myProcid == masterproc .AND. &
1970 global%verbLevel > verbose_none )
THEN
1971 WRITE(stdout,
'(A,1X,A)') solver_name, &
1972 'Destroying boundary face-to-cell weights done.'
2012 TYPE(t_patch),
POINTER :: ppatch
2013 TYPE(t_region
),
POINTER :: pregion
2026 global => pregion%global
2029 'RFLU_ModWeights.F90')
2035 pmixtinput => pregion%mixtInput
2041 SELECT CASE ( pmixtinput%stencilDimensBFaces )
2046 CALL
errorstop(global,err_reached_default,__line__)
2089 TYPE(t_region
),
POINTER :: pregion
2095 INTEGER :: errorflag,icg
2097 TYPE(t_grid),
POINTER :: pgrid
2103 global => pregion%global
2106 'RFLU_ModWeights.F90')
2108 IF ( global%myProcid == masterproc .AND. &
2109 global%verbLevel > verbose_none )
THEN
2110 WRITE(stdout,
'(A,1X,A)') solver_name, &
2111 'Destroying cell-to-cell weights...'
2118 pgrid => pregion%grid
2124 DO icg = 1,pgrid%nCellsTot
2125 DEALLOCATE(pgrid%c2cs(icg)%xyzMoms,stat=errorflag)
2126 global%error = errorflag
2127 IF ( global%error /= err_none )
THEN
2128 CALL
errorstop(global,err_deallocate,__line__,
'pGrid%c2cs%xyzMoms')
2142 IF ( global%myProcid == masterproc .AND. &
2143 global%verbLevel > verbose_none )
THEN
2144 WRITE(stdout,
'(A,1X,A)') solver_name, &
2145 'Destroying cell-to-cell weights done.'
2187 TYPE(t_region
),
POINTER :: pregion
2200 global => pregion%global
2203 'RFLU_ModWeights.F90')
2209 pmixtinput => pregion%mixtInput
2215 SELECT CASE ( pmixtinput%stencilDimensCells )
2220 CALL
errorstop(global,err_reached_default,__line__)
2265 TYPE(t_region
),
POINTER :: pregion
2271 INTEGER :: errorflag,ifg
2273 TYPE(t_grid),
POINTER :: pgrid
2279 global => pregion%global
2282 'RFLU_ModWeights.F90')
2284 IF ( global%myProcid == masterproc .AND. &
2285 global%verbLevel > verbose_none )
THEN
2286 WRITE(stdout,
'(A,1X,A)') solver_name, &
2287 'Destroying face-to-cell weights...'
2294 pgrid => pregion%grid
2300 DO ifg = 1,pgrid%nFaces
2301 DEALLOCATE(pgrid%f2cs(ifg)%xyzMoms,stat=errorflag)
2302 global%error = errorflag
2303 IF ( global%error /= err_none )
THEN
2304 CALL
errorstop(global,err_deallocate,__line__,
'pGrid%f2cs%xyzMoms')
2318 IF ( global%myProcid == masterproc .AND. &
2319 global%verbLevel > verbose_none )
THEN
2320 WRITE(stdout,
'(A,1X,A)') solver_name, &
2321 'Destroying face-to-cell weights done.'
2360 TYPE(t_region
),
POINTER :: pregion
2373 global => pregion%global
2376 'RFLU_ModWeights.F90')
2382 pmixtinput => pregion%mixtInput
2388 SELECT CASE ( pmixtinput%stencilDimensFaces )
2393 CALL
errorstop(global,err_reached_default,__line__)
2437 TYPE(t_patch),
POINTER :: ppatch
2438 TYPE(t_region
),
POINTER :: pregion
2446 TYPE(t_grid),
POINTER :: pgrid
2452 global => pregion%global
2455 'RFLU_ModWeights.F90')
2461 pgrid => pregion%grid
2467 IF ( ppatch%bcType /= bc_virtual )
THEN
2468 DO ifl = 1,ppatch%nBFaces
2469 nullify(ppatch%bf2cs(ifl)%xyzMoms)
2513 TYPE(t_region
),
POINTER :: pregion
2520 TYPE(t_grid),
POINTER :: pgrid
2527 global => pregion%global
2530 'RFLU_ModWeights.F90')
2536 pgrid => pregion%grid
2542 DO icg = 1,pgrid%nCellsTot
2543 nullify(pgrid%c2cs(icg)%xyzMoms)
2585 TYPE(t_region
),
POINTER :: pregion
2593 TYPE(t_grid),
POINTER :: pgrid
2599 global => pregion%global
2602 'RFLU_ModWeights.F90')
2608 pgrid => pregion%grid
2614 DO ifg = 1,pgrid%nFaces
2615 nullify(pgrid%f2cs(ifg)%xyzMoms)
subroutine, public rflu_computewtsx2c_1d(global, m, nMembs, x, z, w)
subroutine, public rflu_createwtsf2cwrapper(pRegion, order)
subroutine rflu_createwtsc2c(pRegion, order)
subroutine rflu_computewtsc2c(pRegion, order)
subroutine, public rflu_createwtsc2cwrapper(pRegion, order)
subroutine rflu_nullifywtsbf2c(pRegion, pPatch)
subroutine rflu_computestencilmoments2d1(global, nMembs, dr, xyzMoms)
Vector_n max(const Array_n_const &v1, const Array_n_const &v2)
Size order() const
Degree of the element. 1 for linear and 2 for quadratic.
subroutine, public rflu_destroywtsbf2cwrapper(pRegion, pPatch)
subroutine registerfunction(global, funName, fileName)
subroutine rflu_destroywtsbf2c(pRegion, pPatch)
subroutine, public rflu_createwtsbf2cwrapper(pRegion, pPatch, order)
subroutine rflu_createwtsf2c(pRegion, orderInput)
subroutine rflu_createwtsbf2c(pRegion, pPatch, orderInput)
subroutine, public rflu_computewtsbf2cwrapper(pRegion, pPatch, order)
subroutine rflu_nullifywtsc2c(pRegion)
void int int int REAL REAL REAL * z
subroutine rflu_destroywtsf2c(pRegion)
subroutine rflu_computewtsf2c(pRegion, orderInput)
subroutine rflu_computestencilmoments3d1(global, nMembs, dr, xyzMoms)
subroutine, public rflu_destroywtsf2cwrapper(pRegion)
subroutine, public rflu_computewtsc2cwrapper(pRegion, order)
Vector_n min(const Array_n_const &v1, const Array_n_const &v2)
subroutine rflu_nullifywtsf2c(pRegion)
subroutine, public rflu_destroywtsc2cwrapper(pRegion)
subroutine errorstop(global, errorCode, errorLine, addMessage)
subroutine, public rflu_computewtsf2cwrapper(pRegion, order)
subroutine rflu_destroywtsc2c(pRegion)
subroutine deregisterfunction(global)
subroutine rflu_computewtsbf2c(pRegion, pPatch, orderInput)