Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
OpenDAS
torch-spline-conv
Commits
0b777f0d
Commit
0b777f0d
authored
Apr 09, 2018
by
rusty1s
Browse files
clean up
parent
d42e2629
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
20 additions
and
8 deletions
+20
-8
aten/TH/generic/THBasis.c
aten/TH/generic/THBasis.c
+20
-8
No files found.
aten/TH/generic/THBasis.c
View file @
0b777f0d
...
@@ -2,29 +2,41 @@
...
@@ -2,29 +2,41 @@
#define TH_GENERIC_FILE "generic/THBasis.c"
#define TH_GENERIC_FILE "generic/THBasis.c"
#else
#else
inline
real
THTensor_
(
linear
)(
real
v
,
int64_t
kMod
)
{
return
1
-
v
-
kMod
+
2
*
v
*
kMod
;
}
inline
real
THTensor_
(
quadratic
)(
real
v
,
int64_t
kMod
)
{
if
(
kMod
==
0
)
return
0
.
5
*
v
*
v
-
v
+
0
.
5
;
else
if
(
kMod
==
1
)
return
-
v
*
v
+
v
+
0
.
5
;
else
return
0
.
5
*
v
*
v
;
}
inline
real
THTensor_
(
cubic
)(
real
v
,
int64_t
kMod
)
{
if
(
kMod
==
0
)
{
v
=
(
1
-
v
);
return
v
*
v
*
v
/
6
.
0
;
}
else
if
(
kMod
==
1
)
return
(
3
*
v
*
v
*
v
-
6
*
v
*
v
+
4
)
/
6
;
else
if
(
kMod
==
2
)
return
(
-
3
*
v
*
v
*
v
+
3
*
v
*
v
+
3
*
v
+
1
)
/
6
;
else
return
v
*
v
*
v
/
6
;
}
void
THTensor_
(
linearBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
void
THTensor_
(
linearBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
TH_TENSOR_BASIS_FORWARD
(
1
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
TH_TENSOR_BASIS_FORWARD
(
1
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
v
=
1
-
v
-
kMod
+
2
*
v
*
kMod
;
v
=
THTensor_
(
linear
)(
v
,
kMod
)
;
)
)
}
}
void
THTensor_
(
quadraticBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
void
THTensor_
(
quadraticBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
TH_TENSOR_BASIS_FORWARD
(
2
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
TH_TENSOR_BASIS_FORWARD
(
2
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
if
(
kMod
==
0
)
v
=
0
.
5
*
v
*
v
-
v
+
0
.
5
;
v
=
THTensor_
(
quadratic
)(
v
,
kMod
);
else
if
(
kMod
==
1
)
v
=
-
v
*
v
+
v
+
0
.
5
;
else
v
=
0
.
5
*
v
*
v
;
)
)
}
}
void
THTensor_
(
cubicBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
void
THTensor_
(
cubicBasisForward
)(
THTensor
*
basis
,
THLongTensor
*
weightIndex
,
THTensor
*
pseudo
,
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
THLongTensor
*
kernelSize
,
THByteTensor
*
isOpenSpline
)
{
TH_TENSOR_BASIS_FORWARD
(
3
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
TH_TENSOR_BASIS_FORWARD
(
3
,
basis
,
weightIndex
,
pseudo
,
kernelSize
,
isOpenSpline
,
if
(
kMod
==
0
)
{
v
=
(
1
-
v
);
v
=
v
*
v
*
v
/
6
.
0
;
}
v
=
THTensor_
(
cubic
)(
v
,
kMod
);
else
if
(
kMod
==
1
)
v
=
(
3
*
v
*
v
*
v
-
6
*
v
*
v
+
4
)
/
6
;
else
if
(
kMod
==
2
)
v
=
(
-
3
*
v
*
v
*
v
+
3
*
v
*
v
+
3
*
v
+
1
)
/
6
;
else
v
=
v
*
v
*
v
/
6
;
)
)
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment