better to move nodal variable check into the constructor #2668