suanPan
Toggle main menu visibility
Main Page
Related Pages
Topics
Namespaces
Namespace List
Namespace Members
All
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
w
Variables
Typedefs
Concepts
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
y
z
~
Variables
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
Enumerations
Related Symbols
c
g
o
p
s
t
Files
File List
File Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Functions
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
u
v
w
Variables
s
Typedefs
a
b
c
d
e
g
i
l
m
n
o
r
s
t
Enumerations
Enumerator
Macros
▼
suanPan
Changelog
Contributor Covenant Code of Conduct
Contribution
►
Topics
►
Namespaces
►
Concepts
►
Classes
▼
Files
▼
File List
►
Checker
►
Constraint
►
Converger
►
Database
►
Developer
►
Domain
►
Element
►
Enhancement
▼
Load
▼
Amplitude
Amplitude.cpp
►
Amplitude.h
Combine.cpp
Combine.h
Constant.cpp
Constant.h
Cosine.cpp
Cosine.h
CustomAmplitude.cpp
CustomAmplitude.h
Decay.cpp
Decay.h
Linear.cpp
Linear.h
Modulated.cpp
Modulated.h
NZStrongMotion.cpp
NZStrongMotion.h
Ramp.cpp
Ramp.h
Sine.cpp
Sine.h
Tabular.cpp
Tabular.h
TabularSpline.cpp
TabularSpline.h
BodyForce.cpp
BodyForce.h
GroupBodyForce.cpp
GroupBodyForce.h
GroupNodalDisplacement.cpp
GroupNodalDisplacement.h
GroupNodalForce.cpp
GroupNodalForce.h
LineUDL.cpp
LineUDL.h
►
Load.cpp
►
Load.h
►
LoadParser.cpp
►
LoadParser.h
NodalAcceleration.cpp
NodalAcceleration.h
NodalDisplacement.cpp
NodalDisplacement.h
NodalForce.cpp
NodalForce.h
ReferenceForce.cpp
ReferenceForce.h
SupportMotion.cpp
SupportMotion.h
►
Material
►
MPI
►
Recorder
►
Resource
►
Section
►
Solver
►
Step
►
Toolbox
►
UnitTest
►
suanPan.cpp
►
suanPan.h
►
File Members
•
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Modules
Pages
Concepts
Loading...
Searching...
No Matches
Amplitude.h
Go to the documentation of this file.
1
/*******************************************************************************
2
* Copyright (C) 2017-2024 Theodore Chang
3
*
4
* This program is free software: you can redistribute it and/or modify
5
* it under the terms of the GNU General Public License as published by
6
* the Free Software Foundation, either version 3 of the License, or
7
* (at your option) any later version.
8
*
9
* This program is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12
* GNU General Public License for more details.
13
*
14
* You should have received a copy of the GNU General Public License
15
* along with this program. If not, see <http://www.gnu.org/licenses/>.
16
******************************************************************************/
52
#ifndef AMPLITUDE_H
53
#define AMPLITUDE_H
54
55
enum class
AmplitudeType
{
56
RAMP
,
57
TABULAR
,
58
PERIODIC
,
59
MODULATED
,
60
DECAY
61
};
55
enum class
AmplitudeType
{
…
};
62
63
#include <
Domain/Tag.h
>
64
65
class
DomainBase
;
66
67
class
Amplitude
:
public
Tag
{
68
protected
:
69
unsigned
start_step
;
70
double
start_time
= 0.;
// T0
71
public
:
72
explicit
Amplitude
(
unsigned
= 0,
unsigned
= 0);
73
~Amplitude
()
override
=
default
;
74
75
virtual
void
initialize
(
const
shared_ptr<DomainBase>&);
76
77
virtual
double
get_amplitude
(
double
);
78
79
void
set_start_step
(
unsigned
);
80
[[nodiscard]]
unsigned
get_start_step
()
const
;
81
82
void
set_start_time
(
double
);
83
[[nodiscard]]
double
set_start_time
()
const
;
84
};
67
class
Amplitude
:
public
Tag
{
…
};
85
86
#endif
87
Tag.h
Amplitude
An Amplitude class that can generate Amplitude pattern.
Definition
Amplitude.h:67
Amplitude::initialize
virtual void initialize(const shared_ptr< DomainBase > &)
Definition
Amplitude.cpp:24
Amplitude::Amplitude
Amplitude(unsigned=0, unsigned=0)
Definition
Amplitude.cpp:20
Amplitude::start_step
unsigned start_step
Definition
Amplitude.h:69
Amplitude::set_start_time
double set_start_time() const
Definition
Amplitude.cpp:34
Amplitude::set_start_step
void set_start_step(unsigned)
Definition
Amplitude.cpp:28
Amplitude::~Amplitude
~Amplitude() override=default
Amplitude::get_start_step
unsigned get_start_step() const
Definition
Amplitude.cpp:30
Amplitude::start_time
double start_time
Definition
Amplitude.h:70
Amplitude::get_amplitude
virtual double get_amplitude(double)
Definition
Amplitude.cpp:26
DomainBase
The DomainBase class is a template.
Definition
DomainBase.h:104
Tag
A base Tag class.
Definition
Tag.h:38
AmplitudeType
AmplitudeType
Definition
Amplitude.h:55
AmplitudeType::MODULATED
@ MODULATED
AmplitudeType::TABULAR
@ TABULAR
AmplitudeType::PERIODIC
@ PERIODIC
AmplitudeType::DECAY
@ DECAY
AmplitudeType::RAMP
@ RAMP
Load
Amplitude
Amplitude.h
Generated by
1.10.0