src/base/condli.f90 File Reference

| programmer's documentation

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions/Subroutines
condli.f90 File Reference

Translation of the boundary conditions given by cs_user_boundary_conditions in a form that fits to the solver. More...

## Functions/Subroutines
subroutine | condli (nvar, nscal, iterns, isvhb, icodcl, isostd, dt, rtp, rtpa, propce, rcodcl, coefa, coefb, visvdr, hbord, theipb, frcxt)
subroutine | set_dirichlet_scalar (coefa, cofaf, coefb, cofbf, pimp, hint, hext)
subroutine | set_dirichlet_vector (coefa, cofaf, coefb, cofbf, pimpv, hint, hextv)
subroutine | set_dirichlet_vector_ggdh (coefa, cofaf, coefb, cofbf, pimpv, hint, hextv)
subroutine | set_neumann_scalar (coefa, cofaf, coefb, cofbf, qimp, hint)
subroutine | set_neumann_vector (coefa, cofaf, coefb, cofbf, qimpv, hint)
subroutine | set_neumann_vector_ggdh (coefa, cofaf, coefb, cofbf, qimpv, hint)
subroutine | set_generalized_sym_scalar (coefau, cofafu, coefav, cofafv, coefaw, cofafw, coefbu, cofbfu, coefbv, cofbfv, coefbw, cofbfw, pimpv, qimpv, vect, hint, normal)
subroutine | set_generalized_sym_vector (coefa, cofaf, coefb, cofbf, pimpv, qimpv, hint, normal)
subroutine | set_convective_outlet_scalar (coefa, cofaf, coefb, cofbf, pimp, cfl, hint)
subroutine | set_convective_outlet_vector (coefa, cofaf, coefb, cofbf, pimpv, cflv, hint)
subroutine | set_convective_outlet_vector_ggdh (coefa, cofaf, coefb, cofbf, pimpv, cflv, hint)
subroutine | set_dirichlet_conv_neumann_diff_scalar (coefa, cofaf, coefb, cofbf, pimp, qimp)

## Detailed Description

Translation of the boundary conditions given by cs_user_boundary_conditions in a form that fits to the solver.

The values at a border face stored in the face center of the variable and its diffusive flux are written as:

and

where is the value of the variable at the neighbooring cell.

Warning:

- if we consider an increment of a variable, the boundary conditions read:

  and

- for a vector field such as the veclocity the boundary conditions may read:

  and

  where and are 3x3 tensor matrix which coupled veclocity components next to a boundary.

## Function/Subroutine Documentation

subroutine condli | ( | integer | nvar,
|  | integer | nscal,
|  | integer | iterns,
|  | integer | isvhb,
|  | integer, dimension(nfabor,nvarcl) | icodcl,
|  | integer, dimension(nfabor+1) | isostd,
|  | double precision, dimension(ncelet) | dt,
|  | double precision, dimension(ncelet,*) | rtp,
|  | double precision, dimension(ncelet,*) | rtpa,
|  | double precision, dimension(ncelet,*) | propce,
|  | double precision, dimension(nfabor,nvarcl,3) | rcodcl,
|  | double precision, dimension(ndimfb,*) | coefa,
|  | double precision, dimension(ndimfb,*) | coefb,
|  | double precision, dimension(ncelet) | visvdr,
|  | double precision, dimension(nfabor) | hbord,
|  | double precision, dimension(nfabor) | theipb,
|  | double precision, dimension(3,ncelet) | frcxt
| ) |  |

Parameters

  [in] | nvar | total number of variables
  [in] | nscal | total number of scalars
  [in] | isvhb | indicator to save exchange coeffient at the walls
  [in] | iterns | iteration number on Navier-Stokes equations
  [in,out] | icodcl | face boundary condition code: 1 Dirichlet 2 Radiative outlet 3 Neumann 4 sliding and 5 smooth wall and 6 rought wall and 9 free inlet/outlet (input mass flux blocked to 0) 13 Dirichlet for the advection operator and Neumann for the diffusion operator
  [in,out] | isostd | indicator for standard outlet and reference face index
  [in] | dt | time step (per cell)
  [in] | rtp,rtpa | calculated variables at cell centers (at current and previous time steps)
  [in] | propce | physical properties at cell centers
  [in,out] | rcodcl | boundary condition values: rcodcl(1) value of the dirichlet rcodcl(2) value of the exterior exchange coefficient (infinite if no exchange) rcodcl(3) value flux density (negative if gain) in w/m2 or roughtness in m if icodcl=6 for the velocity for the pressure for a scalar
  [out] | coefa | explicit boundary condition coefficient
  [out] | coefb | implicit boundary condition coefficient
  [out] | visvdr | viscosite dynamique ds les cellules de bord apres amortisst de v driest
  [out] | hbord | coefficients d'echange aux bords
  [out] | theipb | boundary temperature in (more exaclty the energetic variable)
  [in] | frcxt | external force responsible for the hydrostatic pressure

