blue_sky::reservoir_simulator< strategy_t > Class Template Reference

main class of reservoir_simulator implementation, implements bs_node More...

#include <reservoir_simulator.h>

List of all members.

Public Types

typedef reservoir_simulator
< strategy_t > 
this_t
 shortname for this type
typedef smart_ptr< this_t, true > sp_this_t
 smart pointer to this_t
typedef data_manager< strategy_t > dm_t
 data_manager type
typedef smart_ptr< dm_t, true > sp_dm_t
 smart_ptr to data_manager type
typedef rs_mesh_iface< strategy_t > mesh_iface_t
 rs_mesh_iface type
typedef smart_ptr
< mesh_iface_t, true > 
sp_mesh_iface_t
 smart_ptr to rs_mesh_iface type
typedef linear_solver_base
< strategy_t > 
solver_t
 linear_solver type
typedef smart_ptr< solver_t, true > sp_solver_t
 smart_ptr to solver_t type
typedef event_manager< strategy_t > em_t
 event_manager type
typedef smart_ptr< em_t, true > sp_em_t
 smart_ptr to event_manager type
typedef em_t::sp_event_base_list sp_event_base_list_t
 list of scheduled events
typedef calc_model< strategy_t > calc_model_t
 calc_model type
typedef smart_ptr
< calc_model_t, true > 
sp_calc_model_t
 smart_ptr to calc_model type
typedef reservoir< strategy_t > reservoir_t
 reservoir type
typedef smart_ptr< reservoir_t,
true > 
sp_reservoir_t
 smart_ptr to reservoir type
typedef data_storage_interface facility_storage_t
 facility_storage type
typedef smart_ptr
< facility_storage_t, true > 
sp_facility_storage_t
 smart_ptr to facility_storage type
typedef jacobian< strategy_t > jacobian_t
 jacobian type
typedef smart_ptr< jacobian_t,
true > 
sp_jacobian_t
 smart_ptr to jacobian type
typedef strategy_t::item_t item_t
 item type
typedef strategy_t::index_t index_t
 index type
typedef strategy_t::item_array_t item_array_t
 array of items type
typedef strategy_t::index_array_t index_array_t
 array of indexes type
typedef trans_multipliers_calc
< strategy_t > 
trans_multipliers_calc_t
 transmissibility multipliers calculator type
typedef main_loop_calc_base
< strategy_t > 
main_loop_calc_t
 base type of main_loop_calc type
typedef keyword_manager
< strategy_t > 
keyword_manager_t
 keyword_manager type
typedef smart_ptr
< keyword_manager_t, true > 
sp_keyword_manager_t
 smart_ptr to keyword_manager type
typedef jacobian_matrix
< strategy_t > 
jmatrix_t
 jacobian_matrix type
typedef smart_ptr< jmatrix_t,
true > 
sp_jmatrix_t
 smart_ptr to jacobian_matrix type
typedef bs_array< std::string > signal_params_t
 storage for event params

Public Member Functions

void set_mesh (const sp_mesh_iface_t &)
 setups pointer to mesh
const sp_dm_tget_data_manager () const
 returns pointer to data_manager instance
const sp_em_tget_event_manager () const
 returns pointer to event_manager instance
const sp_calc_model_tget_calc_model () const
 returns pointer to calc_model instance
const sp_mesh_iface_tget_mesh () const
 returns pointer to mesh instance
const sp_jacobian_tget_jacobian () const
 returns pointer to jacobian instance
const sp_reservoir_tget_reservoir () const
 returns pointer to reservoir instance
void init ()
 inits reservoir simulator
void main_loop ()
 creates (if needed) main_loop_calc instance and starts main simulation loop
main_loop_calc_tget_main_loop ()
 creates (if needed) main_loop_calc instance and returns main_loop_calc
virtual ~reservoir_simulator ()
 reservoir_simulator dtor
void set_subnode_in_tree (const std::string &name, sp_obj obj)
 sets subnode in tree by subnode name
void simulate (const std::string &path)
 load model and starts main simulation loop
void read_keyword_file_and_init (const std::string &path)
 load model and init it
void pre_large_step (const sp_event_base_list_t &event_list)
 default actions that should be executed before start of the following large simulation step
std::string model_filename () const
 returns name of model file
 DECLARE_EVENT_LIST (reservoir_simulator, signal_params_t, 12,((begin,(clock_t), 1),(newton_iter_fail,(), 0),(newton_iter_success,(), 0),(before_fi_operator,(), 0),(before_jacobian_setup,(), 0),(before_jacobian_solve,(), 0),(before_restore_solution,(), 0),(simulation_start,(), 0),(large_step_start,(), 0),(small_step_start,(), 0),(end,(clock_t), 1),(post_read,(), 0)))
 declaration of reservoir_simulator events

Public Attributes

sp_dm_t dm
 pointer to data_manager instance
sp_em_t em
 pointer to event_manager instance
sp_calc_model_t cm
 pointer to calc_model instance
sp_mesh_iface_t mesh
 pointer to mesh instance
