Suppose a computer program needs to apply an affine transformation to a complex three-dimensional object made up of 3000 points. The transformation is composed of 8 matrices (call them M¡ through Mg), so for each point (x, y, z) in the object, the following operation is performed. JI M1 M2 M3 M7 M8 Each multiplication of a matrix times a column vector involves 16 multiplications (of one number by another) and 12 additions, for a total of 28 arithmetic operations. Each multiplication of a matrix times another matrix involves 64 multiplications and 48 additions, for a total of 112 arithmetic operations. (These numbers are not made up or chosen randomly; they are facts about 4 x 4 matrix multiplication.) The most inefficient way of applying the transformation to the 3000 points would be to begin on the left, multiplying M, by M2, then that result by M3, and so on along the list from left to right, and doing the same 8 multiplications again for each of the 3000 points. How many arithmetic operations would this require for transforming one point? How many would it require in total for transforming all 3000 points?

C++ Programming: From Problem Analysis to Program Design
8th Edition
ISBN:9781337102087
Author:D. S. Malik
Publisher:D. S. Malik
Chapter8: Arrays And Strings
Section: Chapter Questions
Problem 24PE
icon
Related questions
Question
Suppose a computer program needs to apply an affine transformation to a complex three-dimensional object made up of 3000
points. The transformation is composed of 8 matrices (call them M1 through M3), so for each point (x, y, z) in the object, the
following operation is performed.
|-|-|-|-||
y
M1
M2
M3
M7
M8
Each multiplication of a matrix times a column vector involves 16 multiplications (of one number by another) and 12 additions,
for a total of 28 arithmetic operations. Each multiplication of a matrix times another matrix involves 64 multiplications and 48
additions, for a total of 112 arithmetic operations. (These numbers are not made up or chosen randomly; they are facts about
4 x 4 matrix multiplication.)
The most inefficient way of applying the transformation to the 3000 points would be to begin on the left, multiplying M1 by
M2, then that result by M3, and so on along the list from left to right, and doing the same 8 multiplications again for each of
the 3000 points. How many arithmetic operations would this require for transforming one point?
How many would it require in total for transforming all 3000 points?
Transcribed Image Text:Suppose a computer program needs to apply an affine transformation to a complex three-dimensional object made up of 3000 points. The transformation is composed of 8 matrices (call them M1 through M3), so for each point (x, y, z) in the object, the following operation is performed. |-|-|-|-|| y M1 M2 M3 M7 M8 Each multiplication of a matrix times a column vector involves 16 multiplications (of one number by another) and 12 additions, for a total of 28 arithmetic operations. Each multiplication of a matrix times another matrix involves 64 multiplications and 48 additions, for a total of 112 arithmetic operations. (These numbers are not made up or chosen randomly; they are facts about 4 x 4 matrix multiplication.) The most inefficient way of applying the transformation to the 3000 points would be to begin on the left, multiplying M1 by M2, then that result by M3, and so on along the list from left to right, and doing the same 8 multiplications again for each of the 3000 points. How many arithmetic operations would this require for transforming one point? How many would it require in total for transforming all 3000 points?
Expert Solution
trending now

Trending now

This is a popular solution!

steps

Step by step

Solved in 2 steps with 2 images

Blurred answer
Knowledge Booster
Use of XOR function
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.
Similar questions
  • SEE MORE QUESTIONS
Recommended textbooks for you
C++ Programming: From Problem Analysis to Program…
C++ Programming: From Problem Analysis to Program…
Computer Science
ISBN:
9781337102087
Author:
D. S. Malik
Publisher:
Cengage Learning
C++ for Engineers and Scientists
C++ for Engineers and Scientists
Computer Science
ISBN:
9781133187844
Author:
Bronson, Gary J.
Publisher:
Course Technology Ptr
Operations Research : Applications and Algorithms
Operations Research : Applications and Algorithms
Computer Science
ISBN:
9780534380588
Author:
Wayne L. Winston
Publisher:
Brooks Cole