<?xml version="1.0" encoding="UTF-8"?>
<refentry version="5.0-subset Scilab" xml:id="gf_mesh_fem" xml:lang="en"
          xmlns="http://docbook.org/ns/docbook"
          xmlns:xlink="http://www.w3.org/1999/xlink"
          xmlns:xi="http://www.w3.org/2001/XInclude"
          xmlns:svg="http://www.w3.org/2000/svg"
          xmlns:mml="http://www.w3.org/1998/Math/MathML"
          xmlns:html="http://www.w3.org/1999/xhtml"
          xmlns:db="http://docbook.org/ns/docbook">
  <refnamediv>
    <refname>gf_mesh_fem</refname>
    <refpurpose>  This object represents a finite element method defined on a whole mesh.
</refpurpose>
  </refnamediv>

  <refsynopsisdiv>
    <title>Calling Sequence</title>

    <synopsis>MF = gf_mesh_fem('load', string fname[, mesh m])</synopsis>
    <synopsis>MF = gf_mesh_fem('from string', string s[, mesh m])</synopsis>
    <synopsis>MF = gf_mesh_fem('clone', mesh_fem mf)</synopsis>
    <synopsis>MF = gf_mesh_fem('sum', mesh_fem mf1, mesh_fem mf2[, mesh_fem mf3[, ...]])</synopsis>
    <synopsis>MF = gf_mesh_fem('levelset', mesh_levelset mls, mesh_fem mf)</synopsis>
    <synopsis>MF = gf_mesh_fem('global function', mesh m, levelset ls, {global_function GF1,...}[, int Qdim_m])</synopsis>
    <synopsis>MF = gf_mesh_fem('partial', mesh_fem mf, ivec DOFs[, ivec RCVs])</synopsis>
    <synopsis>MF = gf_mesh_fem(mesh m[, int Qdim_m=1[, int Qdim_n=1]])</synopsis>
  </refsynopsisdiv>

  <refsection>
    <title>Description</title>
    <para>General constructor for mesh_fem objects.</para>

    <para>  This object represents a finite element method defined on a whole mesh.
</para>
  </refsection>

  <refsection>
    <title>Command list</title>

    <itemizedlist>
    <listitem>
    <para><literal>MF = gf_mesh_fem('load', string fname[, mesh m])</literal></para>

    <para>         Load a mesh_fem from a file.

      If the mesh <literal>m</literal> is not supplied (this kind of file does not store the
      mesh), then it is read from the file <literal>fname</literal> and its descriptor is
      returned as the second output argument.
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('from string', string s[, mesh m])</literal></para>

    <para>         Create a mesh_fem object from its string description.

      See also <literal></literal>gf_mesh_fem_get(mesh_fem MF, 'char')<literal></literal>
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('clone', mesh_fem mf)</literal></para>

    <para>         Create a copy of a mesh_fem.
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('sum', mesh_fem mf1, mesh_fem mf2[, mesh_fem mf3[, ...]])</literal></para>

    <para>         Create a mesh_fem that combines two (or more) mesh_fem's.

      All mesh_fem must share the same mesh (see
      <literal></literal>gf_fem('interpolated_fem')<literal></literal> to map a mesh_fem onto another).

      After that, you should not modify the FEM of <literal>mf1</literal>, <literal>mf2</literal> etc.
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('levelset', mesh_levelset mls, mesh_fem mf)</literal></para>

    <para>         Create a mesh_fem that is conformal to implicit surfaces defined in
      mesh_levelset.
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('global function', mesh m, levelset ls, {global_function GF1,...}[, int Qdim_m])</literal></para>

    <para>         Create a mesh_fem whose base functions are global function given by the
      user in the system of coordinate defined by the iso-values of the two
      level-set function of <literal>ls</literal>. 
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem('partial', mesh_fem mf, ivec DOFs[, ivec RCVs])</literal></para>

    <para>           Build a restricted mesh_fem by keeping only a subset of the degrees of
        freedom of <literal>mf</literal>.

        If <literal>RCVs</literal> is given, no FEM will be put on the convexes listed in
        <literal>RCVs</literal>.
    </para>
    </listitem>

    <listitem>
    <para><literal>MF = gf_mesh_fem(mesh m[, int Qdim_m=1[, int Qdim_n=1]])</literal></para>

    <para>         Build a new mesh_fem object.

      <literal>Qdim_m</literal> and <literal>Qdim_n</literal> parameters are optionals. Returns the handle of
      the created object. 
    </para>
    </listitem>

    </itemizedlist>
  </refsection>

  <refsection>
    <title>See Also</title>
    <simplelist type="inline">
      <member><link linkend="getfem_types">getfem types</link></member>
    </simplelist>
  </refsection>

  <refsection>
    <title>Authors</title>
    <para>Y. Collette</para>
  </refsection>

</refentry>
