Constraints

This library provides the functionality to limit the solute concentration to be between prescribed minimum and maximum values.

Installation

Pre-requisites:

In the directChillFoam/src/fvConstraints directory, run:

$ wmake libso

C++ Classes

class limitSolute : public fvConstraint

Limits the solute concentration to be between minimum and maximum values.

Usage

Example usage:

limitS
{
    type            limitSolute;

    selectionMode   all;

    solute          C.Cu; // solute field name

    min             0.0;
    max             1.0;
}

Source files

Public Functions

TypeName ("limitSolute")

Runtime type information.

limitSolute(const word &name, const word &modelType, const dictionary &dict, const fvMesh &mesh)

Construct from components.

limitSolute(const limitSolute&) = delete

Disallow default bitwise copy construction.

inline virtual ~limitSolute()

Destructor.

virtual wordList constrainedFields() const

Return the list of fields constrained by the fvConstraint.

virtual bool constrain(volScalarField &C) const

Constrain the solute field.

virtual void updateMesh(const mapPolyMesh&)

Update for mesh changes.

virtual bool read(const dictionary &dict)

Read dictionary.

void operator=(const limitSolute&) = delete

Disallow default bitwise assignment.

Testing

The unit tests for the fvConstraints libraries require the Boost libraries (>= 1.69.0). The tests are run in the tests/fvConstraints/case folder:

$ wmake .. # Build the test executable
$ blockMesh # Create the mesh for the test case
$ ./test_limitSolute --log_level=all # Run the tests