XC Open source finite element analysis program
Main Page
Modules
Namespaces
Classes
Files
File List
xc
src
utility
matrix
nDarray
BJvector.h
1
//----------------------------------------------------------------------------
2
// XC program; finite element analysis code
3
// for structural analysis and design.
4
//
5
// Copyright (C) Luis Claudio Pérez Tato
6
//
7
// This program derives from OpenSees <http://opensees.berkeley.edu>
8
// developed by the «Pacific earthquake engineering research center».
9
//
10
// Except for the restrictions that may arise from the copyright
11
// of the original program (see copyright_opensees.txt)
12
// XC is free software: you can redistribute it and/or modify
13
// it under the terms of the GNU General Public License as published by
14
// the Free Software Foundation, either version 3 of the License, or
15
// (at your option) any later version.
16
//
17
// This software is distributed in the hope that it will be useful, but
18
// WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
// GNU General Public License for more details.
21
//
22
//
23
// You should have received a copy of the GNU General Public License
24
// along with this program.
25
// If not, see <http://www.gnu.org/licenses/>.
26
//----------------------------------------------------------------------------
27
28
// $Revision: 1.1 $
29
// $Date: 2001/08/23 16:45:51 $
30
// $Source: /usr/local/cvs/OpenSees/SRC/nDarray/BJvector.h,v $
31
32
//#############################################################################
33
// #
34
// #
35
// /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/~~\ #
36
// | |____| #
37
// | | #
38
// | | #
39
// | | #
40
// | | #
41
// | B A S E C L A S S E S | #
42
// | | #
43
// | | #
44
// | | #
45
// | | #
46
// | C + + H E A D E R | #
47
// | | #
48
// | | #
49
// | | #
50
// | | #
51
// /~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/ | #
52
// \_________________________________________\__/ #
53
// #
54
// #
55
//#############################################################################
56
//#############################################################################
58
//################################################################################
59
//# COPYRIGHT (C): :-)) #
60
//# PROJECT: Object Oriented Finite Element Program #
61
//# PURPOSE: #
62
//# CLASS: BJvector #
63
//# #
64
//# VERSION: #
65
//# LANGUAGE: C++.ver >= 2.0 ( Borland C++ ver=3.10, SUN C++ ver=2.1 ) #
66
//# TARGET OS: DOS || UNIX || . . . #
67
//# DESIGNER(S): Boris Jeremic #
68
//# PROGRAMMER(S): Boris Jeremic #
69
//# #
70
//# #
71
//# DATE: November '92 #
72
//# UPDATE HISTORY: 05 - __ avgust '93. redefined as derived class from #
73
//# nDarray class #
74
//# August 22-29 '94 choped to separate files and worked on #
75
//# const and & issues #
76
//# August 30-31 '94 added use_def_dim to full the CC #
77
//# resolved problem with temoraries for #
78
//# operators + and - ( +=, -= ) #
79
//# #
80
//# #
81
//# #
82
//# #
83
//# #
84
//################################################################################
85
//*/
86
87
88
#ifndef VECTOR_HH
89
#define VECTOR_HH
90
91
#include "utility/matrix/nDarray/BJmatrix.h"
92
93
// All of this inheritance idioms are after
94
// Jim Coplien : "Advanced C++ programing styles and idioms".
95
// I tried to understand idioms and I think I succeded.
96
97
namespace
XC
{
99
//
100
class
BJvector
:
virtual
public
BJmatrix
101
{
102
public
:
103
BJvector
(
int
order_n = 1,
double
initvalue = 0.0);
// default constructor
104
105
BJvector
(
int
order_n,
double
*initval);
106
107
explicit
BJvector
(
const
nDarray
&x);
// copy-initializer
108
109
//.... ~BJvector( );
110
111
BJvector
& operator=(
const
BJvector
& x );
// BJvector assignment
112
//.. BJvector& operator=( const BJmatrix & x ); // BJvector assignment
113
//.. BJvector& operator=( const nDarray & x ); // BJvector assignment
114
115
//####### BJmatrix operator*( BJvector &); // BJvector multiplication
116
117
//.... BJvector operator*( double arg); // scalar multiplication
118
// this ellipsis at the end are just to prevent the compiler
119
// from issuing a warning on hiding function from base class nDarray . . .
120
double
&val(
int
subscript, ... );
121
const
double
&val(
int
subscript, ... )
const
;
122
double
cval(
int
subscript, ... )
const
;
// const
123
// THE ROW COUNTER STARTS FROM 1 ( NOT FROM 0 )
124
};
125
}
// end of XC namespace
126
#endif
XC::BJvector
Definition:
BJvector.h:100
XC::BJmatrix
Definition:
BJmatrix.h:102
XC
================================================================================
Definition:
ContinuaReprComponent.h:34
XC::nDarray
Definition:
nDarray.h:158
Generated by
1.8.11