but gmsh_read parses it as linear triangular mesh file. Here is the code I used to parse the mesh:
from meshpy import gmsh_reader
mesh_info = gmsh_reader.GmshMeshReceiverNumPy()
filename = gmsh_reader.FileSource("./mesh/tcav.txt")
gmsh_reader.read_gmsh(mesh_info,filename.filename,force_dimension=None)
mesh_info.elements
[array([0]),
array([1]),
array([2]),
array([0, 3]),
array([3, 4]),
array([4, 5]),
array([5, 6]),
array([6, 1]),
array([ 1, 12]),
array([12, 13]),
array([13, 14]),
array([14, 15]),
array([15, 2]),
array([ 2, 21]),
array([21, 22]),
array([22, 23]),
array([23, 24]),
array([24, 0]),
array([15, 21, 32]),
array([ 6, 12, 33]),
array([21, 22, 32]),
array([ 5, 6, 33]),
array([12, 13, 33]),
array([14, 15, 32]),
array([21, 15, 2]),
array([ 0, 3, 24]),
array([ 6, 1, 12]),
array([ 3, 31, 24]),
array([23, 24, 31]),
array([ 3, 4, 31]),
array([23, 31, 35]),
array([ 4, 34, 31]),
array([22, 23, 35]),
array([ 4, 5, 34]),
array([22, 35, 32]),
array([ 5, 33, 34]),
array([30, 35, 31]),
array([30, 31, 34]),
array([30, 36, 32]),
array([30, 33, 36]),
array([13, 14, 36]),
array([14, 32, 36]),
array([13, 36, 33]),
array([30, 32, 35]),
array([30, 34, 33])]
as you see there're three-node interior elements and two-node boundary elements instead of six-node interior elements and three-node boundary elements.