blue_sky::wells::connection< strategy_t > Class Template Reference

Base class for well perforations (well connections). More...

#include <well_connection.h>

Inheritance diagram for blue_sky::wells::connection< strategy_t >:

Inheritance graph
[legend]
Collaboration diagram for blue_sky::wells::connection< strategy_t >:

Collaboration graph
[legend]

List of all members.

Public Types

typedef connection< strategy_t > this_t
typedef smart_ptr< this_t, true > sp_this_t
typedef strategy_t::item_array_t item_array_t
typedef strategy_t::item_t item_t
typedef strategy_t::rhs_item_t rhs_item_t
typedef strategy_t::index_t index_t
typedef rate_data< strategy_t > rate_data_t
typedef
rate_data_t::rate_data_inner 
rate_data_inner_t
typedef fi_params params_t
typedef smart_ptr< params_tsp_params_t
typedef rs_mesh_iface< strategy_t > mesh_iface_t
typedef smart_ptr
< mesh_iface_t, true > 
sp_mesh_iface_t
typedef connection< strategy_t > connection_t
typedef calc_model< strategy_t > calc_model_t
typedef well< strategy_t > well_t

Public Member Functions

void compute_factors (const physical_constants &internal_contstants, const sp_params_t &params, const sp_mesh_iface_t &mesh, const item_array_t &perm, const item_array_t &ntg, bool ro_calc_flag=false)
 Computes perforation (connection) factor.
void mul_perm_mult (item_t mult)
 Multiplies mult_ with mult.
void set_half_length (item_t half_length)
 Sets half of fracture length.
void set_theta (item_t theta)
 Sets angle between fracture and positive X direction.
void set_skin (item_t skin)
 Sets skin factor.
void set_status (connection_status_type connection_status)
 Sets perforation (connection) status.
void set_factor (item_t factor)
 Sets transmissibility factor.
void set_diameter (item_t diameter)
 Sets wellbore diameter.
void set_Kh (item_t kh)
 Sets effective Kh (permeability * thikness).
void set_direction (connection_direction_type direction)
 Sets direction in which the well penetrates the grid block.
void set_coord (index_t i, index_t j, index_t k, index_t n_block)
 Sets coordinates and index of grid block.
void set_connection_depth (const sp_mesh_iface_t &mesh)
 Sets depth.
index_t n_block () const
 Returns index of grid block to which perforation belongs.
item_t get_fact () const
 Returns connection_factor.
void set_bulkp (item_t bulkp)
 Sets bulkp.
void set_rate (item_t rate)
 Sets rate.
void set_head_term (item_t head_term)
 Sets head_term (?).
void set_cur_bhp (item_t cur_bhp)
 Sets current connection BHP.
void set_mult (item_t mult)
 Sets multiplier.
void set_seg_number (const index_t &seg)
 Sets number of segment which contains this perforation (connection).
bool is_shut () const
 Is perforation (connection) is shut?
connection_status_type get_status () const
 Returns status of connection.
connection_direction_type get_dir () const
 Returns direction of connection.
item_t get_cur_bhp () const
 Returns current BHP.
item_t get_density () const
 Returns density.
item_t get_connection_depth () const
 Returns depth.
item_t get_bulkp () const
 Returns bulkp.
index_t i_coord () const
 Returns i coord.
index_t j_coord () const
 Return j coord.
index_t k_coord () const
 Return k coord.
item_t mult () const
 Return multiplier.
item_t get_head_term () const
 Returns head_term (?).
index_t get_seg_number () const
 Returns segment number.
virtual void clear_data ()
 Clears data.
virtual array_ext< item_tget_rw_value ()
 Returns RW value.
virtual array_ext< item_tget_wr_value ()
 Returns WR value.
virtual array_ext< item_tget_rr_value ()
 Returns RR value.
virtual array_ext< item_tget_ps_value ()
 Returns PS value.
virtual array_ext< rhs_item_tget_rate_value ()
 Returns rate array.
const rate_data_trate () const
 Returns rate data.
const rate_data_inner_trate_prod () const
 Returns production part of rate data.
