Discussion about math, puzzles, games and fun. Useful symbols: ÷ × ½ √ ∞ ≠ ≤ ≥ ≈ ⇒ ± ∈ Δ θ ∴ ∑ ∫ π -¹ ² ³ °

You are not logged in.

- Topics: Active | Unanswered

**JamesW****Member**- Registered: 2012-12-31
- Posts: 13

Hi All

I am looking for a good code or software package to do Simmulated Annealing and Lattice Boltzmann. As I have no expertise in coding or using these numerical methods, it is strongly desirable that they are well documented and easy to use.

Thank you in advance for your help.

Offline

**bobbym****Administrator**- From: Bumpkinland
- Registered: 2009-04-12
- Posts: 97,287

Hi;

I have never used simulated annealing. I do know that it is used jobs that are 100 x 100 x 100. A pretty big array. Have you googled around for one in the language you are using?

**In mathematics, you don't understand things. You just get used to them.**

**If it ain't broke, fix it until it is.**

Offline

**JamesW****Member**- Registered: 2012-12-31
- Posts: 13

Hi;

I googled but the stuff I found is rather confusing. I therefore decided to seek an expert advice rather than wasting my time trying.

Offline

**bobbym****Administrator**- From: Bumpkinland
- Registered: 2009-04-12
- Posts: 97,287

Hi;

Wished I could help more with that but I am not familiar with it all.

**In mathematics, you don't understand things. You just get used to them.**

**If it ain't broke, fix it until it is.**

Offline

**JamesW****Member**- Registered: 2012-12-31
- Posts: 13

Many thanks!

Offline

**Mrwhy****Member**- Registered: 2012-07-02
- Posts: 52

If I were you I'd use the computer language QB64

Find out all about it on Google

It is a much empowered version of dartmout basic inventted by enthusiasts all those years ago who demanded it be SIMPLE TO USE.

An even simpler version is QB45 - but some Windows computers are prevented from running it.

I have found a way arounnd this, so get all my progs running on qb45 and THEN transfer to the faster, more powerful qb64 (requires no changes in my prog at all!)

Offline

**bobbym****Administrator**- From: Bumpkinland
- Registered: 2009-04-12
- Posts: 97,287

Hi;

To write the package he needs he would have to be very conversant with the algorithm. Also, for a numerical method it must be numerically stable. This means lots of numerical analysis. For languages like C++ and QB this is mandatory because they have fixed precision numbers and subtractive cancellation and smearing can erode the accuracy of the result.

**In mathematics, you don't understand things. You just get used to them.**

**If it ain't broke, fix it until it is.**

Offline

**Mrwhy****Member**- Registered: 2012-07-02
- Posts: 52

In qbasic you write your aon program and therefore UNDERSTAND the assumptions made!

Annealing is very simple

Use the RND list of pseudorandom numbers to adjust each parameter a very small amount.

Note in each case whether the solution you get is nearer to your desires or farther away.

Continue the way that promises most.

James, i'd be happy to try to help if you say what you are trying to anneal.

I have no experience of "Boltzman lattices" but lots of Southwell's Relaxation methods.

Southwell's Relaxation of Constraints is indeed a form of "annealing" and the wonderful thing about it is it FORGIVES errors (just takes longer if you make them!)

Offline