Gradient Augmented Levelset Implementation in CPU & GPU
Main Page
Related Pages
Namespaces
Data Structures
Files
File List
Globals
interpolate.h (Latest change: Author:Lakshman Anumolu <acrlakshman@yahoo.co.in>, 2019-07-21 16:12:22 -0500, [commit: d791c50])
Go to the documentation of this file.
1
// Copyright 2019 Lakshman Anumolu, Raunak Bardia.
3
//
4
// Redistribution and use in source and binary forms, with or without
5
// modification, are permitted provided that the following conditions are
6
// met:
7
//
8
// 1. Redistributions of source code must retain the above copyright notice,
9
// this list of conditions and the following disclaimer.
10
//
11
// 2. Redistributions in binary form must reproduce the above copyright notice,
12
// this list of conditions and the following disclaimer in the documentation
13
// and/or other materials provided with the distribution.
14
//
15
// 3. Neither the name of the copyright holder nor the names of its contributors
16
// may be used to endorse or promote products derived from this software without
17
// specific prior written permission.
18
//
19
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23
// HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
32
#pragma once
33
34
#include "
gals/cpu/interpolation/hermite.h
"
35
#include "
gals/cpu/interpolation/linear.h
"
36
#include "
gals/cpu/levelset.h
"
37
#include "
gals/utilities/array.h
"
38
#include "
gals/utilities/grid.h
"
39
#include "
gals/utilities/mat3.h
"
40
#include "
gals/utilities/vec3.h
"
41
42
namespace
GALS
43
{
44
namespace
CPU
45
{
50
template
<
typename
T,
typename
T_GRID,
typename
INTERPOLATION_SCHEME = GALS::INTERPOLATION::Linear<T, T_GRID>>
51
class
Interpolate
52
{
53
public
:
54
using
value_type
= T;
55
58
Interpolate
();
59
62
~Interpolate
();
63
70
static
void
compute
(
const
Array<T_GRID, typename T_GRID::position_type>
&x_interp,
const
Array<T_GRID, T>
&alpha,
71
Array<T_GRID, T>
&alpha_interpolated);
72
81
static
void
compute
(
const
Array<T_GRID, typename T_GRID::position_type>
&x_interp,
82
GALS::CPU::Levelset<T_GRID, double>
&levelset);
83
};
84
85
}
// namespace CPU
86
}
// namespace GALS
GALS::CPU::Levelset
Definition:
levelset.h:70
GALS::CPU::Interpolate
Definition:
interpolate.h:51
hermite.h
mat3.h
linear.h
array.h
GALS::CPU::Interpolate::compute
static void compute(const Array< T_GRID, typename T_GRID::position_type > &x_interp, const Array< T_GRID, T > &alpha, Array< T_GRID, T > &alpha_interpolated)
Definition:
interpolate.cc:45
GALS
Definition:
input-parser.h:39
GALS::CPU::Array
Definition:
array.h:49
GALS::CPU::Interpolate::value_type
T value_type
Definition:
interpolate.h:54
GALS::CPU::Interpolate::~Interpolate
~Interpolate()
Definition:
interpolate.cc:40
grid.h
levelset.h
GALS::CPU::Interpolate::Interpolate
Interpolate()
Definition:
interpolate.cc:35
vec3.h
interpolate.h
Generated on Mon Jul 29 2019 15:24:07 for Gradient Augmented Levelset Implementation in CPU & GPU by
1.8.11