Em làm 1 cái, nhưng mà bằng C# dc ko

(nhìn code của VC ko thích tí nào, chỉ riêng VC mới ko thích thôi

)
Hiện giờ thì mới chỉ có các phép tính cơ bản cho ma trận, phép xoay ma trận và giải hệ phi tuyến bằng Newton Raphson, giải hệ tuyến tính bằng nhân tử LU.
Đây là toàn bộ source và file dll đã biên dịch sẵn
http://haminhtranhanh.googlepages.co...aMathTools.zip
Em làm cái này cùng với lv, nhưng cảm thấy lv chưa hoàn chỉnh nên đưa cái này lên thôi vậy

Đoạn code ví dụ sử dụng:
Code:
using HaMTHaMathTools;
Matrix R, PB1, y;
...
PB1 = Matrix.Normalize(ParallelRobot.B1 - ParallelRobot.P); //B1 và P của lớp ParallelRobot //cũng là các ma trận
PB1[2, 0] = 0; //truy xuất từng phần tử của ma trận
y = Matrix.Normalize(PB1 & ParallelRobot.N); //& là phép tính hữu hướng 2 vectơ (xem vectơ //là ma trận có số hàng hoặc số cột = 1
R = Transform.Rotation(u,PB1) * Transform.Rotation(v,y); //Tìm ma trận quay quanh vectơ //PB1 một góc u và quanh vectơ y 1 góc v
...
X = new Matrix(6, 1); //tạo mới một ma trận có 6 hàng và 1 cột
X[0, 0] = ParallelRobot.B1[0, 0]; X[1, 0] = ParallelRobot.B1[1, 0];
X[2, 0] = ParallelRobot.B2[0, 0]; X[3, 0] = ParallelRobot.B2[1, 0];
X[4, 0] = ParallelRobot.B3[0, 0]; X[5, 0] = ParallelRobot.B3[1, 0];
X = Numerics.NewtonRaphson(HeFtinhDonghocnghich, JacobiDonghocnghich, X, 5000, Math.Pow(10, -12)); //giải hệ phi tuyến với nghiệm ban đầu là X, số lần lặp tối đa là 5000, //sai số là 10^(-12)
...
Thư viện trên của em chưa hoàn chỉnh lắm, phần ma trận vẫn còn thiếu nhiều phép tính

Các lớp Matrix, Transform, Numerics nằm trong HaMTHaMathTools

Các bác xem qua, nếu có thể phát triển dc cho hoàn chỉnh thì ta làm luôn dc ko