diff --git a/exercises/exercise-biomineralization/README.md b/exercises/exercise-biomineralization/README.md index 90a6886f036fbd47064be85056f27f441640b149..a5909d93082d2506d32d69a9ee09f79cea09c5d0 100644 --- a/exercises/exercise-biomineralization/README.md +++ b/exercises/exercise-biomineralization/README.md @@ -37,7 +37,7 @@ There are two types of solid components. Reactive and inert. For each reactive c ### 2. Implement a chemical equation -In the following the basic steps required to set the new chemical equation are outlined. Here, this is done in the __chemistry__ folder in the prepared file: `simplebiominreactions.hh` starting in line 96. +In the following the basic steps required to set the new chemical equation are outlined. Here, this is done in the __chemistry__ folder in the prepared file: `simplebiominreactions.hh` within the function reactionSource(). Please be aware, that the chemistry file already provides some convenience functions (e.g. ``moleFracToMolality()``). __Task__ @@ -64,15 +64,17 @@ which is: Calcium ion + Urea + 2 Water → 2 Ammonium ions + Calcite +Note that since the chemistry is simplified for this dumux-course example, the component Ammonium is neglected and you thus cannot set its source term, even though it is produced in the real reaction. + ### 3. Make use of your newly created chemical equation -To enable your newly created chemical equation, the chemistry file has to be included in your problem file. This has to be done in line 35: +To enable your newly created chemical equation, the chemistry file has to be included in your problem file. ```c++ #include "chemistry/simplebiominreactions.hh" // chemical reactions ``` -Additionally the TypeTag of your chemistry file needs to be set in the problem file (line 125): +Additionally the TypeTag of your chemistry file needs to be set in the problem file, within the class ExerciseFourBioMinProblem: ```c++ using Chemistry = typename Dumux::SimpleBiominReactions<NumEqVector, VolumeVariables>; @@ -80,7 +82,7 @@ using Chemistry = typename Dumux::SimpleBiominReactions<NumEqVector, VolumeVaria __Task__ -Now the source/sink term can be updated in the problem file. You find it in line 343. You can access the newly created chemistry file and call the reactionSource()-function from it. Make sure to call the reactionSource()-function with the correct arguments. Return the updated source terms in the end. +Now the source/sink term can be updated in the problem file in its function source(). You can access the newly created chemistry file and call the reactionSource()-function from it. Make sure to call the chemistry.reactionSource()-function with the correct arguments. Return the updated source terms in the end. The volume variables can be set using the element volume variables and the sub control volume: ```c++ diff --git a/exercises/exercise-biomineralization/biominproblem.hh b/exercises/exercise-biomineralization/biominproblem.hh index 20d0790b88d77a7958e45cbc185edcb8ba6230e7..ab0a787a766dc45440aef3740a0b43cce6b794d9 100644 --- a/exercises/exercise-biomineralization/biominproblem.hh +++ b/exercises/exercise-biomineralization/biominproblem.hh @@ -281,7 +281,7 @@ public: // Set values for Ca + urea injection above aquitard. // Use negative values for injection. if(globalPos[0] < eps_ - && globalPos[1] > 11.0 + eps_ + && globalPos[1] > 11.0 - eps_ && globalPos[1] < 12.0 + eps_ && time_ < injBioTime_) {