add the semi_newton for the eos with complementary condition