For smallest, get a super short body albino senegalus. They get up to 4-5 inches.
Other species would be a captive breed sene (7"-12"), del (9"-13") or polli (10"-13").
For pattern wise get a moke (9"-12"), beutt (12"-14"+), palmas (12"-13"), polli (12-13"+) or del (12"-14"+). (All wild caught and there is a chance that they can get bigger but if they were caught at smaller size, chances are they may not get bigger than 12"-13" in that small tank.)
With a 40g tank I suggest that you should get only bichirs that only get up to 10" and not bigger than that. So I guest your just have to get a sene, but if you can get a 75g or 90g then you can keep a 12"+ bichir in there.
10g-29g smaller than 1" and up to 6"
30g-60g 6"+ to 11"+
75g-100g 12"-15"+
120g-180g 16"-20"+
200g+ then keep as many 20"-25"+ bichirs in your tank.
(Note* you may keep as many bichirs in a tank but just make sure you filter is enough to hold the bio-load)