const rate_data_inner_trate_inj () const
 Returns injection part of rate data.
 BLUE_SKY_TYPE_DECL_T (connection< strategy_t >)
 blue-sky type declaration

Public Attributes

auto_value< item_thead_term
auto_value< item_tcur_bhp
auto_value< item_tconnection_depth
auto_value< item_tdensity
auto_value< item_tbulkp
rate_data_t rate_
rate_data_t rate_rc_

Protected Attributes

auto_value< index_t, 0 > iseg_

Private Attributes

auto_value< index_t,-1 > i_coord_
 i coord of connection
auto_value< index_t,-1 > j_coord_
 j coord of connection
auto_value< index_t,-1 > k_coord_
 k coord of connection
auto_value
< connection_status_type,
connection_open > 
status_
 connection status
auto_value< item_tdiam_
 Well diameter.
auto_value< item_tkh_
 Effective Kh.
auto_value< item_tskin_
 Well skin factor.
auto_value< item_t, 1 > mult_
auto_value< item_t,-1 > fact_
 connection factor
auto_value< item_t,-1 > R0_
 R0.
auto_value< item_tfracture_half_length_
 half length of fracture
auto_value< item_tfracture_angle_
 angle of fracture in grid block to OX direction
auto_value< item_tfracture_perm_
 coefficient of "permeability" on fracture
auto_value< index_t,-1 > n_block_
 number of block in grid (n_block <-> (i, j, k))
auto_value
< connection_direction_type,
direction_x > 
dir_
 direction
auto_value< connection_type,
CONNECTION_USUAL > 
connection_type_
 connection type

Friends

struct wells::compute_factors::peaceman_model
struct wells::compute_factors::baby_odeh_model


Detailed Description

template<typename strategy_t>
class blue_sky::wells::connection< strategy_t >

Base class for well perforations (well connections).

Member Typedef Documentation

template<typename strategy_t>
typedef calc_model<strategy_t> blue_sky::wells::connection< strategy_t >::calc_model_t

template<typename strategy_t>
typedef connection<strategy_t> blue_sky::wells::connection< strategy_t >::connection_t

template<typename strategy_t>
typedef strategy_t::index_t blue_sky::wells::connection< strategy_t >::index_t

template<typename strategy_t>
typedef strategy_t::item_array_t blue_sky::wells::connection< strategy_t >::item_array_t

template<typename strategy_t>
typedef strategy_t::item_t blue_sky::wells::connection< strategy_t >::item_t

template<typename strategy_t>
typedef rs_mesh_iface<strategy_t> blue_sky::wells::connection< strategy_t >::mesh_iface_t

template<typename strategy_t>
typedef fi_params blue_sky::wells::connection< strategy_t >::params_t

template<typename strategy_t>
typedef rate_data_t::rate_data_inner blue_sky::wells::connection< strategy_t >::rate_data_inner_t

template<typename strategy_t>
typedef rate_data<strategy_t> blue_sky::wells::connection< strategy_t >::rate_data_t

template<typename strategy_t>
typedef strategy_t::rhs_item_t blue_sky::wells::connection< strategy_t >::rhs_item_t

template<typename strategy_t>
typedef smart_ptr<mesh_iface_t, true> blue_sky::wells::connection< strategy_t >::sp_mesh_iface_t

template<typename strategy_t>
typedef smart_ptr<params_t> blue_sky::wells::connection< strategy_t >::sp_params_t

template<typename strategy_t>
typedef smart_ptr<this_t, true> blue_sky::wells::connection< strategy_t >::sp_this_t

template<typename strategy_t>
typedef connection<strategy_t> blue_sky::wells::connection< strategy_t >::this_t

template<typename strategy_t>
typedef well<strategy_t> blue_sky::wells::connection< strategy_t >::well_t


Member Function Documentation

template<typename strategy_t>
blue_sky::wells::connection< strategy_t >::BLUE_SKY_TYPE_DECL_T ( connection< strategy_t >   ) 

blue-sky type declaration

template<typename strategy_t>
virtual void blue_sky::wells::connection< strategy_t >::clear_data (  )  [virtual]

