ADflow  v1.0
ADflow is a finite volume RANS solver tailored for gradient-based aerodynamic design optimization.
Functions/Subroutines
preprocessingapi Module Reference

Functions/Subroutines

subroutine preprocessing
 
subroutine preprocessingoverset (flag, n, closedFamList, nFam)
 
subroutine cellrangesubface
 
subroutine determinencellglobal (level)
 
subroutine setporosities (level)
 
subroutine exchangeglobalcells (level, sps, commPattern, internal)
 
subroutine checksymmetry (level)
 
subroutine xhalo (level)
 
subroutine setsurfacefamilyinfo
 
subroutine createnodescatterforfamilies (famList, exch, sps, localIndices)
 
subroutine setreferencevolume (level)
 
subroutine setglobalcellsandnodes (level)
 
subroutine setfamilyinfofaces (level)
 
subroutine shiftcoorandvolumes
 
subroutine viscsubfaceinfo (level)
 
subroutine allocatemetric (level)
 
subroutine metric (level)
 
subroutine minmaxangle (angles, p1, p2, p3, p4)
 
subroutine writebadvolumes (checkVolDoms, mode)
 
subroutine facerotationmatrices (level, allocMem)
 
subroutine updatecoordinatesalllevels
 
subroutine updatemetricsalllevels
 
subroutine updategridvelocitiesalllevels
 
subroutine updateperiodicinfoalllevels
 
subroutine unitvectorsinaxialplane (axis, vecR1, vecR2)
 
subroutine preprocessingadjoint
 
subroutine updatereferencepoint
 
subroutine updaterotationrate (rotCenter, rotRate, blocks, nblocks)
 

Function/Subroutine Documentation

◆ allocatemetric()

subroutine preprocessingapi::allocatemetric ( integer(kind=inttype), intent(in)  level)

◆ cellrangesubface()

subroutine preprocessingapi::cellrangesubface

Definition at line 268 of file preprocessingAPI.F90.

References block::flowdoms, constants::imax, constants::imin, constants::jmax, constants::jmin, constants::kmax, constants::kmin, block::ndom, and utils::terminate().

Referenced by preprocessing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ checksymmetry()

subroutine preprocessingapi::checksymmetry ( integer(kind=inttype), intent(in)  level)

◆ createnodescatterforfamilies()

subroutine preprocessingapi::createnodescatterforfamilies ( integer(kind=inttype), dimension(:), intent(in)  famList,
type(familyexchange), intent(inout)  exch,
integer(kind=inttype), intent(in)  sps,
integer(kind=inttype), dimension(:), intent(out), allocatable  localIndices 
)

Definition at line 1670 of file preprocessingAPI.F90.

References communication::adflow_comm_world, utils::echk(), surfaceutils::getsurfacepoints(), surfaceutils::getsurfacesize(), communication::myid, communication::nproc, and utils::pointreduce().

Referenced by setsurfacefamilyinfo().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ determinencellglobal()

subroutine preprocessingapi::determinencellglobal ( integer(kind=inttype), intent(in)  level)

Definition at line 468 of file preprocessingAPI.F90.

References communication::adflow_comm_world, block::flowdoms, communication::myid, block::ncellglobal, block::ndom, and commonformats::strings.

Referenced by preprocessing().

Here is the caller graph for this function:

◆ exchangeglobalcells()

subroutine preprocessingapi::exchangeglobalcells ( integer(kind=inttype), intent(in)  level,
integer(kind=inttype), intent(in)  sps,
type(commtype), dimension(*), intent(in)  commPattern,
type(internalcommtype), dimension(*), intent(in)  internal 
)

◆ facerotationmatrices()

subroutine preprocessingapi::facerotationmatrices ( integer(kind=inttype), intent(in)  level,
logical, intent(in)  allocMem 
)

◆ metric()

subroutine preprocessingapi::metric ( integer(kind=inttype), intent(in)  level)

◆ minmaxangle()

