Skip to content
Snippets Groups Projects
Select Git revision
  • 82ef2ab118fb009c015bd2404bcb003f25d6d6d1
  • master default protected
  • patch_releases_4_14
  • overlaps_tags_and_distributed_export
  • overlaps_tags_and_distributed_export_rebased
  • relaying
  • alphashapes
  • steplayer
  • bl
  • pluginMeshQuality
  • fixBugsAmaury
  • hierarchical-basis
  • new_export_boris
  • oras_vs_osm
  • reassign_partitions
  • distributed_fwi
  • rename-classes
  • fix/fortran-api-example-t4
  • robust_partitions
  • reducing_files
  • fix_overlaps
  • gmsh_4_14_0
  • gmsh_4_13_1
  • gmsh_4_13_0
  • gmsh_4_12_2
  • gmsh_4_12_1
  • gmsh_4_12_0
  • gmsh_4_11_1
  • gmsh_4_11_0
  • gmsh_4_10_5
  • gmsh_4_10_4
  • gmsh_4_10_3
  • gmsh_4_10_2
  • gmsh_4_10_1
  • gmsh_4_10_0
  • gmsh_4_9_5
  • gmsh_4_9_4
  • gmsh_4_9_3
  • gmsh_4_9_2
  • gmsh_4_9_1
  • gmsh_4_9_0
41 results

gmshSurface.cpp

Blame
  • objective.h 928 B
    #ifndef H_COMMON_DATA_OBJECTIVE
    #define H_COMMON_DATA_OBJECTIVE
    
    //GmshFem Library
    #include "Formulation.h"
    //FWI Library
    #include "../state.h"
    #include "../../wave/element.h"
    #include "../../configuration.h"
    
    //Forward declaration
    class ModelUpdater;
    template<Physic T_Physic>
    class DataUpdater;
    
    /*
    * ObjectiveInterface
    */
    template<Physic T_Physic>
    class ObjectiveInterface
    {
    protected:
        const Data<T_Physic>* const _d0;
        Data<T_Physic> _v;
    public:
        ObjectiveInterface(const Data<T_Physic>* const d0): _d0(d0), _v(*d0) {};
        virtual ~ObjectiveInterface() = default;
    
        virtual double performance(const Data<T_Physic>& d) = 0;
        virtual const Data<T_Physic>& update(Type type, const DataStateEvaluator<T_Physic>& ds) = 0;
    
        virtual void link(ModelUpdater* const mu, DataUpdater<T_Physic>* const du) {};
        virtual void unlink() {};
        virtual void modelIsObsolete() {};
    };
    
    #endif //H_COMMON_DATA_OBJECTIVE