Clears data.

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::compute_factors ( const physical_constants &  internal_contstants,
const sp_params_t params,
const sp_mesh_iface_t mesh,
const item_array_t perm,
const item_array_t ntg,
bool  ro_calc_flag = false 
)

Computes perforation (connection) factor.

Parameters:
internal_constants 
params 
mesh 
perm 
ntg 
ro_calc_flag 

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_bulkp (  )  const

Returns bulkp.

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_connection_depth (  )  const

Returns depth.

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_cur_bhp (  )  const

Returns current BHP.

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_density (  )  const

Returns density.

template<typename strategy_t>
connection_direction_type blue_sky::wells::connection< strategy_t >::get_dir (  )  const [inline]

Returns direction of connection.

Returns:
Connection direction

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_fact (  )  const

Returns connection_factor.

Returns:
Connection factor

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::get_head_term (  )  const

Returns head_term (?).

template<typename strategy_t>
virtual array_ext<item_t> blue_sky::wells::connection< strategy_t >::get_ps_value (  )  [virtual]

Returns PS value.

Todo:
Obsolete, should be removed

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
virtual array_ext<rhs_item_t> blue_sky::wells::connection< strategy_t >::get_rate_value (  )  [virtual]

Returns rate array.

Todo:
Obsolete, should be removed

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
virtual array_ext<item_t> blue_sky::wells::connection< strategy_t >::get_rr_value (  )  [virtual]

Returns RR value.

Todo:
Obsolete, should be removed

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
virtual array_ext<item_t> blue_sky::wells::connection< strategy_t >::get_rw_value (  )  [virtual]

Returns RW value.

Todo:
Obsolete, should be removed

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
index_t blue_sky::wells::connection< strategy_t >::get_seg_number (  )  const

Returns segment number.

template<typename strategy_t>
connection_status_type blue_sky::wells::connection< strategy_t >::get_status (  )  const [inline]

Returns status of connection.

Returns:
Connection status

template<typename strategy_t>
virtual array_ext<item_t> blue_sky::wells::connection< strategy_t >::get_wr_value (  )  [virtual]

Returns WR value.

Todo:
Obsolete, should be removed

Reimplemented in blue_sky::wells::default_connection< strategy_t >.

template<typename strategy_t>
index_t blue_sky::wells::connection< strategy_t >::i_coord (  )  const

Returns i coord.

template<typename strategy_t>
bool blue_sky::wells::connection< strategy_t >::is_shut (  )  const

Is perforation (connection) is shut?

Returns:
True if status of connection is shut

template<typename strategy_t>
index_t blue_sky::wells::connection< strategy_t >::j_coord (  )  const

Return j coord.

template<typename strategy_t>
index_t blue_sky::wells::connection< strategy_t >::k_coord (  )  const

Return k coord.

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::mul_perm_mult ( item_t  mult  ) 

Multiplies mult_ with mult.

Parameters:
mult 

template<typename strategy_t>
item_t blue_sky::wells::connection< strategy_t >::mult (  )  const

Return multiplier.

template<typename strategy_t>
index_t blue_sky::wells::connection< strategy_t >::n_block (  )  const

Returns index of grid block to which perforation belongs.

Returns:
Index of grid block

template<typename strategy_t>
const rate_data_t& blue_sky::wells::connection< strategy_t >::rate (  )  const [inline]

Returns rate data.

Returns:
Rate data

template<typename strategy_t>
const rate_data_inner_t& blue_sky::wells::connection< strategy_t >::rate_inj (  )  const [inline]

Returns injection part of rate data.

Returns:
Injection part of rate data

template<typename strategy_t>
const rate_data_inner_t& blue_sky::wells::connection< strategy_t >::rate_prod (  )  const [inline]

Returns production part of rate data.

Returns:
Production part of rate data

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_bulkp ( item_t  bulkp  ) 

Sets bulkp.

Parameters:
bulkp 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_connection_depth ( const sp_mesh_iface_t mesh  ) 

Sets depth.

Parameters:
mesh 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_coord ( index_t  i,
index_t  j,
index_t  k,
index_t  n_block 
)

Sets coordinates and index of grid block.