subroutine preprocessingapi::minmaxangle ( real(kind=realtype), dimension(4), intent(out)  angles,
real(kind=realtype), dimension(3), intent(in)  p1,
real(kind=realtype), dimension(3), intent(in)  p2,
real(kind=realtype), dimension(3), intent(in)  p3,
real(kind=realtype), dimension(3), intent(in)  p4 
)

Definition at line 3520 of file preprocessingAPI.F90.

References utils::norm2cplx(), constants::pi, and constants::two.

Referenced by metric().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ preprocessing()

subroutine preprocessingapi::preprocessing

Definition at line 5 of file preprocessingAPI.F90.

References communication::adflow_comm_world, allocatemetric(), bcdata::allocmembcdata(), blockpointers::bctype, cellrangesubface(), checksymmetry(), communication::commpatterncell_1st, communication::commpatterncell_2nd, communication::commpatternnode_1st, communication::commpatternoverset, walldistance::computewalldistance(), coarseutils::createcoarseblocks(), oversetdata::cumdomproc, oversetapi::determineclusters(), pointmatchedcommpattern::determinecommpattern(), determinencellglobal(), oversetapi::determineviscousdirs(), utils::echk(), inputphysics::equationmode, facerotationmatrices(), block::flowdoms, bcdata::initbcdata(), communication::internalcell_1st, communication::internalcell_2nd, communication::internalnode_1st, communication::internaloverset, oversetdata::localwallfringes, metric(), communication::myid, blockpointers::nbocos, block::ncellglobal, block::ndom, oversetdata::ndomproc, oversetdata::ndomtotal, communication::nproc, section::nsections, inputtimespectral::ntimeintervalsspectral, oversetdata::overlapmatrix, oversetapi::oversetcomm(), constants::oversetouterbound, oversetdata::oversetpresent, preprocessingadjoint(), communication::recvbuffer, communication::recvbuffersize, communication::recvbuffersize_1to1, communication::recvbuffersizeover, section::sections, communication::sendbuffer, communication::sendbuffersize, communication::sendbuffersize_1to1, communication::sendbuffersizeover, utils::setbuffersizes(), setfamilyinfofaces(), setglobalcellsandnodes(), utils::setpointers(), setporosities(), setreferencevolume(), setsurfacefamilyinfo(), utils::terminate(), constants::timespectral, constants::unsteady, viscsubfaceinfo(), oversetdata::wallfringes, and xhalo().

Here is the call graph for this function:

◆ preprocessingadjoint()

subroutine preprocessingapi::preprocessingadjoint

◆ preprocessingoverset()

subroutine preprocessingapi::preprocessingoverset ( integer(kind=inttype), dimension(n)  flag,
integer(kind=inttype), intent(in)  n,
integer(kind=inttype), dimension(nfam)  closedFamList,
integer(kind=inttype), intent(in)  nFam 
)

Definition at line 240 of file preprocessingAPI.F90.

References block::flowdoms, oversetapi::oversetcomm(), and oversetapi::setexplicitholecut().

Here is the call graph for this function:

◆ setfamilyinfofaces()

subroutine preprocessingapi::setfamilyinfofaces ( integer(kind=inttype), intent(in)  level)

◆ setglobalcellsandnodes()

subroutine preprocessingapi::setglobalcellsandnodes ( integer(kind=inttype), intent(in)  level)

◆ setporosities()

subroutine preprocessingapi::setporosities ( integer(kind=inttype), intent(in)  level)

◆ setreferencevolume()

subroutine preprocessingapi::setreferencevolume ( integer(kind=inttype), intent(in)  level)

Definition at line 1865 of file preprocessingAPI.F90.

References blockpointers::ib, blockpointers::jb, blockpointers::kb, inputtimespectral::ntimeintervalsspectral, and utils::setpointers().

Referenced by preprocessing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setsurfacefamilyinfo()

subroutine preprocessingapi::setsurfacefamilyinfo

Definition at line 1301 of file preprocessingAPI.F90.

