hinterglem
New Member
- Joined
- Jun 14, 2006
- Messages
- 26
- Reaction score
- 0
Hi all,
I'm looking for feedback on a stocking algorithm I've written. I have tested it out on a few different configurations, and I think it seems to offer a fairly accurate indication as to how well stocked or overstocked an aquarium is (based on my own experience of keeping various tropical freshwater aquatic creatures for the past 25 years, and having read quite a few articles on the subject).
Of course any algorithmic approach to stocking recommendations will have its limitations, not least of which is that there are quite a few exceptions to the rule (eg. certain types of fish needing more room than others of the same size), but I would appreciate any feedback on how accurate you think this set of rules is, and in particular if you think some part of it needs adjusting.
The idea of the algorithm is to take the volume of the tank, adjust it to take account of substrate, decor, plants, filtration, etc. and award the tank with a certain number of stocking credits. Stocking credits can then be 'spent' on fish of different sizes, with larger fish 'costing' more than smaller ones.
So we start with the volume of the tank in cm3.
Now for working out how many stocking credits a fish will cost:
Phew!
So for example, with a tropical fresh water tank:
Of course, I have written this algorithm as a computer program, but having checked with the mods, I'm not allowed to 'go there', even with a free app (which is fair enough), but I would be very interested to hear if anyone thinks any of these multipliers and offsets are wildly wrong, or if there is something critical I am missing. Thanks in advance!
I'm looking for feedback on a stocking algorithm I've written. I have tested it out on a few different configurations, and I think it seems to offer a fairly accurate indication as to how well stocked or overstocked an aquarium is (based on my own experience of keeping various tropical freshwater aquatic creatures for the past 25 years, and having read quite a few articles on the subject).
Of course any algorithmic approach to stocking recommendations will have its limitations, not least of which is that there are quite a few exceptions to the rule (eg. certain types of fish needing more room than others of the same size), but I would appreciate any feedback on how accurate you think this set of rules is, and in particular if you think some part of it needs adjusting.
The idea of the algorithm is to take the volume of the tank, adjust it to take account of substrate, decor, plants, filtration, etc. and award the tank with a certain number of stocking credits. Stocking credits can then be 'spent' on fish of different sizes, with larger fish 'costing' more than smaller ones.
So we start with the volume of the tank in cm3.
- Subtract an offset according to how much decor (substrate/rocks/bogwood) there is:
- None: 0%
- Light: 5%
- Medium: 20%
- Heavy: 40%
- Major: 60%
- Subtract an offset for non standard temperature ranges (a little too cold or a little too warm): 10%
- Add or subtract an offset according to the size of the tank (on the basis that a larger tank is more stable than a smaller one, so gives you a bit more wiggle room):
- More than 225000cm3 (60 US gallons): add 20%
- More than 110000cm3 (30 US gallons): add 10%
- Between 37500cm3 and 110000cm3 (10 to 30 US Gallons): 0%
- Less than 37500cm3 (10 US gallons): subtract 10%
- Add or subtract an offset based on water change schedule:
- Partial daily: add 15%
- Partial weekly: 0% (default)
- Partial fortnightly: subtract 5%
- Partial monthly: subtract 35%
- Partial less often: subtract 55% (danger!)
- Add or subtract an offset for live plants:
- None: 0%
- Some: add 2%
- Average: add 5%
- Lots: 0%
- Jungle: subtract 5%
- Add an offset for filtration:
- Undergravel filter: 0%
- Internal canister: add 35%
- Extra internal canister (eg. 2 filters): add 50%
- External: add 70%
- Extra External (super duper): add 100%
- For heavily planted aquaria with low filtration only, ensure the volume we now have is no more than the (surface area / 26) * 1500 (to allow enough gas exchange)
- Divide the resulting volume in cm3 by 600 to achieve the number of stocking credits (this number, 600, was acheived by trial and error, but seems to me to be the most appropriate value (to yield a result that would represent approximately 2 credits for a 3 or 4cm fish).
- If the aquarium is brackish, we will halve the number of stocking credits
- If the aquarium is a young marine tank, we will quarter the number of credits
- If the aquarium is a mature marine tank, we will halve the number of credits
Now for working out how many stocking credits a fish will cost:
- Take the adult length of the fish in cm, and if it is:
- A shrimp less than 2cm, multiply by 0.4
- A shrimp 2cm or more, multiply by 0.5
- A snail less than 3cm, multiply by 1
- A snail 3cm or more, multiply by 2
- A fish 4cm or less, multiply by 2
- A fish 8cm or less, multiply by 3
- A fish 15cm or less, multiply by 4
- A fish 22cm or less, multiply by 5
- A fish 30cm or less, multiply by 6
- A fish more than 30cm, multiply by 7
- An African Dwarf Frog, multiply by 3
- An Afrcian Clawed Frog, multiply by 8
- If the fish is wide-bodied (eg. fancy goldfish), double the value
- If the fish is a scavenger/algae eater, subtract one third of the value
- Finally, ensure the average length of the tank is at least 6 times the length of each fish, and the average width of the tank is at least 2 times the length of each fish.
Phew!
So for example, with a tropical fresh water tank:
- 75 Litres (20 US gallons)
- internal canister filter
- medium decor
- partial weekly water changes
- lightly planted
- 6 x neon tetra (2.5 cm each)
- 4 x panda cory (5 cm each)
- 3 x platy (5 cm each)
- 1 x Dwarf Gourami (6 cm)
Of course, I have written this algorithm as a computer program, but having checked with the mods, I'm not allowed to 'go there', even with a free app (which is fair enough), but I would be very interested to hear if anyone thinks any of these multipliers and offsets are wildly wrong, or if there is something critical I am missing. Thanks in advance!