ICFERST  22-06
Reservoir simulator based on DCVFEM, Dynamic Mesh optimisation and Surface-based modelling
multi_shape_fct.F90 File Reference
#include "fdebug.h"
Include dependency graph for multi_shape_fct.F90:

Data Types

interface  shape_functions_prototype::detnlxr_plus_u
 Subroutine to compute the derivatives of the inputed shape functions. More...
 

Modules

module  shape_functions_prototype
 SHAPE FUNCTIONS SUBRTS.
 

Functions/Subroutines

subroutine shape_functions_prototype::shape_cv_n (ndim, cv_ele_type, cv_ngi, cv_nloc, u_nloc, cvn, cvweigh, n, nlx, nly, nlz, un, unlx, unly, unlz)
 SHAPESV AND RELATED SUBRTS & FUNCTIONS Shape functions associated with volume integration using both CV basis functions CVN as well as FEM basis functions N (and its derivatives NLX, NLY, NLZ) also for velocity basis functions UN, UNLX, UNLY, UNLZ. More...
 
subroutine shape_functions_prototype::cv_fem_shape_funs (shape_fun, Mdims, GIdims, cv_ele_type, QUAD_OVER_WHOLE_ELE)
 This subrt defines the sub-control volume and FEM shape functions. Shape functions associated with volume integration using both CV basis functions CVN as well as FEM basis functions CVFEN (and its derivatives CVFENLX, CVFENLY, CVFENLZ) More...
 
subroutine cv_fem_shape_funs_old (ndim, cv_ele_type, cv_ngi, cv_ngi_short, cv_nloc, u_nloc, cvn, cvn_short, cvweight, cvfen, cvfenlx, cvfenly, cvfenlz, cvweight_short, cvfen_short, cvfenlx_short, cvfenly_short, cvfenlz_short, ufen, ufenlx, ufenly, ufenlz, scvngi, cv_neiloc, cv_on_face, cvfem_on_face, scvfen, scvfenslx, scvfensly, scvfeweigh, scvfenlx, scvfenly, scvfenlz, sufen, sufenslx, sufensly, sufenlx, sufenly, sufenlz, u_on_face, ufem_on_face, nface, sbcvngi, sbcvn, sbcvfen, sbcvfenslx, sbcvfensly, sbcvfeweigh, sbcvfenlx, sbcvfenly, sbcvfenlz, sbufen, sbufenslx, sbufensly, sbufenlx, sbufenly, sbufenlz, cv_sloclist, u_sloclist, cv_snloc, u_snloc, findgpts, colgpts, ncolgpts, sele_overlap_scale, QUAD_OVER_WHOLE_ELE)
 
subroutine shape_functions_prototype::det_suf_ele_shape (SCVNGI, NFACE, CVFEM_ON_FACE, CV_NLOC, SCVFEN, SCVFENSLX, SCVFENSLY, SCVFEWEIGH, SCVFENLX, SCVFENLY, SCVFENLZ, U_NLOC, SUFEN, SUFENSLX, SUFENSLY, SUFENLX, SUFENLY, SUFENLZ, SBCVNGI, SBCVFEN, SBCVFENSLX, SBCVFENSLY, SBCVFEWEIGH, SBCVFENLX, SBCVFENLY, SBCVFENLZ, SBUFEN, SBUFENSLX, SBUFENSLY, SBUFENLX, SBUFENLY, SBUFENLZ, CV_SLOCLIST, U_SLOCLIST, CV_SNLOC, U_SNLOC, NDIM, CV_ELE_TYPE)
 this subroutine generates the FE basis functions, weights and the derivatives of the shape functions for a variety of elements on the control volume boundaries. The routine also generates the shape functions and derivatives associated with the CV surfaces and also the FV basis functions. More...
 
subroutine shape_functions_prototype::scvfen_2_sbcvfen (cv_nloc, cv_snloc, scvngi, sbcvngi, cv_nloc_cells, cv_snloc_cells, cvfem_on_face, sbcvfen, sbcvfenslx, sbcvfensly, sbcvfenlx, sbcvfenly, sbcvfenlz, sbcvfeweigh, scvfen, scvfenslx, scvfensly, scvfenlx, scvfenly, scvfenlz, scvfeweigh)
 Compute SBCVFEN from SCVFEN. More...
 
