Matrix operations in VB

I need code to do some matrix opperations (I assume you know what matrixes are. I am talking about in math)

I need code to do the following (MUST be for matrixies of any size)

*Add, subtract, multiply
*find inverses (matrix^-1)
*find determinates
LVL 1
BenBenAsked:
Who is Participating?
 
ArkConnect With a Mentor Commented:
Works fine. The only prb is weired FlexGrid positioning.
Change also
Public Const CELLWIDTH As Integer = 800
and in modMSGridRoutines in PrepareForm Function change this:
    If M1.Rows >= 8 Or M1.Cols >= 6 Or M2.Rows >= 8 Or M2.Cols >= 6 Then
        G1.Width = MAXCDW * CELLWIDTH + 100
        G1.Height = MAXCDH * CELLHEIGHT + 100
        G1.ScrollBars = flexScrollBarBoth
'********** added *********************        
        G2.Left = G1.Width + 4 * SPACER
        L2.Left = G2.Left
        L2.Width = G2.Width
        L2.Caption = M2.Name
'********** added *********************        
        G2.Width = MAXCDW * CELLWIDTH + 100
        G2.Height = MAXCDH * CELLHEIGHT + 100
        G2.ScrollBars = flexScrollBarBoth
    End If

BTW, one more link

http://www.planet-source-code.com/xq/ASP/txtCodeId.23648/lngWId.1/qx/vb/scripts/ShowCode.htm
0
 
leojlCommented:
hi ben
1 matrix, 2 matrices.

Excel2000 spreadsheet will do matrix math for you.

Is this a homework assignment?

leo
0
 
ArkCommented:
Hi

http://www.freevbcode.com/ShowCode.Asp?ID=2944

>>This program performs the following operations on real or complex matrices:

Addition
Subtraction
Multiplication
Scalar Multiplication
Scalar Division
Determinant & Inverse
Solution Set<<

http://www.freevbcode.com/ShowCode.Asp?ID=132

>>Matrix operations (addition, subtraction, and multiplication)<<

Cheers
0
Cloud Class® Course: SQL Server Core 2016

This course will introduce you to SQL Server Core 2016, as well as teach you about SSMS, data tools, installation, server configuration, using Management Studio, and writing and executing queries.

 
BenBenAuthor Commented:
nope not homework, curocity.
0
 
BenBenAuthor Commented:
Ark, Thank you for the code, its gonna take me a little to look over :)
0
 
BenBenAuthor Commented:
ARK:

According to the documentation in the code this only works with up to "10x10 matrices" which dosent fit the description "matrices of all sizes" However i still think your answer deservers points. Because I do not want to put a "C" on your answering record, I would like to post a new "Question" with a value of 100 pts, and give you an "A". Is this acceptiable to you?
0
 
ArkCommented:
Hi
Just change
Public Const MAXMATRIXSIZE As Integer = 10
to any size you want, ie
Public Const MAXMATRIXSIZE As Integer = 1000

Some more links:
Transpose matrix of any size (matrix^-1):
http://www.vb2themax.com/Item.asp?PageID=CodeBank&Cat=130&ID=295
Multiplication of any size (sample for 1000x1000)
http://www.planet-source-code.com/xq/ASP/txtCodeId.24468/lngWId.1/qx/vb/scripts/ShowCode.htm

Cheers
0
 
BenBenAuthor Commented:
are you sure that works, why would they put that in anyways
0
 
leojlCommented:
the man in the street does not often have a pressing need to multiply or otherwise manipulate matrices. is there a real world need related to this question or is it an end in itself?

i am starting to make a study of stock options
(msft mostly) and i may use some matrices as a part of the analysis.... so some of the links given  may be of real use to me.

leo
0
 
BenBenAuthor Commented:
supose you have an sysetm of equasions,

x + y + z = 5
5x - 2y -3z = 50
x - 8y -40 = 80

Now, what if you use a matrix to solve this

|1   1   1|  |x|      | 5 |
|5  -2  -3|  |y|  =   |50 |
|x  -8 -40|  |z|      |80 |
     ^        ^         ^
    mA        mB        mC

ok now
(mA)(mB) = mC
(mA)(mA^1)(mB) = (mC)(mA^-1)
(mB)= (mC)(mA^-1)

(this will all look better when its monospaced)
0
 
leojlCommented:
typo...1 for tne x at lower left.
0
 
BenBenAuthor Commented:
the reason for the b is because it proforms slower then my TI83 with big numbers. Oh well
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

All Courses

From novice to tech pro — start learning today.