Section on CPL_force

CPL_force combines multiple field classes, including the retrieved values from CFD via a coupled MPI exchange and together with accumulated MD/DEM results, it calculates the required force. Heavy use is made of inheritance here, with a common interface of pre_force and a get_force functions. The different types of coupling force are then created using a factory method and extension of this is as simple as inhereting from the most relevant force class and adapting to your needs. A rough schematic of the inheretence diagram is included below (note names have been shortened):


                         CPL_vel
Abstract Base Class     / 
   |          _________/__CPL_test
   |         /         \ 
   |        /           CPL_flekkoy
   v       /
CPL_force /                       __CPL_Di_Felice
          \__ CPL_drag__ CPL_gran/
                      \          \__CPL_Tang_______CPL_with_BVK_correction
                       \            
                        CPL_dragtest