Parameters:
i 
j 
k 
n_block Number of grid block
Returns:

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_cur_bhp ( item_t  cur_bhp  ) 

Sets current connection BHP.

Parameters:
cur_bhp 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_diameter ( item_t  diameter  ) 

Sets wellbore diameter.

Parameters:
diameter 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_direction ( connection_direction_type  direction  ) 

Sets direction in which the well penetrates the grid block.

Parameters:
\return 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_factor ( item_t  factor  ) 

Sets transmissibility factor.

Parameters:
factor 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_half_length ( item_t  half_length  ) 

Sets half of fracture length.

Parameters:
half_length Half of fracte length

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_head_term ( item_t  head_term  ) 

Sets head_term (?).

Parameters:
head_term 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_Kh ( item_t  kh  ) 

Sets effective Kh (permeability * thikness).

Parameters:
Kh 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_mult ( item_t  mult  ) 

Sets multiplier.

Parameters:
mult 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_rate ( item_t  rate  ) 

Sets rate.

Parameters:
rate 
Todo:
Obsolete, should be removed

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_seg_number ( const index_t seg  ) 

Sets number of segment which contains this perforation (connection).

Parameters:
seg 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_skin ( item_t  skin  ) 

Sets skin factor.

Parameters:
skin 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_status ( connection_status_type  connection_status  ) 

Sets perforation (connection) status.

Parameters:
connection_status 

template<typename strategy_t>
void blue_sky::wells::connection< strategy_t >::set_theta ( item_t  theta  ) 

Sets angle between fracture and positive X direction.

Parameters:
theta An angle


Friends And Related Function Documentation

template<typename strategy_t>
friend struct wells::compute_factors::baby_odeh_model [friend]

template<typename strategy_t>
friend struct wells::compute_factors::peaceman_model [friend]


Member Data Documentation

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::bulkp

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::connection_depth

template<typename strategy_t>
auto_value<connection_type, CONNECTION_USUAL> blue_sky::wells::connection< strategy_t >::connection_type_ [private]

connection type

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::cur_bhp

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::density

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::diam_ [private]

Well diameter.

template<typename strategy_t>
auto_value<connection_direction_type, direction_x> blue_sky::wells::connection< strategy_t >::dir_ [private]

direction

template<typename strategy_t>
auto_value<item_t, -1> blue_sky::wells::connection< strategy_t >::fact_ [private]

connection factor

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::fracture_angle_ [private]

angle of fracture in grid block to OX direction

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::fracture_half_length_ [private]

half length of fracture

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::fracture_perm_ [private]

coefficient of "permeability" on fracture

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::head_term

template<typename strategy_t>
auto_value<index_t, -1> blue_sky::wells::connection< strategy_t >::i_coord_ [private]

i coord of connection

template<typename strategy_t>
auto_value<index_t, 0> blue_sky::wells::connection< strategy_t >::iseg_ [protected]

template<typename strategy_t>
auto_value<index_t, -1> blue_sky::wells::connection< strategy_t >::j_coord_ [private]

j coord of connection

template<typename strategy_t>
auto_value<index_t, -1> blue_sky::wells::connection< strategy_t >::k_coord_ [private]

k coord of connection

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::kh_ [private]

Effective Kh.

template<typename strategy_t>
auto_value<item_t, 1> blue_sky::wells::connection< strategy_t >::mult_ [private]

template<typename strategy_t>
auto_value<index_t, -1> blue_sky::wells::connection< strategy_t >::n_block_ [private]

number of block in grid (n_block <-> (i, j, k))

template<typename strategy_t>
auto_value<item_t, -1> blue_sky::wells::connection< strategy_t >::R0_ [private]

R0.

template<typename strategy_t>
rate_data_t blue_sky::wells::connection< strategy_t >::rate_

template<typename strategy_t>
rate_data_t blue_sky::wells::connection< strategy_t >::rate_rc_

template<typename strategy_t>
auto_value<item_t> blue_sky::wells::connection< strategy_t >::skin_ [private]

Well skin factor.

template<typename strategy_t>
auto_value<connection_status_type, connection_open> blue_sky::wells::connection< strategy_t >::status_ [private]

connection status


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