Commit b90f6c5c authored by Michael Turner's avatar Michael Turner

daves suggestions

parent 69aa5877
......@@ -71,20 +71,20 @@ We also need to define the physical volumes, which can be done in a similar
fashion. For this example, there is only one volume having ID 1. Adding these
groups to the end of the \texttt{.geo} file is very straightforward:
\begin{lstlisting}[style=XmlStyle]
\begin{lstlisting}[style=XmlStyle]
Physical Volume(0) = {1};
Physical Surface(1)= {7,8,28,29};
Physical Surface(2) = {16};
Physical Surface(3) = {24};
\end{lstlisting}
Either choose the option \inlsh{File->Save Mesh} or, assuming this is saved in
a file named \inlsh{test.geo}, run the command
a file named \inlsh{test.geo}, run the command
\begin{lstlisting}[style=BashInputStyle]
gmsh -3 test.geo
\end{lstlisting}
which will produce the resulting MSH file \inlsh{test.msh}. One can generate a
high-order mesh by specifying the order on the command line, for example
\begin{lstlisting}[style=BashInputStyle]
\begin{lstlisting}[style=BashInputStyle]
gmsh -3 -order 6 test.geo
\end{lstlisting}
will generate a sixth-order mesh. Note that you will need to use a current
......@@ -98,7 +98,7 @@ instructions, run the command
MeshConvert test.msh test.xml
\end{lstlisting}
%
to generate the XML file.
to generate the XML file.
%
\begin{notebox}
This file contains only the geometry definition (and a default
......@@ -177,7 +177,7 @@ arguments, or not.
To list all available modules use the \inltt{-l} command line argument:
%
\begin{lstlisting}[style=BashInputStyle]
Available classes:
Available classes:
Input: dat:
Reads Tecplot polyhedron ascii format converted from Star CCM (.dat).
...
......@@ -190,7 +190,7 @@ line argument:
Options for module detect:
vol: Tag identifying surface to process.
\end{lstlisting}
%
%
\begin{notebox}
Module names change when you use the \inltt{-p} option. Input modules should
be preceded by \inltt{in:}, processing modules by \inltt{proc:} and output
......@@ -292,7 +292,7 @@ use the \inltt{extract} boolean parameter:
MeshConvert -m jac:extract Mesh.xml MeshWithNegativeElements.xml
\end{lstlisting}
To turn off curvature associated with negative jacobians one can try to use the \inltt{removecurveifsingular} boolean parameter:
To turn off curvature associated with negative jacobians one can try to use the \inltt{removecurveifsingular} boolean parameter:
\begin{lstlisting}[style=BashInputStyle]
MeshConvert -m jac:removecurveifsingular Mesh.xml output.xml
\end{lstlisting}
......@@ -339,7 +339,7 @@ If you have a high-resolution mesh of the surfaces 11 and 12 in \inltt{ply}
format it can be used to improve the normal definition of the spherigons. Run:
\begin{lstlisting}[style=BashInputStyle]
MeshConvert -m spherigon:surf=11,12:usenormalfile=Surf_11-12_Mesh.ply \
MeshWithStraighEdges.xml MeshWithSpherigons.xml
MeshWithStraighEdges.xml MeshWithSpherigons.xml
\end{lstlisting}
This can be useful, for example, when meshing the Leading edge of an
......@@ -496,6 +496,20 @@ To extract a surface use the command:
where the integers are surface IDs to be extracted.
\subsection{Linearisation}
The ability to remove all the high-order information in a mesh can be useful
at times.
To do this in MeshConvert use the command:
\begin{lstlisting}[style=BashInputStyle]
MeshConvert -m linear high-order-mesh.xml linear-mesh.xml
\end{lstlisting}
The output will contain only the linear mesh information, all curved information
is removed.
\subsection{Boundary identification}
Some mesh formats lack the ability to identify boundaries of the domain they
......@@ -526,7 +540,7 @@ may issue the command
module in combination with the splitting module described earlier.
\end{notebox}
%%% Local Variables:
%%% Local Variables:
%%% mode: latex
%%% TeX-master: "../user-guide"
%%% End:
%%% End:
......@@ -71,14 +71,18 @@ void ProcessLinear::Process()
(*eit)->m_edgeNodes.clear();
}
if(m_mesh->m_expDim == 3)
FaceSet::iterator fit;
for(fit = m_mesh->m_faceSet.begin(); fit != m_mesh->m_faceSet.end(); fit++)
{
FaceSet::iterator fit;
for(fit = m_mesh->m_faceSet.begin(); fit != m_mesh->m_faceSet.end(); fit++)
{
(*fit)->m_faceNodes.clear();
}
(*fit)->m_faceNodes.clear();
}
for(int i = 0; i < m_mesh->m_element[m_mesh->m_expDim].size(); i++)
{
vector<NodeSharedPtr> empty;
m_mesh->m_element[m_mesh->m_expDim][i]->SetVolumeNodes(empty);
}
}
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment