/Users/enrico/Ricerca/develop/PINS/pins-mechatronix/LibSources/submodules/Splines/src/Splines/SplinePchip.hxx Source FileΒΆ

Splines: /Users/enrico/Ricerca/develop/PINS/pins-mechatronix/LibSources/submodules/Splines/src/Splines/SplinePchip.hxx Source File
Splines
SplinePchip.hxx
1/*--------------------------------------------------------------------------*\
2 | |
3 | Copyright (C) 2016 |
4 | |
5 | , __ , __ |
6 | /|/ \ /|/ \ |
7 | | __/ _ ,_ | __/ _ ,_ |
8 | | \|/ / | | | | \|/ / | | | |
9 | |(__/|__/ |_/ \_/|/|(__/|__/ |_/ \_/|/ |
10 | /| /| |
11 | \| \| |
12 | |
13 | Enrico Bertolazzi |
14 | Dipartimento di Ingegneria Industriale |
15 | Universita` degli Studi di Trento |
16 | email: enrico.bertolazzi@unitn.it |
17 | |
18\*--------------------------------------------------------------------------*/
19
20/*\
21 | ____ _ _ ____ _ _
22 | | _ \ ___| |__ (_)_ __/ ___| _ __ | (_)_ __ ___
23 | | |_) / __| '_ \| | '_ \___ \| '_ \| | | '_ \ / _ \
24 | | __/ (__| | | | | |_) |__) | |_) | | | | | | __/
25 | |_| \___|_| |_|_| .__/____/| .__/|_|_|_| |_|\___|
26 | |_| |_|
27\*/
28
29namespace Splines {
30 void
32 real_type const X[],
33 real_type const Y[],
34 real_type Yp[],
35 integer npts
36 );
37
40 public:
41
42 #ifndef DOXYGEN_SHOULD_SKIP_THIS
45 #endif
46
52 PchipSpline( string const & name = "PchipSpline" )
54 {}
55
59 ~PchipSpline() override {}
60
62 SplineType1D type() const override { return SplineType1D::PCHIP; }
63
64 // --------------------------- VIRTUALS -----------------------------------
65
67 void build() override;
68 void setup( GenericContainer const & gc ) override;
69
70 };
71
72}
73
74// EOF: SplinePchip.hxx
Definition Splines.hh:936
void reserve(integer npts) override
Pchip (Piecewise Cubic Hermite Interpolating Polynomial) spline class.
Definition SplinePchip.hxx:39
SplineType1D type() const override
Return spline type (as number)
Definition SplinePchip.hxx:62
PchipSpline(string const &name="PchipSpline")
Definition SplinePchip.hxx:52
void setup(GenericContainer const &gc) override
Definition SplinePchip.cc:289
void build() override
Build a Monotone spline from previously inserted points.
Definition SplinePchip.cc:257
~PchipSpline() override
Definition SplinePchip.hxx:59
virtual void build()=0
string const & name() const
Definition Splines.hh:438
Definition SplineAkima.cc:50
int integer
Signed integer type for splines.
Definition Splines.hh:58
void Pchip_build(real_type const X[], real_type const Y[], real_type Yp[], integer npts)
Definition SplinePchip.cc:127
enum class SplineType1D :integer { CONSTANT=0, LINEAR=1, CUBIC=2, AKIMA=3, BESSEL=4, PCHIP=5, QUINTIC=6, HERMITE=7, SPLINE_SET=8, SPLINE_VEC=9 } SplineType1D
Associate a number for each type of splines implemented.
Definition Splines.hh:71
double real_type
Floating point type for splines.
Definition Splines.hh:57