sp_reservoir_t reservoir_
 pointer to reservoir instance
sp_facility_storage_t facility_storage_
 pointer to facility_storage instance
sp_jacobian_t jacobian_
 pointer to jacobian instance
sp_keyword_manager_t keyword_manager_
 pointer to keyword manager instance
std::string model_filename_
 name of model file
smart_ptr< main_loop_calc_t,
false > 
mloop
 pointer to main_loop_calc instance


Detailed Description

template<class strategy_t>
class blue_sky::reservoir_simulator< strategy_t >

main class of reservoir_simulator implementation, implements bs_node

Member Typedef Documentation

template<class strategy_t >
typedef calc_model< strategy_t > blue_sky::reservoir_simulator< strategy_t >::calc_model_t

calc_model type

template<class strategy_t >
typedef data_manager< strategy_t > blue_sky::reservoir_simulator< strategy_t >::dm_t

data_manager type

template<class strategy_t >
typedef event_manager<strategy_t> blue_sky::reservoir_simulator< strategy_t >::em_t

template<class strategy_t >
typedef data_storage_interface blue_sky::reservoir_simulator< strategy_t >::facility_storage_t

facility_storage type

template<class strategy_t >
typedef strategy_t::index_array_t blue_sky::reservoir_simulator< strategy_t >::index_array_t

array of indexes type

template<class strategy_t >
typedef strategy_t::index_t blue_sky::reservoir_simulator< strategy_t >::index_t

index type

template<class strategy_t >
typedef strategy_t::item_array_t blue_sky::reservoir_simulator< strategy_t >::item_array_t

array of items type

template<class strategy_t >
typedef strategy_t::item_t blue_sky::reservoir_simulator< strategy_t >::item_t

item type

template<class strategy_t >
typedef jacobian<strategy_t> blue_sky::reservoir_simulator< strategy_t >::jacobian_t

jacobian type

template<class strategy_t >
typedef jacobian_matrix<strategy_t> blue_sky::reservoir_simulator< strategy_t >::jmatrix_t

jacobian_matrix type

template<class strategy_t >
typedef keyword_manager<strategy_t> blue_sky::reservoir_simulator< strategy_t >::keyword_manager_t

template<class strategy_t >
typedef main_loop_calc_base<strategy_t> blue_sky::reservoir_simulator< strategy_t >::main_loop_calc_t

base type of main_loop_calc type

template<class strategy_t >
typedef rs_mesh_iface< strategy_t > blue_sky::reservoir_simulator< strategy_t >::mesh_iface_t

rs_mesh_iface type

template<class strategy_t >
typedef reservoir<strategy_t> blue_sky::reservoir_simulator< strategy_t >::reservoir_t

reservoir type

template<class strategy_t >
typedef bs_array<std::string> blue_sky::reservoir_simulator< strategy_t >::signal_params_t

storage for event params

template<class strategy_t >
typedef linear_solver_base< strategy_t > blue_sky::reservoir_simulator< strategy_t >::solver_t

linear_solver type

template<class strategy_t >
typedef smart_ptr< calc_model_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_calc_model_t

smart_ptr to calc_model type

template<class strategy_t >
typedef smart_ptr< dm_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_dm_t

smart_ptr to data_manager type

template<class strategy_t >
typedef smart_ptr< em_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_em_t

smart_ptr to event_manager type

template<class strategy_t >
typedef em_t::sp_event_base_list blue_sky::reservoir_simulator< strategy_t >::sp_event_base_list_t

list of scheduled events

template<class strategy_t >
typedef smart_ptr<facility_storage_t, true> blue_sky::reservoir_simulator< strategy_t >::sp_facility_storage_t

smart_ptr to facility_storage type

template<class strategy_t >
typedef smart_ptr<jacobian_t, true> blue_sky::reservoir_simulator< strategy_t >::sp_jacobian_t

smart_ptr to jacobian type

template<class strategy_t >
typedef smart_ptr<jmatrix_t, true> blue_sky::reservoir_simulator< strategy_t >::sp_jmatrix_t

smart_ptr to jacobian_matrix type

template<class strategy_t >
typedef smart_ptr<keyword_manager_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_keyword_manager_t

smart_ptr to keyword_manager type

template<class strategy_t >
typedef smart_ptr< mesh_iface_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_mesh_iface_t

smart_ptr to rs_mesh_iface type

template<class strategy_t >
typedef smart_ptr<reservoir_t, true> blue_sky::reservoir_simulator< strategy_t >::sp_reservoir_t

smart_ptr to reservoir type

template<class strategy_t >
typedef smart_ptr< solver_t, true> blue_sky::reservoir_simulator< strategy_t >::sp_solver_t

smart_ptr to solver_t type

template<class strategy_t >
typedef smart_ptr< this_t, true > blue_sky::reservoir_simulator< strategy_t >::sp_this_t

smart pointer to this_t

template<class strategy_t >
typedef reservoir_simulator< strategy_t > blue_sky::reservoir_simulator< strategy_t >::this_t

shortname for this type

