Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 944
  • Last Modified:

Simultaneous equations

What is the concept behind solving simultaneous equations in visual basic?  I want to make a prgram to balance chemical equations, and this is part of it.  the maximum unknowns will probably be 5.  but i am not sure how to do it.  please help.

also, is there any good way of making this balancer?  any suggestions are welcomed.  thanks.
0
djiangr
Asked:
djiangr
3 Solutions
 
tzxie2000Commented:
I suggest you to use matlab
It will be more fit to balance chemical equations
0
 
KeithWatsonCommented:
I don't know if there's anything off the shelf to do this; however, solving simultaneous equations using computers is typically done using a technique called Gaussian elimination, which is programmable as compared with the intuitive method that's taught in school.

Here's a link to a page describing the technique:

http://mathworld.wolfram.com/GaussianElimination.html
0
 
OliWarnerCommented:
yarr, it may call the technique of solving them: matricies

Its a pretty similar idea apart from matricies go on a lot further as to solving more unknowns... its a big thing we did in a maths unit for degree level Computer Science
0
 
Harisha M GCommented:
There are many ways to solve simultaneous equations.

1) Matrix method
2) Determinant method (Cramer's rule)
3) By direct solving (As we do for 2 unknowns)

Among these most effecient method is 2).
But it is unfortunate that you should use a good algorithm to get the determinant of the matrices of any order. Because you have stated that the number of unknowns may be upto 5.

If you succeed in getting the Determinant then your problem is solved. Determinant can be found by using Recursion Technique.

For ex:
ax + by + cz = p
dx + ey + fz = q
gx + hy + iz = r

can be solved as
x = Δ1/Δ
y = Δ2/Δ
z = Δ3/Δ

where
      | a b c |          | p b c |         | a p c |           | a b p |
Δ = | d e f |  Δ1 = | q e f |  Δ2 = | d q f |  Δ3 =  | d e q |
      | g h i |           | r h i |          | g r i |            | g h r |

Good Luck!
0
 
DominicCroninCommented:
The dotnet framework even has a Matrix class. Unfortunately it's only a 3 x 3 (it's intended for use in graphics processing) so it's not a solution for your problem, but worth a look just for interest's sake.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpguide/html/_gdiplus_matrix_representation_of_transformations_about.asp

Also interesting:

http://www.euclideanspace.com/maths/algebra/matrix/

0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now