# 3D Vector Calculations On Cp400 Possible?

3D vector

1 reply to this topic

### #1 Mike5000

Mike5000

Newbie

• Members
• 1 posts

• Calculators:
Casio CP400

Posted 22 May 2016 - 11:23 AM

I have a CP400 Classpad and would like to do some 3D vector calculations directly with brackets.

I know 2D vectors is possible (working in a plane) but I need to work in 3D space.

When I say 3D vectors I mean vectors with three coordinates of end point from origo (or vectors with three coordinates for start point and three coordinates for end point if it doesn't start in origo).

3D vectors can also be specified with a length and three angles specified from x axis, y axis and z axis (actually preferable if possible as measurements in the field are often taken this way).

So how do I for example find the length of the vector below?

How do I find the three angles from x-axis to the vector, from  y-axis to the vector and from z-axis to the vector?

Vector: from [1,2,3] to [4,5,6] in 3D space

What is the angles between these two vectors?

Vector a: from [7,8,9] to [10,11,12] in 3D space

Vector b  from [13,14,15] to [16,17,18] in 3D space

Are there an equivalent funcntion like angle([1,2,3],[4,5,6]) that will output three angles?

### #2 pan.gejt

pan.gejt

Casio Freak

• Members
• 174 posts
• Gender:Male
• Location:CZ

• Calculators:
.

Posted 23 May 2016 - 08:15 AM

o, but you can create your own program. It is very simple. If you know 2 vectors -a and b, you can easily compute the 3rd vector c which is perpendicular (orthogonal) to the a and b

http://tutorial.math...ossProduct.aspx

This program computes orthogonal vector only.

Before running the program store your values to MatA and MatB first.

ClrText
crossP(MatA,MatB)⇒MatC
norm(MatA)⇒a
norm(MatB)⇒b
norm(MatC)⇒c
norm(crossP(MatA,MatB)/(a×b )⇒d
norm(crossP(MatA,MatC)/(a×c))⇒e
norm(crossP(MatB,MatC)/(b×c))⇒f
sin⁻¹(d)⇒angle1
sin⁻¹(e)⇒angle2
sin⁻¹(f)⇒angle3
Print "orthogonal vector",ColorMagenta
Print MatC
Print "angle between a and b",ColorBlue
Print angle1
Print approx(angle1)
Print approx(angle1×180/π)
Print "angle between a and c",ColorRed
Print angle2
Print approx(angle2)
Print approx(angle2×180/π)
Print "angle between b and c",ColorGreen
Print angle3
Print approx(angle3)
Print approx(angle3×180/π)

a=(1,2,3)

b=(4,5,6)

[1,2,3]->MatA

[4,5,6]->MatB

results

MatC=(-3,6,-3)

angle1=12,93deg

angle2=90deg (because of orthogonality between a and c)

angle3=90deg ((because of orthogonality between b and c)

Edited:

You can try 3D-Planes activity from following page

http://www.charliewa...cpeActivity.php

or

ClrText
Input a,"a1"
Input b,"a2"
Input c,"a3"
Input d,"b1"
Input e,"b2"
Input f,"b3"
[[a][b][c]]⇒MatA
[[d][e][f]]⇒MatB
Print "Entered Vectors",ColorCyan
Print MatA
Print MatB
crossP(MatA,MatB)⇒MatC
Print "orthogonal vector C=A×B",ColorRed
Print MatC
norm(MatA)⇒g
norm(MatB)⇒h
norm(MatC)⇒i
Print "norm A",ColorMagenta
Print g
Print "norm B",ColorMagenta
Print h
Print "norm C",ColorMagenta
Print i
Print "angle in rad",ColorBlue
Print ((sin⁻¹(norm(crossP(MatA,MatB))/(g×h))))
Print approx((sin⁻¹(norm(crossP(MatA,MatB))/(g×h))))
Print "angle in deg",ColorGreen
Print approx((sin⁻¹(norm(crossP(MatA,MatB))/(g×h)))×180/π)

Edited by pan.gejt, 25 May 2016 - 07:42 AM.

#### 0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users