subroutine shape_functions_prototype::shapesv_fem_plus (scvngi, cv_neiloc, cv_on_face, cvfem_on_face, ufem_on_face, cv_ele_type, cv_nloc, scvfen, scvfenslx, scvfensly, scvfeweigh, scvfenlx, scvfenly, scvfenlz, u_nloc, sufen, sufenslx, sufensly, sufenlx, sufenly, sufenlz, ndim)
 This subroutine generates the FE basis functions, weights and the derivatives of the shape functions for a variety of elements on the control volume boundaries. The routine also generates the shape functions and derivatives associated with the CV surfaces and also the FV basis functions. More...
 
subroutine shape_functions_prototype::fv_1d_quad (SCVNGI, CV_NLOC, SCVFEN, SCVFENSLX, SCVFENSLY, SCVFEWEIGH, SCVFENLX, SCVFENLY, SCVFENLZ)
 this subroutine generates the FE basis functions, weights and the derivatives of the shape functions for a variety of elements. The routine also generates the shape functions and derivatives associated with the CV surfaces and also the FV basis functions. More...
 
subroutine shape_functions_prototype::fvquad (NGI, NLOC, SVNGI, M, SVN, SVNLX, SVWEIGH)
 this routine generates the shape functions associated with the FV's i.e. their surfaces and volume shape functions and derivatives. The surface shape functions are the values of the FE volume shape functions evaluated on the surfaces of the CV's. More...
 
subroutine shape_functions_prototype::fvhex (NGI, NLOC, SVNGI, M, SVN, SVNLX, SVNLY, SVWEIGH)
 this routine generates the shape functions associated with the FV's i.e. their surfaces and volume shape functions and derivatives. More...
 
subroutine shape_functions_prototype::fvqquad (NGI, NLOC, SVNGI, M, SVN, SVNLX, SVWEIGH)
 this routine generates the shape functions associated with the FV's i.e. their surfaces and volume shape functions and derivatives. The surface shape functions are the values of the FE volume shape functions evaluated on the surfaces of the CV's. More...
 
subroutine shape_functions_prototype::fvqhex (NGI, NLOC, SVNGI, M, SVN, SVNLX, SVNLY, SVWEIGH)
 this routine generates the shape functions associated with the FV's i.e. their surfaces and volume shape functions and derivatives. The surface shape functions are the values of the FE volume shape functions evaluated on the surfaces of the CV's. More...
 
subroutine shape_functions_prototype::volnei (NEILOC, FEM_NEILOC, NLOC, SVNGI, CV_ELE_TYPE)
 this subroutine calculates NEILOC which is the array containing information given a local node and an integration point what is the other opposing local node. It contains -1 if on the boundary of of the element. More...
 
subroutine shape_functions_prototype::u_volnei (cv_ele_type, cv_nloc, u_nloc, scvngi, cv_neiloc, u_on_face)
 This subroutine calculates U_ON_FACE, a logical that works -! in a similar way of CV_ON_FACE. -! More...
 
subroutine shape_functions_prototype::gaussiloc (FINDGPTS, COLGPTS, NCOLGPTS, NEILOC, NLOC, SVNGI)
 This subroutine calculates FINDGPTS,COLGPTS,NCOLGPTS which contains given a local node ILOC the Gauss pts that are used to integrate around this local node. More...
 
subroutine shape_functions_prototype::detnlxr_plus_u1 (ELE, X_ALL, XONDGL, weight, cvshape, cvshapelx, ushapelx, DevFuns)
 Subroutine to compute the derivatives of the inputed shape functions. More...
 
subroutine shape_functions_prototype::detnlxr_plus_u2 (ELE, X, Y, Z, XONDGL, TOTELE, NONODS, X_NLOC, CV_NLOC, NGI, N, NLX, NLY, NLZ, WEIGHT, DETWEI, RA, VOLUME, D1, D3, DCYL, NX_ALL, U_NLOC, UNLX, UNLY, UNLZ, UNX_ALL)
 Subroutine to compute the derivatives of the inputed shape functions. More...
 

Function/Subroutine Documentation

