Heat a dry flameproof casserole, add the almonds and cook for 1 minute until toasted.
Melt the butter or ghee in the casserole and add the cloves, chilli flakes, cardamom, cumin, coriander, ginger and turmeric. Fry over a gentle heat for 3 minutes. Add the onions and fry for 5 minutes, stirring constantly, until they colour. Add the garlic for the last few minutes.
Transfer the contents of the casserole to a food processor, add 100 ml (3½ fl oz) cold water and process to a smooth paste, scraping down the mixture from the side of the bowl.
Return the paste to the casserole and stir in the lamb, tomatoes and 100 ml (3½ fl oz) cold water. Bring to a simmer, then reduce the heat to its lowest setting. Stir in the yogurt. Cook very gently, uncovered and stirring the mixture occasionally, for about 1½ hours or until the lamb is very tender and the juices thickened. Season and then garnish with coriander to serve.