quarterCosineRamp.H
Go to the documentation of this file.
1 /*---------------------------------------------------------------------------*\
2  ========= |
3  \\ / F ield | OpenFOAM: The Open Source CFD Toolbox
4  \\ / O peration | Website: https://openfoam.org
5  \\ / A nd | Copyright (C) 2017-2020 OpenFOAM Foundation
6  \\/ M anipulation |
7 -------------------------------------------------------------------------------
8 License
9  This file is part of OpenFOAM.
10 
11  OpenFOAM is free software: you can redistribute it and/or modify it
12  under the terms of the GNU General Public License as published by
13  the Free Software Foundation, either version 3 of the License, or
14  (at your option) any later version.
15 
16  OpenFOAM is distributed in the hope that it will be useful, but WITHOUT
17  ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18  FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
19  for more details.
20 
21  You should have received a copy of the GNU General Public License
22  along with OpenFOAM. If not, see <http://www.gnu.org/licenses/>.
23 
24 Class
25  Foam::Function1s::quarterCosineRamp
26 
27 Description
28  Quarter-cosine ramp function starting from 0 and increasing to 1 from \c
29  start over the \c duration and remaining at 1 thereafter.
30 
31 See also
32  Foam::Function1s::Ramp
33 
34 SourceFiles
35  quarterCosineRamp.C
36 
37 \*---------------------------------------------------------------------------*/
38 
39 #ifndef quarterCosineRamp_H
40 #define quarterCosineRamp_H
41 
42 #include "Ramp.H"
43 
44 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
45 
46 namespace Foam
47 {
48 namespace Function1s
49 {
50 
51 /*---------------------------------------------------------------------------*\
52  Class quarterCosineRamp Declaration
53 \*---------------------------------------------------------------------------*/
54 
56 :
57  public Ramp<quarterCosineRamp>
58 {
59 
60 public:
61 
62  // Runtime type information
63  TypeName("quarterCosineRamp");
64 
65 
66  // Constructors
67 
68  //- Construct from name and dictionary
70  (
71  const word& name,
72  const dictionary& dict
73  );
74 
75 
76  //- Destructor
77  virtual ~quarterCosineRamp();
78 
79 
80  // Member Functions
81 
82  //- Return value for time t
83  virtual inline scalar value(const scalar t) const;
84 
85  //- Return the integral between times t1 and t2
86  virtual inline scalar integral
87  (
88  const scalar t1,
89  const scalar t2
90  ) const;
91 
92 
93  // Member Operators
94 
95  //- Disallow default bitwise assignment
96  void operator=(const quarterCosineRamp&) = delete;
97 };
98 
99 
100 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
101 
102 } // End namespace Function1s
103 } // End namespace Foam
104 
105 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
106 
107 #include "quarterCosineRampI.H"
108 
109 // * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
110 
111 #endif
112 
113 // ************************************************************************* //
Quarter-cosine ramp function starting from 0 and increasing to 1 from start over the duration and rem...
quarterCosineRamp(const word &name, const dictionary &dict)
Construct from name and dictionary.
const word const dictionary & dict
Definition: Function1.H:84
A list of keyword definitions, which are a keyword followed by any number of values (e...
Definition: dictionary.H:156
const word & name() const
Return the name of the entry.
virtual ~quarterCosineRamp()
Destructor.
void operator=(const quarterCosineRamp &)=delete
Disallow default bitwise assignment.
A class for handling words, derived from string.
Definition: word.H:59
virtual scalar value(const scalar t) const
Return value for time t.
virtual scalar integral(const scalar t1, const scalar t2) const
Return the integral between times t1 and t2.
Ramp function base class for the set of scalar functions starting from 0 and increasing monotonically...
Definition: Ramp.H:97
Namespace for OpenFOAM.