Chi-Tech
lbsadj_solver.h
Go to the documentation of this file.
1#ifndef LBADJOINTSOLVER_H
2#define LBADJOINTSOLVER_H
3
4#include <utility>
5
7#include "math/chi_math.h"
8
11
12namespace lbs
13{
14
15// ###################################################################
17{
18protected:
19 typedef std::vector<size_t> VecSize_t;
20 typedef std::pair<ResponseFunctionDesignation, VecSize_t> RespFuncAndSubs;
21 std::vector<RespFuncAndSubs> response_functions_;
22
23public:
24 std::vector<std::vector<double>> m_moment_buffers_;
25
26public:
29 const chi::InputParameters& params);
30 explicit DiscreteOrdinatesAdjointSolver(const std::string& solver_name);
31
33 delete;
36
37 double ComputeInnerProduct();
38 const std::vector<RespFuncAndSubs>& GetResponseFunctions() const;
39
40 void Initialize() override;
41 void MakeAdjointXSs();
42 void InitQOIs();
43 void Execute() override;
44
45 // 04
46 size_t
47 AddResponseFunction(const std::string& qoi_name,
48 std::shared_ptr<chi_mesh::LogicalVolume> logical_volume,
49 const std::string& lua_function_name);
50 // 05a
51 void ExportImportanceMap(const std::string& file_name);
52};
53
54} // namespace lbs
55
56#endif // LBADJOINTSOLVER_H
static chi::InputParameters GetInputParameters()
std::vector< std::vector< double > > m_moment_buffers_
Definition: lbsadj_solver.h:24
void ExportImportanceMap(const std::string &file_name)
size_t AddResponseFunction(const std::string &qoi_name, std::shared_ptr< chi_mesh::LogicalVolume > logical_volume, const std::string &lua_function_name)
DiscreteOrdinatesAdjointSolver(const DiscreteOrdinatesAdjointSolver &)=delete
std::vector< RespFuncAndSubs > response_functions_
Definition: lbsadj_solver.h:21
std::vector< size_t > VecSize_t
Definition: lbsadj_solver.h:19
const std::vector< RespFuncAndSubs > & GetResponseFunctions() const
DiscreteOrdinatesAdjointSolver(const chi::InputParameters &params)
std::pair< ResponseFunctionDesignation, VecSize_t > RespFuncAndSubs
Definition: lbsadj_solver.h:20
DiscreteOrdinatesAdjointSolver & operator=(const DiscreteOrdinatesAdjointSolver &)=delete