◆ cv_fem_shape_funs_old()

subroutine cv_fem_shape_funs::cv_fem_shape_funs_old ( integer, intent(in)  ndim,
integer, intent(in)  cv_ele_type,
integer, intent(in)  cv_ngi,
integer, intent(in)  cv_ngi_short,
integer, intent(in)  cv_nloc,
integer, intent(in)  u_nloc,
real, dimension( :, : ), intent(inout)  cvn,
real, dimension( :, : ), intent(inout)  cvn_short,
real, dimension( : ), intent(inout)  cvweight,
real, dimension( :, : ), intent(inout)  cvfen,
real, dimension( :, : ), intent(inout)  cvfenlx,
real, dimension( :, : ), intent(inout)  cvfenly,
real, dimension( :, : ), intent(inout)  cvfenlz,
real, dimension( : ), intent(inout)  cvweight_short,
real, dimension( :, : ), intent(inout)  cvfen_short,
real, dimension( :, : ), intent(inout)  cvfenlx_short,
real, dimension( :, : ), intent(inout)  cvfenly_short,
real, dimension( :, : ), intent(inout)  cvfenlz_short,
real, dimension( :, : ), intent(inout)  ufen,
real, dimension( :, : ), intent(inout)  ufenlx,
real, dimension( :, : ), intent(inout)  ufenly,
real, dimension( :, : ), intent(inout)  ufenlz,
integer, intent(in)  scvngi,
integer, dimension( :, : ), intent(inout)  cv_neiloc,
logical, dimension( :, : ), intent(inout)  cv_on_face,
logical, dimension( :, : ), intent(inout)  cvfem_on_face,
real, dimension( :, : ), intent(inout)  scvfen,
real, dimension( :, : ), intent(inout)  scvfenslx,
real, dimension( :, : ), intent(inout)  scvfensly,
real, dimension( : ), intent(inout)  scvfeweigh,
real, dimension( :, : ), intent(inout)  scvfenlx,
real, dimension( :, : ), intent(inout)  scvfenly,
real, dimension( :, : ), intent(inout)  scvfenlz,
real, dimension( :, : ), intent(inout)  sufen,
real, dimension( :, : ), intent(inout)  sufenslx,
real, dimension( :, : ), intent(inout)  sufensly,
real, dimension( :, : ), intent(inout)  sufenlx,
real, dimension( :, : ), intent(inout)  sufenly,
real, dimension( :, : ), intent(inout)  sufenlz,
logical, dimension( :, : ), intent(inout)  u_on_face,
logical, dimension( :, : ), intent(inout)  ufem_on_face,
integer, intent(in)  nface,
integer, intent(in)  sbcvngi,
real, dimension( :, : ), intent(inout)  sbcvn,
real, dimension( :, : ), intent(inout)  sbcvfen,
real, dimension( :, : ), intent(inout)  sbcvfenslx,
real, dimension( :, : ), intent(inout)  sbcvfensly,
real, dimension( : ), intent(inout)  sbcvfeweigh,
real, dimension( :, : ), intent(inout)  sbcvfenlx,
real, dimension( :, : ), intent(inout)  sbcvfenly,
real, dimension( :, : ), intent(inout)  sbcvfenlz,
real, dimension( :, : ), intent(inout)  sbufen,
real, dimension( :, : ), intent(inout)  sbufenslx,
real, dimension( :, : ), intent(inout)  sbufensly,
real, dimension( :, : ), intent(inout)  sbufenlx,
real, dimension( :, : ), intent(inout)  sbufenly,
real, dimension( :, : ), intent(inout)  sbufenlz,
integer, dimension( :, : ), intent(inout)  cv_sloclist,
integer, dimension( :, : ), intent(inout)  u_sloclist,
integer, intent(in)  cv_snloc,
integer, intent(in)  u_snloc,
integer, dimension( : ), intent(inout)  findgpts,
integer, dimension( : ), intent(inout)  colgpts,
integer, intent(inout)  ncolgpts,
real, dimension( : ), intent(inout)  sele_overlap_scale,
logical, intent(in)  QUAD_OVER_WHOLE_ELE 
)
Here is the call graph for this function:
Here is the caller graph for this function: