Elmer FEM solver
Elmer is an open source finite element software for multiphysical problems
|
Data Types | |
interface | ExecConstRealFunction |
interface | ExecIntFunction |
interface | ExecRealArrayFunction |
interface | ExecRealFunction |
Public Member Functions | |
logical function | checkelementequation (Model, Element, Equation) |
recursive function | variableget (Variables, Name, ThisOnly, MaskName) |
type(valuelist_t) function, pointer | listallocate () |
Public Attributes | |
integer, parameter | list_type_constant_scalar = 1 |
integer, parameter | list_type_constant_tensor = 2 |
integer, parameter | list_type_variable_scalar = 3 |
integer, parameter | list_type_variable_tensor = 4 |
integer, parameter | list_type_logical = 5 |
integer, parameter | list_type_string = 6 |
integer, parameter | list_type_integer = 7 |
integer, parameter | list_type_constant_scalar_str = 8 |
integer, parameter | list_type_constant_tensor_str = 9 |
integer, parameter | list_type_variable_scalar_str = 10 |
integer, parameter | list_type_variable_tensor_str = 11 |
integer function | initialpermutation (Perm, Model, Solver, Mesh, Equation, DGSolver, GlobalBubbles) |
integer function | stringtolowercase (to, from, same_len) |
subroutine | variableadd (Variables, Mesh, Solver, Name, DOFs, Values, Perm, Output, Secondary, TYPE) |
subroutine | variableaddvector (Variables, Mesh, Solver, Name, DOFs, Values, Perm, Output, Secondary, Global, InitValue) |
type(matrix_t) function, pointer | meshprojector (Mesh1, Mesh2, UseQuadrantTree, Trans) |
subroutine | listdelete (ptr) |
subroutine | listremove (List, Name) |
type(valuelist_t) function, pointer | listadd (List, Name) |
subroutine | listsetnamespace (str) |
logical function | listgetnamespace (str) |
type(valuelist_t) function, pointer | listfind (list, name, Found) |
logical function | listcheckpresent (List, Name) |
subroutine | listaddstring (List, Name, CValue, CaseConversion) |
subroutine | listaddlogical (List, Name, LValue) |
subroutine | listaddinteger (List, Name, IValue, Proc) |
subroutine | listaddintegerarray (List, Name, N, IValues, Proc) |
subroutine | listaddconstreal (List, Name, FValue, Proc, CValue) |
subroutine | listadddepreal (List, Name, DependName, N, TValues, FValues, Proc, CValue, CubicTable) |
subroutine | listaddconstrealarray (List, Name, N, M, FValues, Proc, CValue) |
subroutine | listadddeprealarray (List, Name, DependName, N, TValues, N1, N2, FValues, Proc, Cvalue) |
recursive function | listgetinteger (List, Name, Found, minv, maxv) |
recursive function | listgetintegerarray (List, Name, Found) |
recursive function | listgetlogical (List, Name, Found) |
recursive function | listgetstring (List, Name, Found) |
recursive function | listgetconstreal (List, Name, Found, x, y, z, minv, maxv) |
recursive function | listgetcreal (List, Name, Found) |
subroutine | listparsestrtovalues (str, slen, ind, name, T, count, AllGlobal) |
recursive function | listgetreal (List, Name, N, NodeIndexes, Found, minv, maxv) |
recursive function | listgetfun (List, Name, x, Found, minv, maxv) |
recursive function | listgetrealatip (Handle, List, Basis, Name, Found, Element, minv, maxv) |
recursive subroutine | listinitrealatip (Handle, Section, Name, minv, maxv) |
recursive function | listgetconstrealarray (List, Name, Found) |
recursive subroutine | listgetrealarray (List, Name, F, N, NodeIndexes, Found) |
recursive function | listgetderivvalue (List, Name, N, NodeIndexes) |
character(len=max_name_len) function | nextfreekeyword (keyword0, List) |
logical function | listcheckpresentanybc (Model, Name) |
logical function | listgetlogicalanybc (Model, Name) |
logical function | listcheckpresentanybodyforce (Model, Name) |
logical function | listgetlogicalanybodyforce (Model, Name) |
logical function | listcheckpresentanymaterial (Model, Name) |
logical function | listgetlogicalanymaterial (Model, Name) |
logical function | listcheckpresentanyequation (Model, Name) |
logical function | listgetlogicalanyequation (Model, Name) |
subroutine | createlistforsaving (Model, List, ShowVariables, ClearList) |
subroutine | resettimer (TimerName) |
subroutine | deletetimer (TimerName) |
subroutine | checktimer (TimerName, Level, Delete, Reset) |
real(kind=dp) function | listgetangularfrequency (ValueList, Found) |
logical function lists::checkelementequation | ( | type(model_t) | Model, |
type(element_t), pointer | Element, | ||
character(len=*) | Equation | ||
) |
Check if given element belongs to a body for which given equation should be solved.
References listgetinteger(), and listgetlogical().
Referenced by acousticssolver(), mainutils::addequationbasics(), compressibilityscale(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), generalelectricflux(), initialpermutation(), magneticw1solver(), elementutils::makelistmatrix(), multigrid::msolveractivate(), rateofchangesolver(), mainutils::singlesolver(), and transportequationsolver().
subroutine lists::checktimer | ( | character(*) | TimerName, |
integer, optional | Level, | ||
logical, optional | Delete, | ||
logical, optional | Reset | ||
) |
Check current time of the timer.
References deletetimer(), messages::info(), listaddconstreal(), listgetconstreal(), and messages::warn().
Referenced by distancesolver1(), meshutils::periodicprojector(), and meshutils::splitmeshequal().
subroutine lists::createlistforsaving | ( | type(model_t) | Model, |
type(valuelist_t), pointer | List, | ||
logical | ShowVariables, | ||
logical, optional | ClearList | ||
) |
Elmer may include scalar and vector variables which may be known by their original name or have an alias. For historical reasons they are introduced by two quite separate ways. This subroutine tries to make the definition of variables for saving more straight-forward.
References messages::info(), listaddstring(), listcheckpresent(), listgetlogical(), listgetstring(), listremove(), variableget(), and messages::warn().
Referenced by resultoutputsolver(), and savegriddata().
subroutine lists::deletetimer | ( | character(*) | TimerName) |
Delete an existing timer.
References listremove().
Referenced by checktimer().
integer function lists::initialpermutation | ( | integer, dimension(:) | Perm, |
type(model_t) | Model, | ||
type(solver_t), target | Solver, | ||
type(mesh_t) | Mesh, | ||
character(len=*) | Equation, | ||
logical, optional | DGSolver, | ||
logical, optional | GlobalBubbles | ||
) |
References checkelementequation(), pelementmaps::getbubbledofs(), pelementmaps::getedgedofs(), pelementmaps::getfacedofs(), listgetlogical(), and solver().
Referenced by elementutils::creatematrix(), and variableget().
type(valuelist_t) function, pointer lists::listadd | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name | ||
) |
Adds an entry to the list by its name and returns a handle to the new entry. If the entry is already existing return the existing one.
References listallocate(), listdelete(), and stringtolowercase().
Referenced by listaddconstreal(), listaddconstrealarray(), listadddepreal(), listadddeprealarray(), listaddinteger(), listaddintegerarray(), listaddlogical(), and listaddstring().
subroutine lists::listaddconstreal | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
real(kind=dp) | FValue, | ||
integer(kind=addrint), optional | Proc, | ||
character(len=*), optional | CValue | ||
) |
Adds a constant real value to the list.
References listadd(), and stringtolowercase().
Referenced by acousticssolver(), calculatelumped(), checktimer(), compressibilityscale(), computestress(), datatofieldsolver_init(), distancesolver(), distancesolver_init(), divergencesolver_init(), elmersolver(), evaluatecostfunction(), fetisolve::fetifloatingdomain(), findpullboundary(), flowsolver(), fluxsolver_init(), forcecompute(), freesurfacereduced(), gebhardtfactors(), modeldescription::getnodalelementsize(), heatsolver(), helmholtzsolver(), initfactorsolver(), jfixpotentialsolver(), kesolver(), komega(), levelsetdistance(), levelsetintegrate(), levelsetsolver(), levelsettimestep(), lumpedcartesianmass(), magnetodynamics2dharmonic(), magnetodynamicscalcfields(), outletcompute(), particleadvector_init(), particlescattering(), phasechangesolve(), poissonboltzmannsolve(), freesurface::poissonsolve(), pressuresolver(), resettimer(), reynoldspostprocess(), reynoldspostprocess_init(), richardspostprocess_init(), richardssolver(), rigidbody(), rigidmeshmapper(), savescalars(), scalarpotentialsolver_init(), sectioncontents(), setpermutationboundaries(), shearratesolver_init(), solverutils::solveharmonicsystem(), solverutils::solvelinearsystem(), mainutils::solveractivate(), solverutils::solvesystem(), spalartallmaras(), sstkomega(), statcurrentsolver(), statelecforce(), statelecsolver(), statmagsolver(), steadyphasechange(), stokessolver(), surfacecenterpoints(), transientphasechange(), v2f(), v2f_ldm(), and vorticitysolver_init().
subroutine lists::listaddconstrealarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
integer | N, | ||
integer | M, | ||
real(kind=dp), dimension(:,:) | FValues, | ||
integer(kind=addrint), optional | Proc, | ||
character(len=*), optional | CValue | ||
) |
Adds a constant real valued array to the list.
References listadd(), and stringtolowercase().
Referenced by sectioncontents().
subroutine lists::listadddepreal | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
character(len=*) | DependName, | ||
integer | N, | ||
real(kind=dp), dimension(n) | TValues, | ||
real(kind=dp), dimension(n) | FValues, | ||
integer(kind=addrint), optional | Proc, | ||
character(len=*), optional | CValue, | ||
logical, optional | CubicTable | ||
) |
Adds a linear dependency defined by a table of values, [x,y] to the list.
References generalutils::cubicspline(), listadd(), and stringtolowercase().
Referenced by radiationfactors(), and sectioncontents().
subroutine lists::listadddeprealarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
character(len=*) | DependName, | ||
integer | N, | ||
real(kind=dp), dimension(n) | TValues, | ||
integer | N1, | ||
integer | N2, | ||
real(kind=dp), dimension(:,:,:) | FValues, | ||
integer(kind=addrint), optional | Proc, | ||
character(len=*), optional | Cvalue | ||
) |
Adds a real array where the components are linearly dependent.
References listadd(), and stringtolowercase().
Referenced by sectioncontents().
subroutine lists::listaddinteger | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
integer | IValue, | ||
integer(kind=addrint), optional | Proc | ||
) |
Adds an integer to the list.
References listadd(), and stringtolowercase().
Referenced by mainutils::addequationbasics(), mainutils::addequationsolution(), advectiondiffusionsolver_init(), mainutils::blocksolver(), mainutils::blocksystemassembly(), mainutils::coupledsolver(), datatofieldsolver_init(), divergencesolver_init(), elasticsolver_init(), flowsolver(), flowsolver_init(), fluxsolver_init(), gebhardtfactors(), modeldescription::getnodalelementsize(), multigrid::gmgsolve(), initfactorsolver(), modeldescription::loadinputfile(), multigrid::msolveractivate(), normalsolver_init(), particleadvector_init(), freesurface::poissonsolve(), resultoutputsolver(), reynoldspostprocess_init(), richardspostprocess_init(), scalarpotentialsolver_init(), sectioncontents(), shearratesolver_init(), shellsolver_init(), mainutils::singlesolver(), smitcsolver_init(), statelecsolver_init(), statmagcartesiancompose(), statmagsolver_init(), stresssolver_init(), structuredflowline_init(), transientphasechange_init(), vorticitysolver_init(), and whitneyavsolver().
subroutine lists::listaddintegerarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
integer | N, | ||
integer, dimension(n) | IValues, | ||
integer(kind=addrint), optional | Proc | ||
) |
Adds an integer array to the list.
References listadd(), and stringtolowercase().
Referenced by modeldescription::loadinputfile(), magnetodynamicscalcfields_init0(), sectioncontents(), solverutils::setdirichletboundaries(), and solverutils::setnodalloads().
subroutine lists::listaddlogical | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical | LValue | ||
) |
Adds a logical entry to the list.
References listadd(), and stringtolowercase().
Referenced by mainutils::addequationbasics(), mainutils::addequationsolution(), addsolvers(), addvtuoutputsolverhack(), eigensolve::arpackdampedeigensolve(), eigensolve::arpackeigensolve(), eigensolve::arpackeigensolvecomplex(), eigensolve::arpackstabeigensolve(), blocksolve::blockkryloviter(), blocksolve::blockmatrixprec(), mainutils::blocksolver(), blocksolve::blockstandarditer(), computestress(), computestressandstrain(), mainutils::coupledsolver(), datatofieldsolver(), defutils::defaultsolve(), dosolve(), eliminatedirichlet(), elmersolver(), fetisolve::feti(), flowsolver(), fluxsolver_init(), gcrouteriteration(), modeldescription::getnodalelementsize(), multigrid::gmgsolve(), heatsolver(), magnetodynamicscalcfields_init(), magnetodynamicscalcfields_init0(), paralleleigensolve::parallelarpackeigensolve(), particleadvector_init(), particledynamics(), multigrid::pmgsolve(), radiationfactors(), reynoldssolver_init(), richardssolver_init(), sectioncontents(), solverutils::solveeigensystem(), solverutils::solveharmonicsystem(), statelecsolver_init(), stokessolver(), stresssolver(), stresssolver_init(), structuredflowline_init(), velocitysolver(), and whitneyavsolver_init0().
subroutine lists::listaddstring | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
character(len=*) | CValue, | ||
logical, optional | CaseConversion | ||
) |
Adds a string to the list.
References listadd(), and stringtolowercase().
Referenced by mainutils::addequationbasics(), addvtuoutputsolverhack(), mainutils::blocksolver(), bsolver_init(), mainutils::checksolveroptions(), mainutils::coupledsolver(), createlistforsaving(), datatofieldsolver_init(), divergencesolver_init(), elasticsolver_init(), fetisolve::fetifloatingdomain(), fluxsolver_init(), gebhardtfactors(), modeldescription::getnodalelementsize(), initfactorsolver(), jfixpotentialsolver(), kesolver_init(), modeldescription::loadinputfile(), magnetodynamicscalcfields_init(), magnetodynamicscalcfields_init0(), meshsolver_init(), solverutils::mortarrobinsolver(), normalsolver_init(), parallelprojecttoplane_init(), particleadvector_init(), phasechangesolve_init(), freesurface::poissonsolve(), resultoutputsolver(), reynoldspostprocess_init(), reynoldssolver_init(), richardspostprocess_init(), richardssolver_init(), saveline(), particleutils::saveparticledata(), scalarpotentialsolver_init(), sectioncontents(), shearratesolver_init(), shellsolver_init(), smitcsolver_init(), statcurrentsolver_init(), statelecsolver_init(), statmagcartesiancompose(), statmagsolver_init(), stresssolver_init(), structuredflowline_init(), transientphasechange_init(), vorticitysolver_init(), whitneyavharmonicsolver_init0(), and whitneyavsolver_init0().
type(valuelist_t) function, pointer lists::listallocate | ( | ) |
logical function lists::listcheckpresent | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name | ||
) |
Just checks if a entry is present in the list.
References listfind().
Referenced by mainutils::addequationbasics(), mainutils::addequationsolution(), advectiondiffusionsolver(), bcassembly(), mainutils::blocksolver(), bsolver_init(), bulkassembly(), checkntelement(), solverutils::checkpassiveelement(), mainutils::coupledsolver(), createlistforsaving(), datatofieldsolver_init(), defutils::defaultdirichletbcs(), dirichletafromb(), distancesolver_init(), divergencesolver_init(), dosolve(), effectiveheatcapacity(), elasticsolver_init(), elmersolver(), fetisolve::feti(), fetisolve::fetifloatingdomain(), flowsolver(), fluxsolver_init(), defutils::galerkinprojector(), gaugetree(), gaugetreefluxbc(), defutils::getparentmatprop(), heatsolver(), helmholtzsolver(), initcond(), particleutils::initializeparticles(), interpolatemeshtomeshq(), jfixpotentialsolver(), listcheckpresentanybc(), listcheckpresentanybodyforce(), listcheckpresentanyequation(), listcheckpresentanymaterial(), modeldescription::loadmodel(), localfluxbc(), localmatrix(), magnetodynamicscalcfields_init(), meshutils::makepermusingmask(), nextfreekeyword(), normalsolver_init(), parallelprojecttoplane_init(), particleadvector_init(), particlewallcontact(), meshutils::pointinmesh(), reynoldspostprocess_init(), reynoldssolver_init(), richardspostprocess_init(), richardssolver_init(), rigidbody(), saveboundaryvalues(), savedependence(), saveline(), savematerials(), particleutils::saveparticledata(), scalarpotentialsolver_init(), solverutils::setdirichletboundaries(), solverutils::setnodalloads(), shearratesolver_init(), shellsolver_init(), smitcsolver_init(), solverutils::solveharmonicsystem(), mainutils::solveractivate(), stokessolver(), stressboundaryresidual(), stresssolver(), stresssolver_init(), structuredmeshmapper(), transientphasechange_init(), meshutils::unitsegmentdivision(), solverutils::updateexportedvariables(), viewfactors(), vorticitysolver_init(), whitneyavharmonicsolver(), whitneyavharmonicsolver_init0(), and whitneyavsolver_init0().
logical function lists::listcheckpresentanybc | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is present in any boundary condition.
References listcheckpresent().
Referenced by solverutils::calculatenodalweights(), solverutils::determinesoftlimiter(), heatsolver(), helmholtzsolver(), nodaldisplacementpenalty(), setfixedparticles(), and structuredmeshmapper().
logical function lists::listcheckpresentanybodyforce | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is present in any body force.
References listcheckpresent().
Referenced by solverutils::calculatenodalweights(), solverutils::determinesoftlimiter(), heatsolver(), nodaldisplacementpenalty(), and setfixedparticles().
logical function lists::listcheckpresentanyequation | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is present in any equation.
References listcheckpresent().
logical function lists::listcheckpresentanymaterial | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is present in any material.
References listcheckpresent().
subroutine lists::listdelete | ( | type(valuelist_t), pointer | ptr) |
Deletes a value list.
Referenced by listadd(), and listremove().
type(valuelist_t) function, pointer lists::listfind | ( | type(valuelist_t), pointer | list, |
character(len=*) | name, | ||
logical, optional | Found | ||
) |
Finds an entry in the list by its name and returns a handle to it.
References listgetnamespace(), stringtolowercase(), and messages::warn().
Referenced by defutils::defaultdirichletbcs(), listcheckpresent(), listgetconstreal(), listgetconstrealarray(), listgetderivvalue(), listgetfun(), listgetinteger(), listgetintegerarray(), listgetlogical(), listgetreal(), listgetrealarray(), listgetrealatip(), listgetstring(), listinitrealatip(), and localmatrix().
real(kind=dp) function lists::listgetangularfrequency | ( | type(valuelist_t), optional, pointer | ValueList, |
logical, optional | Found | ||
) |
Returns the angular frequency.
References listgetcreal(), listgetinteger(), and messages::warn().
Referenced by defutils::getangularfrequency(), and solverutils::solveharmonicsystem().
recursive function lists::listgetconstreal | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found, | ||
real(kind=dp), optional | x, | ||
real(kind=dp), optional | y, | ||
real(kind=dp), optional | z, | ||
real(kind=dp), optional | minv, | ||
real(kind=dp), optional | maxv | ||
) |
Get a constant real from the list by its name.
References lists::ExecConstRealFunction::execconstrealfunction(), messages::fatal(), and listfind().
Referenced by acousticssolver(), advectiondiffusionsolver(), amgbonds(), amgbondscomplex(), amgbondsdirichlet(), amgbondsgeometric(), amgpositivebonds(), multigrid::amgsolve(), eigensolve::arpackdampedeigensolve(), eigensolve::arpackeigensolve(), eigensolve::arpackeigensolvecomplex(), eigensolve::arpackstabeigensolve(), bicgstablouteriteration(), bicgstabouteriteration(), bisectoptimize(), blocksolve::blockstandarditer(), checkcircleboundary(), solverutils::checkstepsize(), checkstepsizeblock(), checktimer(), cmgbonds(), multigrid::cmgsolve(), compatiblerelaxation(), complexinterpolatef2c(), compressibilityscale(), compressibilitysolver(), compressiblens(), solverutils::computechange(), meshutils::coordinatetransformation(), meshutils::createlinemesh(), elementutils::creatematrix(), crs_clustermatrixcreate(), crs_projectmatrixcreate(), dcrcomplexsolver(), meshutils::detectextrudedstructure(), solverutils::determinesoftlimiter(), materialmodels::effectiveviscosity(), elastboundaryresidual(), electricboundaryresidual(), electrolytematerialparameters(), materialmodels::elementdensity(), execsimulation(), findoptimum(), meshutils::findrigidbodyfixingnodes(), flowboundaryresidual(), flowinsideresidual(), flowsolver(), fourierdiffusion3dsolver(), timeintegrate::fractionalstep(), timeintegrate::fractionalstep_crs(), fullitersolver(), gcrouteriteration(), generalelectricflux(), geneticoptimize(), defutils::getconstreal(), multigrid::gmgsolve(), heatboundaryresidual(), heatinsideresidual(), heatsolver(), helmholtz_smoluchowski_comp(), particleutils::initializeparticles(), solverutils::initializetimestep(), innerouteriteration(), interpolatef2c(), interpolatef2cdistance(), interpolatemeshtomeshq(), itersolve::itersolver(), kesolver(), komega(), levelsetcurvature(), levelsetdistance(), levelsetintegrate(), levelsettimestep(), modeldescription::loadmodel(), defutils::localbcbdofs(), localmatrix(), particleutils::locateparticleinmeshmarch(), magneticw1solver(), meltingheat(), meshutils::meshextrude(), monolithicsolve(), solverutils::mortarrobinsolver(), freesurface::moveboundary(), movingelstatsolver(), multigrid::msolveractivate(), optimalsolutionupdate(), outletcompute(), outletdx(), outletdy(), outletinit(), outletpres(), paralleleigensolve::parallelarpackeigensolve(), parallelprojecttoplane(), particleutils::particleadvancetimestep(), particlescattering(), particledynamicsstuff::particlewallproc(), phasechangesolve(), multigrid::pmgsolve(), meshutils::pointinmesh(), poissonboltzmannsolve(), preconditioningiteration(), projecttoplane(), radiationfactors(), adaptive::refinemesh(), restart(), saveline(), savescalars(), secantsearch(), solverutils::setdirichletboundaries(), solverutils::setnodalloads(), setparticlevelocities(), setperiodicboundariespass1(), simplexoptimize(), solvecoupled(), mainutils::solveractivate(), solverutils::solvesystem(), sparitersolve::sparitersolver(), sstkomega(), statelecboundaryutils::statelecboundarygeneric(), statelecforce(), statelecsolver(), statmagsolver(), steadyphasechange(), stokessolver(), structuredflowline(), structuredprojecttoplane(), surfacelocalmatrix(), transientphasechange(), meshutils::unitsegmentdivision(), v2f(), v2f_ldm(), velocitylocalmatrix(), velocitysolver(), and viewfactors().
recursive function lists::listgetconstrealarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found | ||
) |
Gets a constant real array from the list by its name.
References lists::ExecConstRealFunction::execconstrealfunction(), messages::fatal(), and listfind().
Referenced by mainutils::addequationsolution(), solverutils::averageboundarynormals(), checklatentheat(), meshutils::clusternodesbydirection(), multigrid::cmgsolve(), concentratedloads(), elmersolver(), evaluatecostfunction(), meshutils::findrigidbodyfixingnodes(), flowinsideresidual(), flowsolver(), forcecompute(), defutils::getconstrealarray(), heatsolver(), initializeparticles(), particleutils::initializeparticles(), isosurfacesolver(), levelsettimestep(), meshutils::loadmesh(), localmatrix(), smoothers::mgsmooth(), movingelstatsolver(), meshutils::overlayintefacemeshes(), particlefieldinteraction(), particletracker(), resulttoresult(), rigidmeshmapper(), saveline(), savescalars(), solverutils::setdirichletboundaries(), solverutils::setnodalloads(), and solverutils::solveharmonicsystem().
recursive function lists::listgetcreal | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found | ||
) |
Returns a scalar real value, that may depend on other scalar values such as time or timestep size etc.
References listgetreal().
Referenced by blocksolve::blockprecmatrix(), solverutils::computechange(), datatofieldsolver(), defutils::defaultfinishassembly(), elementsizesolver(), execsimulation(), solverutils::fct_correction(), forcecompute(), initcond(), particleutils::initializeparticles(), isosurfacesolver(), itersolve::itersolver(), solverutils::linearsystemmultiply(), listgetangularfrequency(), nodaldisplacementpenalty(), particleutils::particleoutputvtu(), rigidmeshmapper(), savedependence(), saveline(), savescalars(), setfixedparticles(), setperiodicboundariespass2(), solvecoupled(), mainutils::solveractivate(), transientphasechange(), and solverutils::updateexportedvariables().
recursive function lists::listgetderivvalue | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
integer | N, | ||
integer, dimension(:) | NodeIndexes | ||
) |
Gets a real derivative from. This is only available for tables with dependencies.
References generalutils::derivatecurve(), messages::fatal(), listfind(), and variableget().
Referenced by effectiveheatcapacity().
recursive function lists::listgetfun | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
real(kind=dp) | x, | ||
logical, optional | Found, | ||
real(kind=dp), optional | minv, | ||
real(kind=dp), optional | maxv | ||
) |
Gets a real valued parameter in one single point with value x. Note that this uses same logical on sif file as ListGetReal but the variable is just a dummy as the dependent function is assumed to be set inside the code. This should be used with caution is it sets some confusing limitations to the user.
References lists::ExecRealFunction::execrealfunction(), messages::fatal(), generalutils::interpolatecurve(), and listfind().
Referenced by savedependence(), and meshutils::unitsegmentdivision().
recursive function lists::listgetinteger | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found, | ||
integer, optional | minv, | ||
integer, optional | maxv | ||
) |
Gets a integer value from the list.
References lists::ExecIntFunction::execintfunction(), messages::fatal(), and listfind().
Referenced by acousticssolver(), mainutils::addequationbasics(), mainutils::addequationsolution(), advectiondiffusionsolver(), amgbonds(), amgbondscomplex(), amgbondsgeometric(), amgcoarse(), multigrid::amgsolve(), amgtest(), eigensolve::arpackdampedeigensolve(), eigensolve::arpackeigensolve(), eigensolve::arpackeigensolvecomplex(), eigensolve::arpackstabeigensolve(), asciipointstomesh(), bicgstablouteriteration(), bicgstabouteriteration(), mainutils::blocksolver(), blocksolve::blockstandarditer(), boundaryflux(), boundaryintegrals(), bulkassembly(), bulkintegrals(), checkelementequation(), checklatentheat(), solverutils::checkpassiveelement(), checkstepsizeblock(), clusteringmethods::chooseclusternodes(), choosecoarsenodes(), clusterextrudedmesh(), meshutils::clusternodesbydirection(), cmgbonds(), cmgclusterform(), multigrid::cmgsolve(), compatiblerelaxation(), complexinterpolatef2c(), compressibilityscale(), compressiblens(), solverutils::computechange(), computemasscenter(), solverutils::computenorm(), concentratedloads(), coupledconstraintassembly(), mainutils::coupledsolver(), cr_csgs(), blocksolve::createblockvariable(), createisotherm(), meshutils::createlinemesh(), elementutils::creatematrix(), dcrboundaryresidual(), dcrcomplexsolver(), dcredgeresidual(), dcrinsideresidual(), meshutils::detectextrudedstructure(), solverutils::determinesoftlimiter(), materialmodels::effectiveviscosity(), elastboundaryresidual(), elastedgeresidual(), elasticsolver(), elastinsideresidual(), electricboundaryresidual(), electricedgeresidual(), electricinsideresidual(), electrolytematerialparameters(), eliminateperiodic(), elmersolver(), execsimulation(), extractzerolevel(), fetisolve::fetiproject(), findoptimum(), meshutils::findrigidbodyfixingnodes(), flowboundaryresidual(), flowedgeresidual(), flowinsideresidual(), flowsolver(), forcecompute(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), freesurfacereduced(), fullitersolver(), gcrouteriteration(), generalcurrent(), generalelectricflux(), geneticoptimize(), defutils::getbodyforceid(), defutils::getequationid(), defutils::geticid(), defutils::getinteger(), getjouleheat(), defutils::getmaterialid(), particleutils::getmaterialpropertyinmesh(), particleutils::getparticleelementintersection(), gidoutputsolver(), multigrid::gmgsolve(), gmshoutputsolver(), heatboundaryresidual(), heatedgeresidual(), heatinsideresidual(), heatsolver(), helmholtz_smoluchowski_comp(), helmholtzsolver(), initcond(), initializeoutputlevel(), innerouteriteration(), interpolatef2c(), interpolatef2cdistance(), interpolatemeshtomeshq(), itersolve::itersolver(), differentials::jouleheat(), kesolver(), komega(), levelsetdistance(), levelsetintegrate(), levelsetsolver(), levelsettimestep(), listgetangularfrequency(), meshutils::loadmesh(), modeldescription::loadmodel(), particleutils::locateparticleinmeshmarch(), differentials::lorentzforce(), lorentzforceave(), lumpedcartesianmass(), lumpedfluidicforce(), magneticw1solver(), meshutils::makepermusingmask(), particleutils::markinternalelements(), meltingheat(), meshutils::meshextrude(), meshsolver(), smoothers::mgsmooth(), monolithicsolve(), solverutils::mortarrobinsolver(), freesurface::moveboundary(), movingelstatsolver(), multigrid::msolveractivate(), directsolve::mumps_solvesystem(), directsolve::mumpslocal_factorize(), optimalsolutionupdate(), outletcompute(), outletdx(), outletdy(), outletinit(), paralleleigensolve::parallelarpackeigensolve(), parallelprojecttoplane(), particleutils::particleoutputtable(), particleutils::particleoutputvti(), particleutils::particleoutputvtu(), particledynamicsstuff::particlewallproc(), phasechangesolve(), multigrid::pmgsolve(), meshutils::pointinmesh(), poissonbemsolver(), poissonboltzmannsolve(), polylineintegrals(), preconditioningiteration(), pressuresolver(), projecttoplane(), radiationfactors(), rateofchangesolver(), adaptive::refinemesh(), restart(), resulttoresult(), reynoldspostprocess(), reynoldspostprocess_init(), reynoldssolver(), rigidbody(), rigidmeshmapper(), saveclusters(), savedependence(), saveline(), savematerials(), savescalars(), solverutils::setdirichletboundaries(), solverutils::setnodalloads(), setpermutationboundaries(), simplexoptimize(), smitcsolver(), solverutils::solveharmonicsystem(), solverutils::solvelinearsystem(), spalartallmaras(), sparitersolve::sparitersolver(), meshutils::splitmeshequal(), sstkomega(), statcurrentsolver(), statelecforce(), statelecsolver(), statmagsolver(), steadyphasechange(), stokessolver(), directsolve::superlu_solvesystem(), transientphasechange(), transportequationsolver(), solverutils::updateexportedvariables(), v2f(), v2f_ldm(), velocitylocalmatrix(), and velocitysolver().
recursive function lists::listgetintegerarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found | ||
) |
Gets a integer array from the list.
References lists::ExecIntFunction::execintfunction(), messages::fatal(), and listfind().
Referenced by addsolvers(), amgsweep(), blocksolve::blockinitmatrix(), blocksolve::blockmatrixprec(), blocksolve::blockstandarditer(), boundaryassembly(), meshutils::clusternodesbydirection(), cmgsweep(), solverutils::computenorm(), coupledconstraintassembly(), blocksolve::createblockvariable(), elementutils::creatematrix(), elmerpostoutputsolver(), elmersolver(), gmgsweep(), initializeoutputlevel(), meshutils::loadmesh(), magnetodynamicscalcfields_init0(), smoothers::mgsmooth(), parallelprojecttoplane(), particleutils::particleboxcontact(), particleutils::particleboxperiodic(), particleutils::particleoutputgmsh(), multigrid::pmgsolve(), projecttoplane(), resulttoresult(), savescalars(), solverutils::setdirichletboundaries(), solverutils::setnodalloads(), mainutils::solveractivate(), and vtuoutputsolver().
recursive function lists::listgetlogical | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found | ||
) |
Gets a logical value from the list, if not found return False.
References listfind().
Referenced by acousticssolver(), mainutils::addequationbasics(), mainutils::addequationsolution(), addsolvers(), advectiondiffusionsolver(), amgbonds(), amgpositivebonds(), multigrid::amgsolve(), eigensolve::arpackdampedeigensolve(), eigensolve::arpackeigensolve(), eigensolve::arpackeigensolvecomplex(), eigensolve::arpackstabeigensolve(), solverutils::averageboundarynormals(), bicgstablouteriteration(), bicgstabouteriteration(), blocksolve::blockmatrixprec(), blocksolve::blockpickmatrix(), blocksolve::blocksolveint(), mainutils::blocksolver(), blocksolve::blockstandarditer(), mainutils::blocksystemassembly(), boundaryassembly(), boundaryintegrals(), boundarystatistics(), solverutils::calculatenodalweights(), calculatestresses(), checkcircleboundary(), checkelementequation(), checklatentheat(), solverutils::checknormaltangentialboundary(), checkntelement(), directsolve::cholmod_solvesystem(), choosecoarsenodes(), cmgclusterform(), multigrid::cmgsolve(), complexinterpolatef2c(), compressibilityscale(), compressibilitysolver(), compressiblens(), solverutils::computechange(), computestress(), meshutils::coordinatetransformation(), coordinatetransformationnodal(), mainutils::coupledsolver(), blocksolve::createblockvariable(), createisotherm(), createlistforsaving(), elementutils::creatematrix(), crs_clustermatrixcreate(), crsmatrix::crs_zerorow(), dcrcomplexsolver(), defutils::default1stordertimeglobal(), defutils::defaultfinishassembly(), meshutils::detectextrudedstructure(), solverutils::determinesoftlimiter(), dxoutputsolver(), elastboundaryresidual(), elastedgeresidual(), elasticsolver(), elastinsideresidual(), elementsizesolver(), eliminatedirichlet(), eliminateperiodic(), elmerpostoutputsolver(), elmersolver(), execsimulation(), extractzerolevel(), solverutils::fct_correction(), fetisolve::feti(), filtertimeseries(), findoptimum(), findpullboundary(), meshutils::findrigidbodyfixingnodes(), flowinsideresidual(), flowsolver(), forcecompute(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), vtklegacyfile::freesurface(), freesurfacereduced(), fullitersolver(), gcrouteriteration(), gebhardtfactors(), defutils::getelementdofs(), defutils::getelementnofbdofs(), defutils::getelementnofdofs(), defutils::getlogical(), meshutils::getmaxdefs(), multigrid::gmgsolve(), heatsolver(), helmholtz_smoluchowski_comp(), helmholtzsolver(), initializeoutputlevel(), particleutils::initializeparticles(), solverutils::initializetimestep(), initialpermutation(), innerouteriteration(), interpolatef2c(), interpolatef2cdistance(), itersolve::itersolver(), differentials::jouleheat(), levelsetcurvature(), levelsetdistance(), levelsetintegrate(), levelsetsolver(), levelsettimestep(), solverutils::linearsystemmultiply(), listgetlogicalanybc(), listgetlogicalanybodyforce(), listgetlogicalanyequation(), listgetlogicalanymaterial(), meshutils::loadmesh(), modeldescription::loadmodel(), particleutils::locateparticleinmeshmarch(), particleutils::locateparticles(), lumpedfluidicforce(), lumpedsprings(), magneticw1solver(), elementutils::makelistmatrix(), meshutils::makepermusingmask(), matrixbandwidthoptimize(), freesurface::meancurvature(), meltingheat(), meshsolver(), meshsolver_init(), meshutils::meshstabparams(), movingelstatsolver(), multigrid::multigridsolve(), directsolve::mumps_solvesystem(), directsolve::mumpslocal_factorize(), directsolve::mumpslocal_solvenullspace(), directsolve::mumpslocal_solvesystem(), optimalsolutionupdate(), outletcompute(), meshutils::overlayintefacemeshes(), paralleleigensolve::parallelarpackeigensolve(), parallelutils::parallelinitmatrix(), parallelprojecttoplane(), directsolve::pardiso_solvesystem(), particleutils::particleboxcontact(), particleutils::particleboxperiodic(), particlefieldinteraction(), particleutils::particleoutputtable(), particleutils::particleoutputvti(), particleutils::particleoutputvtu(), particlewallcontact(), meshutils::periodicprojector(), phasechangesolve(), phasechangesolve_init(), pmggetelementdofs(), multigrid::pmgsolve(), meshutils::pointinmesh(), poissonboltzmannsolve(), freesurface::poissonsolve(), pressuresolver(), projecttoplane(), radiationfactors(), adaptive::refinemesh(), resettimer(), reynoldspostprocess(), reynoldspostprocess_init(), reynoldssolver_init(), rigidbody(), savecurrent(), savegriddata(), saveline(), particleutils::saveparticledata(), modeldescription::saveresult(), savescalars(), savetopost(), solverutils::setdirichletboundaries(), setelementvalues(), setinitialconditions(), setperiodicboundariespass1(), setperiodicboundariespass2(), solverutils::sgetelementdofs(), mainutils::singlesolver(), smitcsolver(), solvecoupled(), mainutils::solveequations(), solverutils::solveharmonicsystem(), solverutils::solvelinearsystem(), mainutils::solveractivate(), solverutils::solvesystem(), solverutils::solvewithlinearrestriction(), sparitersolve::sparitersolver(), directsolve::spqr_solvesystem(), statcurrentsolver(), statcurrentsolver_init(), statelecforce(), statelecsolver(), statelecsolver_init(), statmagcartesiancompose(), statmagsolver(), statmagsolver_init(), steadyphasechange(), stokessolver(), stresssolver(), structuredprojecttoplane(), directsolve::superlu_solvesystem(), transientphasechange(), directsolve::umfpack_solvesystem(), meshutils::updatesolvermesh(), v2f(), variableget(), velocitylocalmatrix(), velocitysolver(), viewfactors(), vtuoutputsolver(), writedata(), and modeldescription::writepostfile().
logical function lists::listgetlogicalanybc | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is True in any boundary condition.
References listgetlogical().
logical function lists::listgetlogicalanybodyforce | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is True in any body force.
References listgetlogical().
logical function lists::listgetlogicalanyequation | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is True in any equation.
References listgetlogical().
Referenced by statcurrentsolver().
logical function lists::listgetlogicalanymaterial | ( | type(model_t) | Model, |
character(len=*) | Name | ||
) |
Check if the keyword is True in any material.
References listgetlogical().
logical function lists::listgetnamespace | ( | type(varying_string) | str) |
Returns the active namespace.
Referenced by blocksolve::blockkryloviter(), blocksolve::blockmatrixprec(), blocksolve::blocksolveint(), mainutils::blocksolver(), solverutils::fct_correction(), fetisolve::fetifloatingdomain(), fetisolve::fetiproject(), and listfind().
recursive function lists::listgetreal | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
integer | N, | ||
integer, dimension(:) | NodeIndexes, | ||
logical, optional | Found, | ||
real(kind=dp), optional | minv, | ||
real(kind=dp), optional | maxv | ||
) |
Gets a real valued parameter in each node of an element.
References lists::ExecConstRealFunction::execconstrealfunction(), lists::ExecRealFunction::execrealfunction(), messages::fatal(), generalutils::i2s(), generalutils::interpolatecurve(), listfind(), listparsestrtovalues(), and variableget().
Referenced by acousticssolver(), advectiondiffusionsolver(), solverutils::averageboundarynormals(), boundaryassembly(), boundaryintegrals(), bulkassembly(), bulkintegrals(), solverutils::checknormaltangentialboundary(), checkntelement(), solverutils::checkpassiveelement(), compressibilityscale(), computemasscenter(), radiation::computeradiationcoeff(), radiation::computeradiationload(), computestressandstrain(), dcrboundaryresidual(), dcrcomplexsolver(), dcredgeresidual(), dcrinsideresidual(), solverutils::determinesoftlimiter(), effectiveheatcapacity(), materialmodels::effectiveviscosity(), elastboundaryresidual(), elastedgeresidual(), elasticsolver(), elastinsideresidual(), electricboundaryresidual(), electricinsideresidual(), electrolytematerialparameters(), extractzerolevel(), flowboundaryresidual(), flowedgeresidual(), flowinsideresidual(), flowsolver(), elementutils::fluxintegrate(), forcecompute(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), freesurfacesolver(), gebhardtfactors(), generalelectricflux(), defutils::getcreal(), getjouleheat(), particleutils::getmaterialpropertyinmesh(), defutils::getparentmatprop(), defutils::getreal(), heatboundaryresidual(), heatinsideresidual(), helmholtz_smoluchowski_comp(), helmholtzbemsolver(), helmholtzsolver(), porousmaterials::hydraulicconductivity(), differentials::jouleheat(), levelsetsolver(), levelsettimestep(), elementutils::lineintegrate(), listgetcreal(), listgetrealarray(), differentials::lorentzforce(), lorentzforceave(), lumpedcartesianmass(), lumpedfluidicforce(), magneticw1solver(), meltingheat(), modifyboundaryvalues(), phasechangesolve(), poissonbemsolver(), poissonboltzmannsolve(), polylineintegrals(), pressuresolver(), radiationfactors(), rateofchangesolver(), saveboundaryvalues(), savematerials(), setboundaryconditions(), setelementloads(), setelementvalues(), setlimitervalues(), setpointloads(), setpointvalues(), statcurrentsolver(), statelecboundaryutils::statelecboundarygeneric(), statmagsolver(), elementutils::surfaceintegrate(), transientphasechange(), transportequationsolver(), solverutils::updateexportedvariables(), velocitylocalmatrix(), elementutils::volumeintegrate(), and porousmaterials::watercontent().
recursive subroutine lists::listgetrealarray | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
real(kind=dp), dimension(:,:,:), pointer | F, | ||
integer | N, | ||
integer, dimension(:) | NodeIndexes, | ||
logical, optional | Found | ||
) |
Gets a real array from the list by its name,.
References lists::ExecConstRealFunction::execconstrealfunction(), lists::ExecRealArrayFunction::execrealarrayfunction(), messages::fatal(), g(), generalutils::i2s(), generalutils::interpolatecurve(), listfind(), listgetreal(), listparsestrtovalues(), and variableget().
Referenced by advectiondiffusionsolver(), bcassembly(), boundaryflux(), boundaryintegrals(), bulkassembly(), bulkintegrals(), dcrboundaryresidual(), dcredgeresidual(), dcrinsideresidual(), electricboundaryresidual(), electricedgeresidual(), electricinsideresidual(), generalcurrent(), generalelectricflux(), defutils::getrealarray(), heatboundaryresidual(), heatedgeresidual(), heatinsideresidual(), heatsolver(), initcond(), inputtensor(), stresslocal::inputtensor(), inputvector(), navierstokes::navierstokescompose(), polylineintegrals(), setelementloads(), setelementvalues(), setinitialconditions(), setpointloads(), setpointvalues(), statcurrentsolver(), and statelecforce().
recursive function lists::listgetrealatip | ( | type(valuehandle_t) | Handle, |
type(valuelist_t), pointer | List, | ||
real(kind=dp), dimension(:), optional | Basis, | ||
character(len=*), optional | Name, | ||
logical, optional | Found, | ||
type(element_t), optional, pointer | Element, | ||
real(kind=dp), optional | minv, | ||
real(kind=dp), optional | maxv | ||
) |
Gets a real valued parameter in the Gaussian integration point defined by the local basis function. To speed up things there is a handle associated to the given keyword (Name).
References lists::ExecConstRealFunction::execconstrealfunction(), lists::ExecRealFunction::execrealfunction(), messages::fatal(), generalutils::i2s(), generalutils::interpolatecurve(), listfind(), listparsestrtovalues(), and variableget().
Referenced by listinitrealatip().
recursive function lists::listgetstring | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name, | ||
logical, optional | Found | ||
) |
Gets a string from the list by its name, if not found return empty string.
References listfind().
Referenced by acousticssolver(), solverutils::add1stordertime(), solverutils::add1stordertime_crs(), solverutils::add2ndordertime(), mainutils::addequationbasics(), mainutils::addequationsolution(), addsolvers(), addtosavelist(), addvtuoutputsolverhack(), advectiondiffusionsolver(), multigrid::amgsolve(), eigensolve::arpackdampedeigensolve(), eigensolve::arpackeigensolve(), eigensolve::arpackeigensolvecomplex(), eigensolve::arpackstabeigensolve(), blocksolve::blockinitmatrix(), mainutils::blocksystemassembly(), blocksystemdirichlet(), checklatentheat(), mainutils::checksolveroptions(), solverutils::checkstepsize(), checkstepsizeblock(), clusteringmethods::chooseclusternodes(), multigrid::cmgsolve(), compatiblerelaxation(), compressibilityscale(), compressiblens(), solverutils::computechange(), meshutils::coordinatetransformation(), coupledconstraintassembly(), mainutils::coupledsolver(), coupledsystemdirichlet(), coupledtosinglevector(), creategridparticles(), meshutils::createlinemesh(), createlistforsaving(), datatofieldsolver(), dcrcomplexsolver(), defutils::default1stordertimeglobal(), defutils::defaultfinishassembly(), defutils::defaultupdateequationsr(), meshutils::detectextrudedstructure(), directsolve::directsolver(), divergencesolver(), materialmodels::effectiveconductivity(), materialmodels::effectiveviscosity(), elasticsolver(), elastinsideresidual(), elmerpostoutputsolver(), elmersolver(), execsimulation(), extractzerolevel(), filtertimeseries(), findoptimum(), solverutils::finishassembly(), flowboundaryresidual(), flowinsideresidual(), flowsolver(), fluxsolver(), forcecompute(), forceintegrate(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), gcrouteriteration(), gebhardtfactors(), getjouleheat(), defutils::getstring(), multigrid::gmgsolve(), gmshoutputsolver(), guessoptimum(), heatboundaryresidual(), heatinsideresidual(), helmholtz_smoluchowski_comp(), helmholtzbemsolver(), initcond(), initializeparticles(), particleutils::initializeparticles(), solverutils::initializetimestep(), itersolve::itersolver(), levelsetcurvature(), levelsetdistance(), levelsetintegrate(), solverutils::linearsystemmultiply(), meshutils::loadmesh(), modeldescription::loadmodel(), modeldescription::loadrestartfile(), lorentzforcenodal(), lumpedcartesianmass(), lumpedsprings(), meshutils::meshstabparams(), smoothers::mgsmooth(), monolithicsolve(), solverutils::mortarrobinsolver(), movingelstatsolver(), multigrid::msolveractivate(), multigrid::multigridsolve(), openparticlefile(), opertoparopermap(), optimalsolutionupdate(), outletcompute(), paralleleigensolve::parallelarpackeigensolve(), parallelprojecttoplane(), parallelprojecttoplane_init(), particleutils::particleboxperiodic(), particlefieldinteraction(), particleutils::particleoutputgmsh(), particleutils::particleoutputtable(), particleutils::particleoutputvti(), particleutils::particleoutputvtu(), particletracker(), particlewallcontact(), phasechangesolve(), multigrid::pmgsolve(), meshutils::pointinmesh(), poissonbemsolver(), poissonboltzmannsolve(), radiationfactors(), rateofchangesolver(), adaptive::refinemesh(), remesh(), restart(), resulttopost(), resulttoresult(), reynoldssolver_init(), saveboundaryvalues(), savecurrent(), savedependence(), savegriddata(), saveline(), savematerials(), particleutils::saveparticledata(), savescalars(), savetopost(), scalarpotentialsolver(), modeldescription::setcoordinatesystem(), setinitialconditions(), setparticlevelocities(), mainutils::singlesolver(), singletocoupledvector(), solvecoupled(), mainutils::solveequations(), solvefull(), solverutils::solveharmonicsystem(), solverutils::solvelinearsystem(), mainutils::solveractivate(), solverutils::solvesystem(), solverutils::solvewithlinearrestriction(), sparitersolve::sparitersolver(), sparitersolve::splitmatrix(), splitonelevel(), statcurrentsolver(), statelecboundaryutils::statelecboundarygeneric(), statelecforce(), statelecsolver(), steadyphasechange(), stokessolver(), stressinsideresidual(), stresssolver(), structuredprojecttoplane(), transientphasechange(), transportequationsolver(), directsolve::umfpack_solvesystem(), solverutils::updateexportedvariables(), meshutils::updatesolvermesh(), variableget(), velocitysolver(), viewfactors(), vorticitysolver(), writenamesfile(), modeldescription::writepostfile(), writepvtifile(), writepvtufile(), writevtifile(), and writevtufile().
recursive subroutine lists::listinitrealatip | ( | type(valuehandle_t) | Handle, |
character(len=*) | Section, | ||
character(len=*) | Name, | ||
real(kind=dp), optional | minv, | ||
real(kind=dp), optional | maxv | ||
) |
Initializes the handle to save just a little bit for constant valued. This is not mandatory but may still be used.
References messages::fatal(), messages::info(), listfind(), and listgetrealatip().
subroutine lists::listparsestrtovalues | ( | character(len=*) | str, |
integer | slen, | ||
integer | ind, | ||
character(len=*) | name, | ||
real(kind=dp), dimension(:) | T, | ||
integer | count, | ||
logical | AllGlobal | ||
) |
References messages::fatal(), and variableget().
Referenced by listgetreal(), listgetrealarray(), and listgetrealatip().
subroutine lists::listremove | ( | type(valuelist_t), pointer | List, |
character(len=*) | Name | ||
) |
Removes an entry from the list by its name.
References listdelete(), and stringtolowercase().
Referenced by addvtuoutputsolverhack(), eigensolve::arpackeigensolve(), eigensolve::arpackstabeigensolve(), mainutils::blocksolver(), computestress(), computestressandstrain(), mainutils::coupledsolver(), createlistforsaving(), deletetimer(), paralleleigensolve::parallelarpackeigensolve(), radiationfactors(), sectioncontents(), and stresssolver().
subroutine lists::listsetnamespace | ( | character(len=*) | str) |
Sets a namespace string that is used in all list get commands to check for an entry with the namespace, and then continuing to check the one without.
Referenced by multigrid::amgsolve(), blocksolve::blockkryloviter(), blocksolve::blockmatrixprec(), blocksolve::blocksolveint(), mainutils::blocksolver(), blocksolve::blockstandarditer(), multigrid::cmgsolve(), computestress(), computestressandstrain(), solverutils::fct_correction(), fetisolve::fetifloatingdomain(), fetisolve::fetiproject(), multigrid::gmgsolve(), initcond(), jfixpotentialsolver(), solverutils::mortarrobinsolver(), multigrid::msolveractivate(), multigrid::pmgsolve(), setinitialconditions(), and mainutils::solveractivate().
type(matrix_t) function, pointer lists::meshprojector | ( | type(mesh_t) | Mesh1, |
type(mesh_t) | Mesh2, | ||
logical, optional | UseQuadrantTree, | ||
logical, optional | Trans | ||
) |
References interpolatemeshtomeshq().
Referenced by multigrid::gmgsolve(), meshutils::nodalprojector(), meshutils::nodalprojector2(), meshutils::weightedprojector(), and meshutils::weightedprojector2().
character(len=max_name_len) function lists::nextfreekeyword | ( | character(len=*) | keyword0, |
type(valuelist_t), pointer | List | ||
) |
Given the body of a keyword find the 1st free keyword in the list structure. The intended use for this is in Solver_init to decleare exported variables without the risk of running over some existing ones.
References listcheckpresent().
Referenced by mainutils::addequationbasics(), bsolver_init(), datatofieldsolver_init(), fluxsolver_init(), meshsolver_init(), phasechangesolve_init(), reynoldspostprocess_init(), reynoldssolver_init(), richardssolver_init(), shearratesolver_init(), statcurrentsolver_init(), statelecsolver_init(), statmagcartesiancompose(), statmagsolver_init(), stresssolver_init(), transientphasechange_init(), and vorticitysolver_init().
subroutine lists::resettimer | ( | character(*) | TimerName) |
A timer that uses a list structure to store the times making in generally applicable without any upper limit on the number of timers. This resets the timer.
References listaddconstreal(), and listgetlogical().
Referenced by distancesolver1(), meshutils::periodicprojector(), and meshutils::splitmeshequal().
integer function lists::stringtolowercase | ( | character(len=*), intent(out) | to, |
character(len=*), intent(in) | from, | ||
logical, intent(in), optional | same_len | ||
) |
Changes the string to all lower case to allow string comparison.
Referenced by elementutils::creatematrix(), listadd(), listaddconstreal(), listaddconstrealarray(), listadddepreal(), listadddeprealarray(), listaddinteger(), listaddintegerarray(), listaddlogical(), listaddstring(), listfind(), listremove(), resultoutputsolver(), variableadd(), and variableget().
subroutine lists::variableadd | ( | type(variable_t), pointer | Variables, |
type(mesh_t), target | Mesh, | ||
type(solver_t), target | Solver, | ||
character(len=*) | Name, | ||
integer | DOFs, | ||
real(kind=dp), dimension(:), pointer | Values, | ||
integer, dimension(:), optional, pointer | Perm, | ||
logical, optional | Output, | ||
logical, optional | Secondary, | ||
integer, optional | TYPE | ||
) |
Adds a new variable to the list of variables. The structures need to be allocated externally beforehand.
References solver(), and stringtolowercase().
Referenced by mainutils::addequationbasics(), mainutils::addequationsolution(), addmeshcoordinatesandtime(), solverutils::calculatenodalweights(), calculatestresses(), computestressandstrain(), meshutils::coordinatetransformation(), mainutils::coupledsolver(), createnodes(), meshutils::detectextrudedstructure(), elasticsolver(), filtertimeseries(), gebhardtfactors(), modeldescription::getnodalelementsize(), multigrid::gmgsolve(), interpolatemeshtomesh(), modeldescription::loadrestartfile(), particleutils::particlevariablecreate(), phasechangesolve(), poissonboltzmannsolve(), adaptive::refinemesh(), resulttopost(), resulttoresult(), rigidbody(), saveboundaryvalues(), saveclusters(), savematerials(), savescalars(), solverutils::solvewithlinearrestriction(), steadyphasechange(), stresssolver(), variableaddvector(), and variableget().
subroutine lists::variableaddvector | ( | type(variable_t), pointer | Variables, |
type(mesh_t), target | Mesh, | ||
type(solver_t), target | Solver, | ||
character(len=*) | Name, | ||
integer, optional | DOFs, | ||
real(kind=dp), dimension(:), optional, pointer | Values, | ||
integer, dimension(:), optional, pointer | Perm, | ||
logical, optional | Output, | ||
logical, optional | Secondary, | ||
logical, optional | Global, | ||
real(kind=dp), optional | InitValue | ||
) |
For vectors the individual components are added also to the list of variables. This routine makes the addition of vectors less laborious. Also allocates the field values if not given in the parameter list.
References solver(), and variableadd().
Referenced by mainutils::addequationsolution(), computestress(), blocksolve::createblockvariable(), createnodes(), defutils::defaultvariableadd(), elasticsolver(), solverutils::fct_correction(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), jfixpotentialsolver(), magneticw1solver(), movingelstatsolver(), particlefieldinteraction(), particlewallcontact(), particledynamicsstuff::particlewallproc(), rigidmeshmapper(), setadvectedfield(), statcurrentsolver(), statelecforce(), and structuredprojecttoplane().
recursive function lists::variableget | ( | type(variable_t), pointer | Variables, |
character(len=*) | Name, | ||
logical, optional | ThisOnly, | ||
character(len=*), optional | MaskName | ||
) |
Find a variable by its name from the list of variables. If it not to be found in the current mesh, interpolation between meshes is automatically requested for.
References messages::info(), initialpermutation(), interpolatemeshtomesh(), listgetlogical(), listgetstring(), stringtolowercase(), and variableadd().
Referenced by acousticshellinterface(), acousticssolver(), solverutils::add1stordertime(), solverutils::add1stordertime_crs(), mainutils::addequationbasics(), mainutils::addequationsolution(), addmeshcoordinatesandtime(), advectiondiffusionsolver(), advectionreactionsolver(), applyprojector(), solverutils::averageboundarynormals(), meshutils::backcoordinatetransformation(), blocksolve::blockinitmatrix(), mainutils::blocksystemassembly(), blocksystemdirichlet(), boundaryflux(), bsolver(), bulkassembly(), solverutils::calculatenodalweights(), calculatestresses(), solverutils::checkstepsize(), checkstepsizeblock(), compressibilityscale(), compressibilitysolver(), solverutils::computechange(), computestress(), computestressandstrain(), computevarloads(), meshutils::coordinatetransformation(), coupledconstraintassembly(), mainutils::coupledsolver(), coupledsystemdirichlet(), coupledtosinglevector(), blocksolve::createblockvariable(), createlistforsaving(), createnodes(), datatofieldsolver(), defutils::default1stordertimeglobal(), meshutils::detectextrudedstructure(), solverutils::determinesoftlimiter(), materialmodels::effectiveviscosity(), elasticsolver(), elastinsideresidual(), elmerpostoutputsolver(), solverutils::fct_correction(), filtertimeseries(), flowboundaryresidual(), flowinsideresidual(), flowsolver(), fluxsolver(), forcecompute(), fourierdiffusion3dsolver(), fourierdiffusionsolver(), freesurfacereduced(), freesurfacesolver(), defutils::getcouplediter(), getjouleheat(), getlocalalevelocity(), modeldescription::getnodalelementsize(), defutils::getnofeigenmodes(), defutils::getnonliniter(), defutils::getscalarlocaleigenmode(), defutils::getscalarlocalsolution(), defutils::gettime(), defutils::gettimestep(), defutils::gettimestepinterval(), defutils::gettimestepsize(), defutils::getvectorlocaleigenmode(), defutils::getvectorlocalsolution(), gidoutputsolver(), multigrid::gmgsolve(), gmshoutputsolver(), heatinsideresidual(), heatsolver(), helmholtz_smoluchowski_comp(), helmholtzbemsolver(), helmholtzsolver(), initializeparticles(), particleutils::initializeparticles(), interpolatemeshtomesh(), interpolatemeshtomeshq(), invalidatevariable(), solverutils::invalidatevariable(), isosurfacesolver(), jfixpotentialsolver(), differentials::jouleheat(), kesolver(), levelsetcurvature(), levelsetdistance(), levelsetintegrate(), levelsettimestep(), solverutils::linearsystemmultiply(), listgetderivvalue(), listgetreal(), listgetrealarray(), listgetrealatip(), listparsestrtovalues(), modeldescription::loadrestartfile(), differentials::lorentzforce(), lumpedfluidicforce(), magneticsolver(), magneticw1solver(), magnetodynamics2d(), magnetodynamics2dharmonic(), magnetodynamicscalcfields(), magnetodynamicscalcfields_init(), meltingheat(), meshsolver(), freesurface::moveboundary(), multigrid::msolveractivate(), nodaldisplacementpenalty(), normalsolver(), optimalsolutionupdate(), outletcompute(), parallelprojecttoplane(), particlefieldinteraction(), particleutils::particleoutputgmsh(), particleutils::particleoutputtable(), particletracker(), particleutils::particlevariableget(), particlewallcontact(), particledynamicsstuff::particlewallproc(), phasechangesolve(), poissonbemsolver(), poissonboltzmannsolve(), poissonsolver(), pressuresolver(), projecttoplane(), rateofchangesolver(), adaptive::refinemesh(), remap(), restart(), reynoldspostprocess(), reynoldssolver(), richardspostprocess(), richardssolver(), rigidmeshmapper(), saveboundaryvalues(), saveline(), savematerials(), savescalars(), setadvectedfield(), setparticlevelocities(), setperiodicboundariespass1(), shearratesolver(), singletocoupledvector(), mainutils::solveequations(), solverutils::solvelinearsystem(), mainutils::solveractivate(), solverutils::solvewithlinearrestriction(), statcurrentsolver(), statelecforce(), statelecsolver(), statmagsolver(), steadyphasechange(), streamsolver(), stressinsideresidual(), stresssolver(), structuredflowline(), structuredmeshmapper(), structuredprojecttoplane(), transientphasechange(), transportequationsolver(), solverutils::updateexportedvariables(), meshutils::updatesolvermesh(), uzawa(), vanka(), variablegetn(), velocitysolver(), vorticitysolver(), vtuoutputsolver(), modeldescription::writepostfile(), writepvtifile(), writepvtufile(), writevtifile(), and writevtufile().
integer, parameter lists::list_type_constant_scalar = 1 |
integer, parameter lists::list_type_constant_scalar_str = 8 |
integer, parameter lists::list_type_constant_tensor = 2 |
integer, parameter lists::list_type_constant_tensor_str = 9 |
integer, parameter lists::list_type_integer = 7 |
integer, parameter lists::list_type_logical = 5 |
integer, parameter lists::list_type_string = 6 |
integer, parameter lists::list_type_variable_scalar = 3 |
integer, parameter lists::list_type_variable_scalar_str = 10 |
integer, parameter lists::list_type_variable_tensor = 4 |
integer, parameter lists::list_type_variable_tensor_str = 11 |