As reported in the Bitcoin Wiki, every 1,000 bytes of data in a transaction adds 0.1 mBTC to the fee. Any size below an even thousand is rounded up to the nearest thousand. For example, the fee on a 675-byte transaction would be 0.1 mBTC. Likewise, the fee on a 1,345-byte transaction would be 0.2 mBTC.
To estimate a fee, we need a way to relate the number of transaction inputs (in) and outputs (out) to it's size in bytes (size). The exact size of a transaction can only be determined after it has been signed, which is unfortunately too late to be of much use in many wallet programs. However, the upper size limit can be
found with this equation:
size = 181 * in + 34 * out + 10
[]->
http://bitzuma.com/posts/making-sense-of-bitcoin-transaction-fees/It is not always accurate due to a variety of factors. Most clients calculate this automatically for you. The fee is not 0.1mBTC/kb, it can be as low as 0mBTC or 0.05mBTC/kb for non-free transactions.
Your information is also out of date. The equation you posted is out of date, it uses uncompressed key which is not what most wallets implement right now. Compressed keys uses this equation
134byte*/input+ 32byte/output*
. This is not quite accurate and can vary for various transactions.