template<class strategy_t >
typedef trans_multipliers_calc<strategy_t> blue_sky::reservoir_simulator< strategy_t >::trans_multipliers_calc_t

transmissibility multipliers calculator type


Constructor & Destructor Documentation

template<class strategy_t >
virtual blue_sky::reservoir_simulator< strategy_t >::~reservoir_simulator (  )  [virtual]


Member Function Documentation

template<class strategy_t >
blue_sky::reservoir_simulator< strategy_t >::DECLARE_EVENT_LIST ( reservoir_simulator< strategy_t >  ,
signal_params_t  ,
12  ,
((begin,(clock_t), 1),(newton_iter_fail,(), 0),(newton_iter_success,(), 0),(before_fi_operator,(), 0),(before_jacobian_setup,(), 0),(before_jacobian_solve,(), 0),(before_restore_solution,(), 0),(simulation_start,(), 0),(large_step_start,(), 0),(small_step_start,(), 0),(end,(clock_t), 1),(post_read,(), 0))   
)

declaration of reservoir_simulator events

template<class strategy_t >
const sp_calc_model_t& blue_sky::reservoir_simulator< strategy_t >::get_calc_model (  )  const

returns pointer to calc_model instance

template<class strategy_t >
const sp_dm_t& blue_sky::reservoir_simulator< strategy_t >::get_data_manager (  )  const

returns pointer to data_manager instance

template<class strategy_t >
const sp_em_t& blue_sky::reservoir_simulator< strategy_t >::get_event_manager (  )  const

returns pointer to event_manager instance

template<class strategy_t >
const sp_jacobian_t& blue_sky::reservoir_simulator< strategy_t >::get_jacobian (  )  const

returns pointer to jacobian instance

template<class strategy_t >
main_loop_calc_t* blue_sky::reservoir_simulator< strategy_t >::get_main_loop (  ) 

creates (if needed) main_loop_calc instance and returns main_loop_calc

Returns:
may throw exception

template<class strategy_t >
const sp_mesh_iface_t& blue_sky::reservoir_simulator< strategy_t >::get_mesh (  )  const

returns pointer to mesh instance

template<class strategy_t >
const sp_reservoir_t& blue_sky::reservoir_simulator< strategy_t >::get_reservoir (  )  const

returns pointer to reservoir instance

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::init (  ) 

inits reservoir simulator

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::main_loop (  ) 

creates (if needed) main_loop_calc instance and starts main simulation loop

Returns:
may throw exception

template<class strategy_t >
std::string blue_sky::reservoir_simulator< strategy_t >::model_filename (  )  const

returns name of model file

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::pre_large_step ( const sp_event_base_list_t event_list  ) 

default actions that should be executed before start of the following large simulation step

Parameters:
event_list list of scheduled events that should be executed before start of the step

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::read_keyword_file_and_init ( const std::string &  path  ) 

load model and init it

Parameters:
path path to the model file
Returns:
may throw exception

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::set_mesh ( const sp_mesh_iface_t  ) 

setups pointer to mesh

Parameters:
mesh pointer to mesh

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::set_subnode_in_tree ( const std::string &  name,
sp_obj  obj 
) [inline]

sets subnode in tree by subnode name

Parameters:
name name of subnode
obj pointer to new subnode object

template<class strategy_t >
void blue_sky::reservoir_simulator< strategy_t >::simulate ( const std::string &  path  ) 

load model and starts main simulation loop

Parameters:
path path to the model file
Returns:
may throw exception


Member Data Documentation

template<class strategy_t >
sp_calc_model_t blue_sky::reservoir_simulator< strategy_t >::cm

pointer to calc_model instance

template<class strategy_t >
sp_dm_t blue_sky::reservoir_simulator< strategy_t >::dm

pointer to data_manager instance

template<class strategy_t >
sp_em_t blue_sky::reservoir_simulator< strategy_t >::em

pointer to event_manager instance

template<class strategy_t >
sp_facility_storage_t blue_sky::reservoir_simulator< strategy_t >::facility_storage_

pointer to facility_storage instance

template<class strategy_t >
sp_jacobian_t blue_sky::reservoir_simulator< strategy_t >::jacobian_

pointer to jacobian instance

template<class strategy_t >
sp_keyword_manager_t blue_sky::reservoir_simulator< strategy_t >::keyword_manager_

pointer to keyword manager instance

template<class strategy_t >
sp_mesh_iface_t blue_sky::reservoir_simulator< strategy_t >::mesh

pointer to mesh instance

template<class strategy_t >
smart_ptr<main_loop_calc_t, false> blue_sky::reservoir_simulator< strategy_t >::mloop

pointer to main_loop_calc instance

template<class strategy_t >
std::string blue_sky::reservoir_simulator< strategy_t >::model_filename_

name of model file

template<class strategy_t >
sp_reservoir_t blue_sky::reservoir_simulator< strategy_t >::reservoir_

pointer to reservoir instance


The documentation for this class was generated from the following file:

Generated on Fri Nov 13 12:07:14 2009 for TheBSEagleProject by  doxygen 1.5.8