1) Simplest thing first: Ferromagnetic (or antiferromagnetic) at the temperature 0K is any material that becomes (anti-)ferromagnetic when you do a spin-polarized calculation.
2) Almost as simple: Diagmagnetic is any non-spinpolarized material with a band gap.
3) Paramagnetic is either: a) a non-magnetic metal or b) a(n) (anti-)ferromagnetic material above its ordering temperature.
For explanations, let's start with paramagnetism, which means that the material is non-magnetic, but will respond to an external magnetic field so as to enhance it (positive susceptibility). This happens either by Pauli paramagnetism, which is that the external field adds a spin-dependent potential polarizes a non-magnetic metal. This is in principle describably by 0K DFT calculations. The other variety of paramagnetism is that we have a magnetic material above its ordering temperature, which means that the atoms all still have magnetic moments, but they are disordered, pointing in random directions so that they average to zero. This situation is not describable by straightforward DFT calculations, but beware that many papers refer to a non-magnetic solution as "paramagnetic" anyway (the reason for this is that the non-magnetic solution is a mean-field approximation to the paramagnetic state, although usually not a very good one).
A sufficiently strong paramagnet will spontaneously become spin-polarized (look up the "Stoner criterion" here), and then we end up with a ferromagnetic metal. This is one way of getting a spin-polarized material, other ways involve having electrons localized in open shell, sufficiently atomic-like orbitals which then become spin-polarized in much the same way as in free atoms. This often gives anti-ferromagnetic insulators. Whatever the precise mechanism, the way to see the magnetism from the DFT calculation is to do plot the spin up and spin down DOS separately and see how they differ. If they don't, there is no magnetic moment. For an anti-ferromagnet, you will need to plot a site-projected DOS, to see the moment on each atom.
Diamagnetism, which is a negative susceptibility from electrons that start to move in orbits due to the magnetic field, is both the most complicated and the simplest. It is always present and always very weak. Calculating the diamagnetic response from DFT is very difficult, but since it is also very weak, it is very rarely necessary to actually do so. The reason that I referred to any non-spin-polarized material with a gap as being diamagnetic is simply that none of the other, stronger mechanisms are active, so only the diamagnetic response will show up in an experiment. In other words, you do not see the diamagnetism in the DFT calculation, but if you have a non-spin-polarized material with a gap, you know that you have it.
Hope, You have been doing well. I read your answer. It looks very interesting to me. Actually, I am involving in first-principles (DFT calculation) study. We are investigating only non-magnetic materials. I'll try to use your suggestion and also I'll contact you if I feel for further help.
Torbjörn provided a detailed description about the magnetism in the DFT world.
There is only one small issue left, the (spiral) spin density waves. Some magetic materials, e.g. Cr or FFC_Fe at its ground state, may not be described as ferromegnetic or simple collinear antiferromagnetic in scope of the Ising model. However, it can be described by some kinds of (noncollinear) spiral spin density waves. At present there are many publications about this issue. E.g.: