X-Git-Url: https://git.sesse.net/?p=stockfish;a=blobdiff_plain;f=src%2Fmaterial.cpp;h=a14e3370cad9c4a69afd507c193d09b52801b2c1;hp=21b8ae3304a01bad8c52ce5e97399f1feb60a21d;hb=94dd204c3b10ebe0e6c8df5d7c98de5ba4906cad;hpb=f7926ea41e65d2f687623904550771b7ee8f52a3 diff --git a/src/material.cpp b/src/material.cpp index 21b8ae33..a14e3370 100644 --- a/src/material.cpp +++ b/src/material.cpp @@ -37,7 +37,7 @@ namespace { // pair pawn knight bishop rook queen { 0 }, // Bishop pair { 39, 2 }, // Pawn - { 35, 271, -4 }, // knight OUR PIECES + { 35, 271, -4 }, // Knight OUR PIECES { 0, 105, 4, 0 }, // Bishop { -27, -2, 46, 100, -141 }, // Rook {-177, 25, 129, 142, -137, 0 } // Queen @@ -136,7 +136,7 @@ Entry* probe(const Position& pos, Table& entries, Endgames& endgames) { std::memset(e, 0, sizeof(Entry)); e->key = key; e->factor[WHITE] = e->factor[BLACK] = (uint8_t)SCALE_FACTOR_NORMAL; - e->gamePhase = game_phase(pos); + e->gamePhase = pos.game_phase(); // Let's look if we have a specialized evaluation function for this particular // material configuration. Firstly we look for a fixed configuration one, then @@ -245,18 +245,4 @@ Entry* probe(const Position& pos, Table& entries, Endgames& endgames) { return e; } - -/// Material::game_phase() calculates the phase given the current -/// position. Because the phase is strictly a function of the material, it -/// is stored in MaterialEntry. - -Phase game_phase(const Position& pos) { - - Value npm = pos.non_pawn_material(WHITE) + pos.non_pawn_material(BLACK); - - return npm >= MidgameLimit ? PHASE_MIDGAME - : npm <= EndgameLimit ? PHASE_ENDGAME - : Phase(((npm - EndgameLimit) * 128) / (MidgameLimit - EndgameLimit)); -} - } // namespace Material