Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Stack Of Tasks
eigenpy
Commits
6b652d7a
Commit
6b652d7a
authored
May 09, 2022
by
Wilson Jallet
🎬
Browse files
eigen_ref: test taking a row from a matrix
parent
1ae74c73
Changes
1
Hide whitespace changes
Inline
Side-by-side
unittest/python/test_eigen_ref.py
View file @
6b652d7a
...
...
@@ -35,17 +35,28 @@ def test(mat):
assert
np
.
all
(
mat
[:
2
,
:
3
]
==
np
.
ones
((
2
,
3
)))
mat
.
fill
(
0.0
)
mat
[:,
:]
=
np
.
arange
(
rows
*
cols
).
reshape
(
rows
,
cols
)
printMatrix
(
mat
)
mat0
=
mat
.
copy
()
mat_as_C_order
=
np
.
array
(
mat
,
order
=
"F"
)
getBlock
(
mat_as_C_order
,
0
,
0
,
3
,
2
)[:,
:]
=
1.0
assert
np
.
all
(
mat_as_C_order
[:
3
,
:
2
]
==
np
.
ones
((
3
,
2
)))
for
i
,
rowsize
in
([
0
,
3
],
[
1
,
1
]):
print
(
"taking block [{}:{}, {}:{}]"
.
format
(
i
,
rowsize
+
i
,
0
,
2
))
B
=
getBlock
(
mat_as_C_order
,
i
,
0
,
rowsize
,
2
)
lhs
=
mat_as_C_order
[
i
:
rowsize
+
i
,
:
2
]
print
(
"should be:
\n
{}
\n
got:
\n
{}"
.
format
(
lhs
,
B
))
assert
np
.
array_equal
(
lhs
,
B
)
B
[:]
=
1.0
rhs
=
np
.
ones
((
rowsize
,
2
))
assert
np
.
array_equal
(
mat_as_C_order
[
i
:
rowsize
+
i
,
:
2
],
rhs
)
mat_as_C_order
[:,
:]
=
mat0
mat_as_C_order
[:
3
,
:
2
]
=
0.0
mat_copy
=
mat_as_C_order
.
copy
()
editBlock
(
mat_as_C_order
,
0
,
0
,
3
,
2
)
mat_copy
[:
3
,
:
2
]
=
np
.
arange
(
6
).
reshape
(
3
,
2
)
assert
np
.
a
l
l
(
mat_as_C_order
==
mat_copy
)
assert
np
.
a
rray_equa
l
(
mat_as_C_order
,
mat_copy
)
class
ModifyBlockImpl
(
modify_block
):
def
__init__
(
self
):
...
...
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