This project is read-only.

Matrices

Nov 18, 2013 at 3:34 PM
Hello,

you have planned the implementation of matrices.
Do you already know how long it will be take or you already
finished yet?

Thank you.
I really need the implementation of matrices.
Like this, Matrix.M1..M2 ... -> IMathExpression,
Every Matrix-Element should be an expression.
And the Matrix could be parsed like this 2*{2,3,4} or what do you mean?

Best Regards.
Ronny
Nov 20, 2013 at 4:38 PM
I implemented wrappers for vector and matrix (in the "dev" branch). But I don't know how to implement add, sub, mul and etc of matrices.
The Calculate method returns "double", but I have to have IMathExpression.

I can change the IMathExpression interface.
public interface IMathExpession
{
// ...
IMathExpression Calculate(...); // How to get number without casting to Number.
// ...
}

But I will break all existing code.
Nov 20, 2013 at 4:45 PM
Or:

Create separated classes for operations (As Simplify), but it's strange decision.
Mar 4, 2014 at 8:12 AM
I've seen that you've added matrices. Very nice. Thank you ;)
Could you also add a function for sumarizing, maybe like this one,
Sum(IMathExpression expression,string indexName, IMathExpression indexInit, IMathExpression increment)

Thank you. ;)
And many thanks for your create work
Mar 4, 2014 at 8:17 AM
I've seen you've also added these features. Many thanks :)
Mar 4, 2014 at 11:52 AM
Edited Mar 4, 2014 at 12:24 PM
Another thing,

why I can't calculate the product of two vectors?
Or Crossproduct etc. Will this be supported in future? like this "cross({0,1,2},{3,4,5})"

I also want to do this, abs({0,1,2}) the absolute value of a vector.

I hope it could be solved or added.
Thank you.

Regards
Ronny
Mar 5, 2014 at 9:53 AM
The product AB is defined only if the number of columns in A is equal to the number of rows in B.

If A = {1, 2, 3} - 1 row, 3 cols
And B = {4, 8, 2} - 1 row (need 3 rows), 3 cols.
Mar 5, 2014 at 12:47 PM
could you also implement the cross product?
and maybe the length of a vector, like this abs({1,2,3}), => sqrt(1²+2²+3²).

Do you still plan to implement a Solve-Feature? Like 10+x=15.
Sorry, many questions. But your library is the most powerful and fastest math lib for c#.

Another thing would be a nice feature.
Complex Number. Like 10i < 5°,
The .Net Framework has support for such numbers,
maybe you could include it in your library.

Thank you.
Best Regards
Ronny
Mar 8, 2014 at 10:29 AM
I don't plan to implement complex numbers and a solving of expressions now. Maybe later.
Mar 8, 2014 at 10:34 AM
Cross product of vector.

In this implementation, a vector is a sequence of elements (an one-dimensional array). A matrix is a two-dimensional array.

{1, 2, 3} don't means coordinates of vector.
Mar 8, 2014 at 10:49 AM
Edited Mar 8, 2014 at 10:51 AM
I want to cross two vectors like that,

v1 = {1,2,3};
v2 = {2,3,4};

cross(v1,v2);

so I just want to parse it like this... ="cross({1,2,3},{2,3,4})", the result should be
= { -1 ; 2 ; -1 }

I also want to calculate the determinate of a matrix, also be parsed, ="det({{1,2},{2,3}})",
a squared matrix, the result should be a number.

And an important think is the implementation of vector length.

abs({1,2,3}), I want to use the abs-Function with a Vector parameter,

Regards
Ronny
Mar 9, 2014 at 9:44 AM
"det({{1,2},{2,3}})" works. Result is -1.

I maybe implement cross and abs later.
Mar 20, 2014 at 10:08 PM
Hi,

do you know why I can't parse something like this?

({1,2,3}*4)+{2,3,4}

you couldn't be parsed. {4,8,12}+{2,3,4}={6,11,16}
I hope its only a little problem.

With my real calculator it works perfectly.

Thanks and I hope you could solve this.
Ronny :)
Mar 21, 2014 at 5:59 PM
It's a bug in Add, Sub and Mul. I'll fix it.
Mar 22, 2014 at 2:11 PM
Fixed.
Mar 22, 2014 at 6:06 PM
thx =)