Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
libcdi
Commits
55cdbb9c
Commit
55cdbb9c
authored
Jun 26, 2017
by
Uwe Schulzweida
Browse files
grid_check_cyclic: bug fix for non monotonic incresing values.
parent
c2b2d32e
Changes
1
Hide whitespace changes
Inline
Side-by-side
src/grid.c
View file @
55cdbb9c
...
...
@@ -2056,14 +2056,21 @@ void grid_check_cyclic(grid_t *gridptr)
{
if
(
xvals
&&
xsize
>
1
)
{
double
xinc
=
xvals
[
1
]
-
xvals
[
0
];
if
(
IS_EQUAL
(
xinc
,
0
)
)
xinc
=
(
xvals
[
xsize
-
1
]
-
xvals
[
0
])
/
(
double
)(
xsize
-
1
);
double
xval1
=
xvals
[
0
];
double
xval2
=
xvals
[
1
];
double
xvaln
=
xvals
[
xsize
-
1
];
if
(
xval2
<
xval1
)
xval2
+=
360
;
if
(
xvaln
<
xval1
)
xvaln
+=
360
;
double
x0
=
2
*
xvals
[
xsize
-
1
]
-
xvals
[
xsize
-
2
]
-
360
;
if
(
IS_NOT_EQUAL
(
xval1
,
xvaln
)
)
{
double
xinc
=
xval2
-
xval1
;
if
(
IS_EQUAL
(
xinc
,
0
)
)
xinc
=
(
xvaln
-
xval1
)
/
(
xsize
-
1
);
double
x0
=
xvaln
+
xinc
-
360
;
if
(
IS_NOT_EQUAL
(
xvals
[
0
],
xvals
[
xsize
-
1
])
)
if
(
fabs
(
x0
-
xvals
[
0
])
<
0
.
01
*
xinc
)
gridptr
->
isCyclic
=
1
;
if
(
fabs
(
x0
-
xval1
)
<
0
.
01
*
xinc
)
gridptr
->
isCyclic
=
1
;
}
}
}
else
if
(
gridptr
->
type
==
GRID_CURVILINEAR
)
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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