References communication::adflow_comm_world, constants::b2bmatch, constants::b2bmismatch, surfacefamilies::bcfamexchange, surfacefamilies::bcfamgroups, constants::bcnull, constants::bcthrust, blockpointers::bctype, sorting::bsearchstrings(), cgnsgrid::cgnsdoms, blockpointers::cgnssubface, utils::converttolowercase(), createnodescatterforfamilies(), constants::domaininterfaceall, constants::domaininterfacep, constants::domaininterfacerho, constants::domaininterfacerhouvw, constants::domaininterfacetotal, utils::echk(), constants::eulerwall, constants::extrap, sorting::faminlist(), surfacefamilies::famnames, constants::farfield, surfacefamilies::fullfamlist, surfaceutils::getsurfacesize(), constants::ibcgroupfarfield, constants::ibcgroupinflow, constants::ibcgroupother, constants::ibcgroupoutflow, constants::ibcgroupoverset, constants::ibcgroupsymm, constants::ibcgroupwalls, constants::massbleedinflow, constants::massbleedoutflow, constants::mdot, communication::myid, blockpointers::nbocos, constants::nfamexchange, communication::nproc, constants::nswalladiabatic, constants::nswallisothermal, inputtimespectral::ntimeintervalsspectral, constants::one, surfacefamilies::onecellval, constants::oversetouterbound, utils::pointreduce(), sorting::qsortstrings(), utils::setpointers(), constants::slidinginterface, constants::subsonicinflow, constants::subsonicoutflow, constants::supersonicinflow, constants::supersonicoutflow, constants::symm, constants::symmpolar, utils::terminate(), constants::zero, surfacefamilies::zerocellval, and surfacefamilies::zeronodeval.

Referenced by preprocessing().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ shiftcoorandvolumes()

subroutine preprocessingapi::shiftcoorandvolumes

◆ unitvectorsinaxialplane()

subroutine preprocessingapi::unitvectorsinaxialplane ( real(kind=realtype), dimension(3), intent(in)  axis,
real(kind=realtype), dimension(3), intent(out)  vecR1,
real(kind=realtype), dimension(3), intent(out)  vecR2 
)

Definition at line 4108 of file preprocessingAPI.F90.

References constants::one, and constants::zero.

Referenced by facerotationmatrices().

Here is the caller graph for this function:

◆ updatecoordinatesalllevels()

subroutine preprocessingapi::updatecoordinatesalllevels

Definition at line 3945 of file preprocessingAPI.F90.

References coarseutils::coarseownedcoordinates(), block::flowdoms, iteration::groundlevel, and xhalo().

Referenced by solvers::initstagerk(), solvers::solverunsteadyexplicitrk(), and solvers::updateunsteadygeometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updategridvelocitiesalllevels()

subroutine preprocessingapi::updategridvelocitiesalllevels

◆ updatemetricsalllevels()

subroutine preprocessingapi::updatemetricsalllevels

Definition at line 3984 of file preprocessingAPI.F90.

References checksymmetry(), inputphysics::equationmode, block::flowdoms, iteration::groundlevel, metric(), inputiteration::printwarnings, and constants::unsteady.

Referenced by solvers::initstagerk(), and solvers::updateunsteadygeometry().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateperiodicinfoalllevels()

subroutine preprocessingapi::updateperiodicinfoalllevels

◆ updatereferencepoint()

subroutine preprocessingapi::updatereferencepoint

◆ updaterotationrate()

subroutine preprocessingapi::updaterotationrate ( real(kind=realtype), dimension(3), intent(in)  rotCenter,
real(kind=realtype), dimension(3), intent(in)  rotRate,
integer(kind=inttype), dimension(nblocks), intent(in)  blocks,
integer(kind=inttype), intent(in)  nblocks 
)

◆ viscsubfaceinfo()

subroutine preprocessingapi::viscsubfaceinfo ( integer(kind=inttype), intent(in)  level)

◆ writebadvolumes()

subroutine preprocessingapi::writebadvolumes ( type(checkvolblocktype), dimension(ndom, ntimeintervalsspectral), intent(in)  checkVolDoms,
integer, intent(in)  mode 
)

◆ xhalo()

subroutine preprocessingapi::xhalo ( integer(kind=inttype)  level)