subroutine set_convective_outlet_scalar | ( | double precision | coefa,
|  | double precision | cofaf,
|  | double precision | coefb,
|  | double precision | cofbf,
|  | double precision | pimp,
|  | double precision | cfl,
|  | double precision | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimp | Flux value to impose
  [in] | cfl | Local Courant number used to convect
  [in] | hint | Internal exchange coefficient

subroutine set_convective_outlet_vector | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | pimpv,
|  | double precision, dimension(3) | cflv,
|  | double precision | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose
  [in] | cflv | Local Courant number used to convect
  [in] | hint | Internal exchange coefficient

subroutine set_convective_outlet_vector_ggdh | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | pimpv,
|  | double precision, dimension(3) | cflv,
|  | double precision, dimension(6) | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose
  [in] | cflv | Local Courant number used to convect
  [in] | hint | Internal exchange coefficient

subroutine set_dirichlet_conv_neumann_diff_scalar | ( | double precision | coefa,
|  | double precision | cofaf,
|  | double precision | coefb,
|  | double precision | cofbf,
|  | double precision | pimp,
|  | double precision | qimp
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimp | Dirichlet value to impose
  [in] | qimp | Flux value to impose

subroutine set_dirichlet_scalar | ( | double precision | coefa,
|  | double precision | cofaf,
|  | double precision | coefb,
|  | double precision | cofbf,
|  | double precision | pimp,
|  | double precision | hint,
|  | double precision | hext
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimp | Dirichlet value to impose
  [in] | hint | Internal exchange coefficient
  [in] | hext | External exchange coefficient (10^30 by default)

subroutine set_dirichlet_vector | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | pimpv,
|  | double precision | hint,
|  | double precision, dimension(3) | hextv
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose
  [in] | hint | Internal exchange coefficient
  [in] | hextv | External exchange coefficient (10^30 by default)

subroutine set_dirichlet_vector_ggdh | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | pimpv,
|  | double precision, dimension(6) | hint,
|  | double precision, dimension(3) | hextv
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose
  [in] | hint | Internal exchange coefficient
  [in] | hextv | External exchange coefficient (10^30 by default)

subroutine set_generalized_sym_scalar | ( | double precision | coefau,
|  | double precision | cofafu,
|  | double precision | coefav,
|  | double precision | cofafv,
|  | double precision | coefaw,
|  | double precision | cofafw,
|  | double precision | coefbu,
|  | double precision | cofbfu,
|  | double precision | coefbv,
|  | double precision | cofbfv,
|  | double precision | coefbw,
|  | double precision | cofbfw,
|  | double precision, dimension(3) | pimpv,
|  | double precision, dimension(3) | qimpv,
|  | double precision, dimension(3) | vect,
|  | double precision | hint,
|  | double precision, dimension(3) | normal
| ) |  |

Parameters

  [out] | coefau | explicit BC coefficient for gradients
  [out] | cofafu | explicit BC coefficient for diffusive flux
  [out] | coefav | explicit BC coefficient for gradients
  [out] | cofafv | explicit BC coefficient for diffusive flux
  [out] | coefaw | explicit BC coefficient for gradients
  [out] | cofafw | explicit BC coefficient for diffusive flux
  [out] | coefbu | implicit BC coefficient for gradients
  [out] | cofbfu | implicit BC coefficient for diffusive flux
  [out] | coefbv | implicit BC coefficient for gradients
  [out] | cofbfv | implicit BC coefficient for diffusive flux
  [out] | coefbw | implicit BC coefficient for gradients
  [out] | cofbfw | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose on the normal component
  [in] | qimpv | Flux value to impose on the tangential components
  [in] | vect | value of the vector at time n
  [in] | hint | Internal exchange coefficient
  [in] | normal | normal

subroutine set_generalized_sym_vector | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | pimpv,
|  | double precision, dimension(3) | qimpv,
|  | double precision | hint,
|  | double precision, dimension(3) | normal
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | pimpv | Dirichlet value to impose on the normal component
  [in] | qimpv | Flux value to impose on the tangential components
  [in] | hint | Internal exchange coefficient
  [in] | normal | normal

subroutine set_neumann_scalar | ( | double precision | coefa,
|  | double precision | cofaf,
|  | double precision | coefb,
|  | double precision | cofbf,
|  | double precision | qimp,
|  | double precision | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | qimp | Flux value to impose
  [in] | hint | Internal exchange coefficient

subroutine set_neumann_vector | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | qimpv,
|  | double precision | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | qimpv | Flux value to impose
  [in] | hint | Internal exchange coefficient

subroutine set_neumann_vector_ggdh | ( | double precision, dimension(3) | coefa,
|  | double precision, dimension(3) | cofaf,
|  | double precision, dimension(3,3) | coefb,
|  | double precision, dimension(3,3) | cofbf,
|  | double precision, dimension(3) | qimpv,
|  | double precision, dimension(6) | hint
| ) |  |

Parameters

  [out] | coefa | explicit BC coefficient for gradients
  [out] | cofaf | explicit BC coefficient for diffusive flux
  [out] | coefb | implicit BC coefficient for gradients
  [out] | cofbf | implicit BC coefficient for diffusive flux
  [in] | qimpv | Flux value to impose
  [in] | hint | Internal exchange coefficient