Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Scientific Software (ideas)

  1. Jul 27, 2009 #1
    I would like to hear from you guys, ideas about a program that can be handy, for a scientist or a student, in the field of chemistry, physics or mathematics.

    I want to create something which does not exist on the market but can be helpful for many. I am a computer scientist currently studying Physical sciences as a second degree and would like to create something useful, in this field, while learning from the experience.

    Offcourse i understand that there are many things which can be created and some of them have a big degree of diffuculty in the implementation side. However all ideas are welcome and everything can be discussed. :cool:
  2. jcsd
  3. Jul 28, 2009 #2
    Reliable numerical schemes to analyze realistic solutions of the Einstein equations would be rather nice. Say something along the lines of a constraint preserving scheme for binary black hole mergers.

  4. Jul 28, 2009 #3
    hahaha ... Ye sure...... I would like something like that as well if it's eatable ...
  5. Jul 28, 2009 #4
    I have thought about this too. A few years ago I would have said something to process units in your calculations. But I recently found a library for that.

    The things I could use now are these:
    1) Something similar to logical programming: Imagine an excel spreadsheet. First we give formulas between a bunch of cells. Now we enter a bunch of values and Excel calculates the rest. But contrary to ordinary excel it is not fixed which entries are the input and which are the output. So say we have a sum over a column in one field. We float one of the values in the column and give a new fixed sum, and Excel would change the floated entry in the column so the new sum is correct.
    Ideally it would work like this. I enter the formula for the field of a coil for example, it contains the area, the length, the number of turns and the current. I enter my coil parameters, get a B field, and then enter a new B-Field, to find out how many more turns I need. As you see there are a number of issues... not all functions are invertible, sometimes conditions cannot be fulfilled, sometimes there is more then one way to get an answer. Maybe there are ways to include mathematica or maple to calculate the inverses automatically.

    2) A nice library to do calculations on values with error margins, would make a few people happy.

    3) A nifty search engine for pdfs, and postscipt where you can search for formulas, but the engine should ignore the variable names, or allow you to specify which variable names should stay the same and which can change (so it doesn't replace pi with x). The more it understands the better: fractions, integrals, sums... If you hooked this up to the arxiv that would be pretty cool.

    Those problems should leave a lot of room to work yourself up but also allow for some smaller solutions.
  6. Jul 29, 2009 #5
    I wouldn't worry so much about writing completely new software. Good new software arises from a real personal need, rather than an invented one. Pick some useful software that already exists, but which is expensive, and then write your own version, and then be really kind and distribute it for free with the source code. Also make it cross-platform if you can.

    Good quality, free software, which you can edit if you want, is what everyone loves (especially if you're a cheap student). For example... I found myself forking out for a Graph digitiser recently. There are a few free options on the internet, but none are any good, or come with restrictions until you pay. It's simple software and doesn't deserve a high price tag, but who has time to write their own when you need it there and then?
  7. Jul 30, 2009 #6
    thanks for your ideas 0xDEADBEEF very nice :)...

    Chrisharvey a graph digitiser is a program that take as input a graph and as output gives an approximation of x,y coordinates (on 2d space) correct?

    What kind of input does this kind of program requires? Image files? If yes, are there any other kind of files that can be used as input?
  8. Jul 30, 2009 #7
    I do a lot of mathematical programming and one thing I often need to do is calculate a very nasty derivative or polynomial in closed form. I can use Maple to do this, but often the output is completely unusable and takes up several pages of text, when I know it can be reduced by finding common sub expressions and introducing temporary variables. There is not any software in existence that allows you to specify a set of expressions and then will translate them into a new set of expressions with lower arithmetic cost (ie, let you define heuristic cost for multiplication, addition, etc, and then rearrange it in such a way as to minimize this). Compilers do some optimization, but not for really complicated expressions like this.
Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook