Is the formula trainer level + 1.5 for Pokémon still valid?
Answers
So .. my guess is you got the IVs wrong. It's probably a level 40 with 14/11/13 IVs (84.4% instead of 97.8%). I guess it could be a level 39.5 with 14/13/14 also).
EDIT: I just read the comment above where the commenter stated that the actual cap is 39 due to some bug or another. If that's the case, I'm wrong.
At least there has been numerous reports from people that they can't power up their Pokémon to their max level. It is unlikely that suddenly all of them are checking their Pokémon's IV's wrong :P Anyway, I suppose it's a bug but I don't know for sure what causes it. I hope Niantic will address it though. Luckily I'm only level 33.
Apparently the servers will allow a pokemon to be powered up to level 40, but there is a client-side bug that removes the power up button early when the pokemon reaches level 39.
Reportedly you can log in with two devices (don't know whether or how this violates ToS), load the pokemon's info page on both devices, press power up one one, then press power up on the second to reach lv39.5. Presumably you could use three devices to fully reach lv40, but I haven't actually heard anyone say so.