Battery life of a given circuit

The Arduino is removed from this example for simplification.

From what information i could find to determine the theoretical battery life of a given device/circuit you divide the battery capacitance in mA-h by the current drawn by said device/circuit, and some even recommend multiplying that by 0.7 I'm guessing for a more real life estimate.

So my questions are:

(A) is this a good method

(B) is there any additional, non-minor, information one should take into account.

(C) And this is the important one, if i am running (100) 2mA LEDs off (1) 9v
595 mA-h should i expect in the neighborhood of 2.08 to 2.97 hours of
lifetime in average temp. conditions?

Thank you for your time

EDIT: revised the calculated hours.... originally was for 1 not 100 2mA LEDs.

I believe what you can get here with calculations are only rough approximations that can vary greatly depending on the condition of your battery.

If I was you, I would just plug the whole circuit on the arduino and measure the amperage drawn from the battery, obtaining this way a precise value of amperage. If it draws around 300mA (with the arduino), I would say it will last around 1 - 1.5 hours... (EDIT: if not less)

Actually, all depends on the way your battery behaves when it starts losing power. Usually, the voltage drops and the internal resistance increases, which comes with a decrease in efficiency. Better is the quality of your battery, smaller those factors will be.

I believe the 0.7 is an arbitrary constant that is meant to take in account those factors, because even though it is said to be 595 mAh, it may not charge to full capacity (if it is rechargeable) and by the time it had spent 400 mAh, its voltage will be too small to run the arduino.

Really, the best thing to do would be to just take a battery and test it on the field.

Thanks, i think just testing it is a good choice. Additionally while googling battery internal resistance i found this link that was very informative on the subject of batteries in a circuit.