This is a young field with new products emerging continually. If the product you want is not available at a price you can pay, someone may write software to fill the demand.
Costs vary from free to thousands of dollars.
Usually, you get what you pay for, but not always. Some freeware is very powerful. Often Universities develop software and make it available to other institutions for a nominal price. Some software will run only on a specific kind of computer operating system. Software for Unix is most common.