Early core degradation determines the amount of hydrogen generated by cladding oxidation as well as the temperature, the mass, and the composition of corium that further relocates into the lower head of reactor pressure vessel (RPV), which is essential for the effectiveness analysis of in-vessel retention (IVR) and hydrogen recombiners. In this paper, the mechanisms of controlling phenomena in the early phase of core degradation are analysed at first. Then, numerical models adopted to calculate (1) core heating up, (2) cladding oxidation, (3) dissolution between molten zirconium and fuel pellets, and (4) formation of a molten pool in the core active section are presented. Compared with integral codes for severe accident analysis (such as MAAP and MELCOR), the models in this paper are established at the fuel pin level and the calculation is performed in 3D, which can capture the detail local phenomena during the core degradation and eliminate the average effect due to equivalent rings used in integral codes. In addition, most of the control equations in this paper are calculated by implicit schemes, which can improve the accuracy and stability of the calculation. In the simulation, the calculation oxidation is calculated by using the oxygen diffusion model, while the dissolution is calculated with Kim, Hayward, Hofmann, and IBRAE models to perform uncertainty analysis. For the validation, the cladding oxidation model is verified by Olander theoretical cases in the conditions of both steam-rich and steam-starved. The dissolution models are validated by the RIAR experiment. The code is overall verified by Phebus FPT0 on the integral phase of core early degradation. According to the simulation results, it can be inferred that the dissolution reaction between the molten zirconium and fuel pellets is the main reason for the melting of UO2 at low temperature. In the case of starved steam, part of the fuel pellets can melt down even at 2248 K and relocate to the bottom of the core, which is much lower than the melting point of UO2 (3113 K).