def _ncores(meshes, twod):
nnpb = len(meshes)  <EOL>nns = [<NUM_LIT:1>, <NUM_LIT:1>, <NUM_LIT:1>]  <EOL>if twod is None or '<STR_LIT:X>' in twod:<EOL><INDENT>while (nnpb > <NUM_LIT:1> and<EOL>meshes[nns[<NUM_LIT:0>]]['<STR_LIT:X>'][<NUM_LIT:0>, <NUM_LIT:0>, <NUM_LIT:0>] ==<EOL>meshes[nns[<NUM_LIT:0>] - <NUM_LIT:1>]['<STR_LIT:X>'][-<NUM_LIT:1>, <NUM_LIT:0>, <NUM_LIT:0>]):<EOL><INDENT>nns[<NUM_LIT:0>] += <NUM_LIT:1><EOL>nnpb -= <NUM_LIT:1><EOL><DEDENT><DEDENT>cpu = lambda icy: icy * nns[<NUM_LIT:0>]<EOL>if twod is None or '<STR_LIT:Y>' in twod:<EOL><INDENT>while (nnpb > <NUM_LIT:1> and<EOL>meshes[cpu(nns[<NUM_LIT:1>])]['<STR_LIT:Y>'][<NUM_LIT:0>, <NUM_LIT:0>, <NUM_LIT:0>] ==<EOL>meshes[cpu(nns[<NUM_LIT:1>] - <NUM_LIT:1>)]['<STR_LIT:Y>'][<NUM_LIT:0>, -<NUM_LIT:1>, <NUM_LIT:0>]):<EOL><INDENT>nns[<NUM_LIT:1>] += <NUM_LIT:1><EOL>nnpb -= nns[<NUM_LIT:0>]<EOL><DEDENT><DEDENT>cpu = lambda icz: icz * nns[<NUM_LIT:0>] * nns[<NUM_LIT:1>]<EOL>while (nnpb > <NUM_LIT:1> and<EOL>meshes[cpu(nns[<NUM_LIT:2>])]['<STR_LIT>'][<NUM_LIT:0>, <NUM_LIT:0>, <NUM_LIT:0>] ==<EOL>meshes[cpu(nns[<NUM_LIT:2>] - <NUM_LIT:1>)]['<STR_LIT>'][<NUM_LIT:0>, <NUM_LIT:0>, -<NUM_LIT:1>]):<EOL><INDENT>nns[<NUM_LIT:2>] += <NUM_LIT:1><EOL>nnpb -= nns[<NUM_LIT:0>] * nns[<NUM_LIT:1>]<EOL><DEDENT>return np.array(nns)<EOL>
Compute number of nodes in each direction.