groups.f90 Source File


This file depends on

sourcefile~~groups.f90~~EfferentGraph sourcefile~groups.f90 groups.f90 sourcefile~constants.f90 constants.f90 sourcefile~groups.f90->sourcefile~constants.f90

Files dependent on this one

sourcefile~~groups.f90~~AfferentGraph sourcefile~groups.f90 groups.f90 sourcefile~dortmund.f90 dortmund.f90 sourcefile~dortmund.f90->sourcefile~groups.f90 sourcefile~temperature_dependence.f90 temperature_dependence.f90 sourcefile~dortmund.f90->sourcefile~temperature_dependence.f90 sourcefile~unifac.f90 unifac.f90 sourcefile~dortmund.f90->sourcefile~unifac.f90 sourcefile~implementations.f90~2 implementations.f90 sourcefile~implementations.f90~2->sourcefile~groups.f90 sourcefile~implementations.f90 implementations.f90 sourcefile~implementations.f90~2->sourcefile~implementations.f90 sourcefile~psrk.f90 psrk.f90 sourcefile~psrk.f90->sourcefile~groups.f90 sourcefile~psrk.f90->sourcefile~temperature_dependence.f90 sourcefile~psrk.f90->sourcefile~unifac.f90 sourcefile~temperature_dependence.f90->sourcefile~groups.f90 sourcefile~unifac.f90->sourcefile~groups.f90 sourcefile~unifac.f90->sourcefile~temperature_dependence.f90 sourcefile~gerg2008.f90 gerg2008.f90 sourcefile~gerg2008.f90->sourcefile~implementations.f90~2 sourcefile~implementations.f90->sourcefile~dortmund.f90 sourcefile~implementations.f90->sourcefile~psrk.f90 sourcefile~implementations.f90->sourcefile~unifac.f90 sourcefile~models.f90 models.f90 sourcefile~models.f90->sourcefile~implementations.f90~2 sourcefile~models.f90->sourcefile~gerg2008.f90 sourcefile~models.f90->sourcefile~implementations.f90 sourcefile~yaeos.f90 yaeos.f90 sourcefile~yaeos.f90->sourcefile~models.f90

Source Code

module yaeos__models_ge_group_contribution_groups
   use yaeos__constants, only: pr
   implicit none

   type :: Groups
      !! # Groups
      !! Derived type used to represent a molecule and its UNIFAC groups.
      !!
      !! # Description
      !! Derived type used to represent a molecule and its UNIFAC groups. Is
      !! necessary to specify the subgroups ids and the subgroups on each
      !! molecule as shown in the example.
      !!
      !! # Examples
      !!
      !! ```fortran
      !!  ! Define toluene molecule groups
      !!  use yaeos, only: Groups
      !!
      !!  type(Groups) :: toluene
      !!
      !!  ! Toluene [ACH, ACCH3]
      !!  toluene%groups_ids = [9, 11] ! Subgroups ids
      !!  toluene%number_of_groups = [5, 1] ! Subgroups occurrences
      !! ```
      !!
      !! # References
      !! 1. [Dortmund Data Bank Software & Separation Technology](https://www.ddbst
      !! .com/published-parameters-unifac.html)
      integer, allocatable :: groups_ids(:)
      !! Indexes (ids) of each subgroup in the main group matrix
      integer, allocatable :: number_of_groups(:)
      !! Occurrences of each subgroup in the molecule
      real(pr) :: surface_area
      !! Molecule surface area \(q\)
      real(pr) :: volume
      !! Molecule volume \(r\)
   end type Groups
end module yaeos__models_ge_group_contribution_groups