<?xml version='1.0' encoding='UTF-8' standalone='no'?>
<section xmlns="http://docbook.org/ns/docbook" version="5.0" xmlns:xlink="http://www.w3.org/1999/xlink" xml:id="_model__select_8h">
<title>/Users/bernard/b20/bsoft/include/model_select.h File Reference</title>
<indexterm><primary>/Users/bernard/b20/bsoft/include/model_select.h</primary></indexterm>
<para>

<para>Header file for reading and writing atomic model files. </para>
 
</para>
<programlisting>#include &quot;rwmodel.h&quot;
#include &quot;Bimage.h&quot;
#include &quot;Bstring.h&quot;
</programlisting><simplesect>
    <title>Functions    </title>
        <itemizedlist>
            <listitem><para>long <link linkend="_model__select_8h_1abaea2279a082540bbd621520ab18e365">model_select</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, <link linkend="_class_bstring">Bstring</link> &amp;comptype)</para>

<para>Selects models, components and component types. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1abba8e8231e249fbd760f1ec9535e8094">model_select</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, long number)</para>

<para>Resets the selection to all models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1afb18264c49ca758f6c32c3b48a3fde77">model_select_all</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Resets the selection to all models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a3be9cf5d44f487f80eba65096b94b123">model_select_unknowns</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Resets the selection to all unknown models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1acb883959b232b18224f6f3e744fd9d59">model_reset_selection</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Resets the selection to all components. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1ac8ccc239deb63ae88486014447272295">model_unset_selection</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Unsets the selection to all components but not models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a34a5e4088c3cfec2b1ded2d39e7c86df">model_invert_selection</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Inverts the selection of all components. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a3911df5e73a2f2f78b9260a94b4a377c">model_select_sets</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int size, int flag)</para>

<para>Selects sets of components, each set with the same size. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a99d8915c9375b00efc72276b032950d8">model_select_number_of_components</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int ncomp_min, int ncomp_max)</para>

<para>Selects models within a range of the number of components. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a981c07d34e09a0c24c1fed910a991e01">model_select_closed</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int closure_rule, int val_order)</para>

<para>Determines if a polyhedron is closed given a rule. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a8a7fbb77d8ed809676e8d39adf287df0">model_select_fullerene</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Selects fullerene type models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a2104021dfc9876054a884890d459e4c4">model_select_non_fullerene</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Selects non-fullerene type models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a2219d85b95dfff7186ff9f0969945593">model_select_valence</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int valence)</para>

<para>Selects fullerene type models. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a7bb200bd8221b5736902a1a02f882680">model_select_polygons</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int order)</para>

<para>Selects model polygons with a given order. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a48510909003613b6118059facc678ca0">model_select_first</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int first)</para>

<para>Selects the first number of components. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1af815f7ec9c6e9bc5e619dbd519fe076c">model_select_in_mask</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, <link linkend="_class_bimage">Bimage</link> *pmask)</para>

<para>Selects components within a mask. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1ac6f131fd1142fee2a42e601769b40de2">model_delete</link> (<link linkend="_struct_bmodel">Bmodel</link> **<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Deletes tagged models, components and links. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a89d18f4ef73094b3e95fa35e873946e9">model_delete_comp_type</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, <link linkend="_class_bstring">Bstring</link> &amp;comptype)</para>

<para>Deletes components based on their types. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a64775595756780a08b518943e83c1f5d">model_delete_non_selected</link> (<link linkend="_struct_bmodel">Bmodel</link> **<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Deletes selected components and associated links from the model. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1add2c9145c23ebf30a34098ddab54f450">model_selection_stats</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Calculates selection statistics. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1adc2044a6e916f7599cac0aa6a94af227">model_type_from_selection</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, <link linkend="_class_bstring">Bstring</link> *comp_type, <link linkend="_class_bstring">Bstring</link> &amp;filename)</para>

<para>Converts selection numbers to different types. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a9f1401cd83f1b45c5e8c87f5e03f415e">model_fom_deselect</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double fom_cutoff)</para>

<para>Deselects components based on the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a13414e4eed31428265c6db517fb092e8">model_fom_max_fraction_deselect</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double fom_fraction)</para>

<para>Deselects components based on the FOM relative to the maximum FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1af73c878b06ac24962f5ba5c438054795">models_radius_deselect</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double minrad, double maxrad)</para>

<para>Deselects components based on the distance from the origin. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a7d6f9861d2dad75886aa286acef6c853">model_fom_histogram</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double fom_step)</para>

<para>Selects components based on the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a8741de49fc344788aa895b3f43d0e24e">model_fom_ranking</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, int nrank)</para>

<para>Ranks components based on the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1ab1be5b90ca6ef25f3384f2d72e5ce0fd">model_delete_overlapped_components</link> (<link linkend="_struct_bmodel">Bmodel</link> **<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double <link linkend="__vector3_8h_1aa60745aa4e45acde64f733424e37dbb9">distance</link>)</para>

<para>Deletes components that are too close to others. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a3c462d3a2480fa1a99d61746602a1328">model_average_overlapped_components</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double <link linkend="__vector3_8h_1aa60745aa4e45acde64f733424e37dbb9">distance</link>)</para>

<para>Averages components within a distance. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a1067c84127161d2d472db3a624b92fa8">model_prune_simple</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double mindist)</para>

<para>Prunes overlapping components based on a distance criterion. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1ace8559f3c6acfadde8e9c7d7a6025be8">model_prune_fom</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double <link linkend="__vector3_8h_1aa60745aa4e45acde64f733424e37dbb9">distance</link>)</para>

<para>Deselects components based on overlap distance and the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a090e8e485b5a3a19cdccd47fa0e00e1b">model_prune_similar</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>)</para>

<para>Averages similar components and reduces redundancy. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1ad16521c232c8c558ca1129bdc3b10c24">model_prune_fit</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double <link linkend="__vector3_8h_1aa60745aa4e45acde64f733424e37dbb9">distance</link>)</para>

<para>Deselects components based on overlap distance and the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a8f5c05c0d65f204f54c816dc226fb529">model_prune_large</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, double sampling)</para>

<para>Deselects components based on overlap distance and the FOM. </para>
</listitem>
            <listitem><para>long <link linkend="_model__select_8h_1a36552465a6d3eeba379e94c2ffdede65">model_find_overlap</link> (<link linkend="_struct_bmodel">Bmodel</link> *<link linkend="_tcltk__bmodel_8cpp_1a828359eaa8de833b547ac96934f43841">model</link>, <link linkend="_class_bstring">Bstring</link> &amp;reffile, double <link linkend="__vector3_8h_1aa60745aa4e45acde64f733424e37dbb9">distance</link>)</para>

<para>Finds the components that overlap with the reference. </para>
</listitem>
        </itemizedlist>
</simplesect>
<section>
<title>Detailed Description</title>

<para>Header file for reading and writing atomic model files. </para>

<para><formalpara><title>Author: </title>

<para>Bernard Heymann </para>
</formalpara>
<formalpara><title>Date: </title>

<para>Created: 20060908 </para>

<para>Modified: 20191011 </para>
</formalpara>
</para>
</section>
<section>
<title>Function Documentation</title>
<anchor xml:id="_model__select_8h_1a3c462d3a2480fa1a99d61746602a1328"/>    <section>
    <title>model_average_overlapped_components()</title>
<indexterm><primary>model_average_overlapped_components</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_average_overlapped_components</secondary></indexterm>
<para><computeroutput>long model_average_overlapped_components (<link linkend="_struct_bmodel">Bmodel</link> * model, double distance)</computeroutput></para><para>

<para>Averages components within a distance. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model. </para>
</entry>
                            </row>
                            <row>
                                <entry>distance</entry>
                                <entry>
<para>overlap distance. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long 0. <literallayout><computeroutput>Components within the given distance are averaged and the first
instance is retained while the others are deleted.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1425 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1ac6f131fd1142fee2a42e601769b40de2"/>    <section>
    <title>model_delete()</title>
<indexterm><primary>model_delete</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_delete</secondary></indexterm>
<para><computeroutput>long model_delete (<link linkend="_struct_bmodel">Bmodel</link> ** model)</computeroutput></para><para>

<para>Deletes tagged models, components and links. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>**model</entry>
                                <entry>
<para>pointer to model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long remaining number of components. <literallayout><computeroutput>A model, component or link is tagged for deletion by a negative selection flag.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 623 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a89d18f4ef73094b3e95fa35e873946e9"/>    <section>
    <title>model_delete_comp_type()</title>
<indexterm><primary>model_delete_comp_type</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_delete_comp_type</secondary></indexterm>
<para><computeroutput>long model_delete_comp_type (<link linkend="_struct_bmodel">Bmodel</link> * model, <link linkend="_class_bstring">Bstring</link> &amp; comptype)</computeroutput></para><para>

<para>Deletes components based on their types. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>&amp;comptype</entry>
                                <entry>
<para>component type. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components remaining. </para>
</formalpara>
</para>
<para>
Definition at line 720 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a64775595756780a08b518943e83c1f5d"/>    <section>
    <title>model_delete_non_selected()</title>
<indexterm><primary>model_delete_non_selected</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_delete_non_selected</secondary></indexterm>
<para><computeroutput>long model_delete_non_selected (<link linkend="_struct_bmodel">Bmodel</link> ** model)</computeroutput></para><para>

<para>Deletes selected components and associated links from the model. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>**model</entry>
                                <entry>
<para>pointer to model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long remaining number of components. </para>
</formalpara>
</para>
<para>
Definition at line 781 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1ab1be5b90ca6ef25f3384f2d72e5ce0fd"/>    <section>
    <title>model_delete_overlapped_components()</title>
<indexterm><primary>model_delete_overlapped_components</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_delete_overlapped_components</secondary></indexterm>
<para><computeroutput>long model_delete_overlapped_components (<link linkend="_struct_bmodel">Bmodel</link> ** model, double distance)</computeroutput></para><para>

<para>Deletes components that are too close to others. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>**model</entry>
                                <entry>
<para>model handle. </para>
</entry>
                            </row>
                            <row>
                                <entry>distance</entry>
                                <entry>
<para>distance to test for. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long 0. <literallayout><computeroutput>If a component is too close to another, the component further down
in the list is deleted.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1396 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a36552465a6d3eeba379e94c2ffdede65"/>    <section>
    <title>model_find_overlap()</title>
<indexterm><primary>model_find_overlap</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_find_overlap</secondary></indexterm>
<para><computeroutput>long model_find_overlap (<link linkend="_struct_bmodel">Bmodel</link> * model, <link linkend="_class_bstring">Bstring</link> &amp; reffile, double distance)</computeroutput></para><para>

<para>Finds the components that overlap with the reference. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>&amp;reffile</entry>
                                <entry>
<para>reference molecule file name. </para>
</entry>
                            </row>
                            <row>
                                <entry>distance</entry>
                                <entry>
<para>distance for overlap. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>All components that are within the distance criterion of the components
in the reference model are deselected.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 2056 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a9f1401cd83f1b45c5e8c87f5e03f415e"/>    <section>
    <title>model_fom_deselect()</title>
<indexterm><primary>model_fom_deselect</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_fom_deselect</secondary></indexterm>
<para><computeroutput>long model_fom_deselect (<link linkend="_struct_bmodel">Bmodel</link> * model, double fom_cutoff)</computeroutput></para><para>

<para>Deselects components based on the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>fom_cutoff</entry>
                                <entry>
<para>FOM threshold. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>The FOM is assumed to be a value from 0 to 1 and components with
FOM&apos;s below the given cutoff are deselected.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1154 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a7d6f9861d2dad75886aa286acef6c853"/>    <section>
    <title>model_fom_histogram()</title>
<indexterm><primary>model_fom_histogram</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_fom_histogram</secondary></indexterm>
<para><computeroutput>long model_fom_histogram (<link linkend="_struct_bmodel">Bmodel</link> * model, double fom_step)</computeroutput></para><para>

<para>Selects components based on the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>fom_step</entry>
                                <entry>
<para>FOM step size. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components. <literallayout><computeroutput>The FOM is assumed to represent energy and therefore values below
the given cutoff are selected.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1254 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a13414e4eed31428265c6db517fb092e8"/>    <section>
    <title>model_fom_max_fraction_deselect()</title>
<indexterm><primary>model_fom_max_fraction_deselect</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_fom_max_fraction_deselect</secondary></indexterm>
<para><computeroutput>long model_fom_max_fraction_deselect (<link linkend="_struct_bmodel">Bmodel</link> * model, double fom_fraction)</computeroutput></para><para>

<para>Deselects components based on the FOM relative to the maximum FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>fom_fraction</entry>
                                <entry>
<para>FOM threshold. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>The FOM/FOMmax ratio is calculated and components with ratios below
the given fraction are deselected.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1180 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a8741de49fc344788aa895b3f43d0e24e"/>    <section>
    <title>model_fom_ranking()</title>
<indexterm><primary>model_fom_ranking</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_fom_ranking</secondary></indexterm>
<para><computeroutput>long model_fom_ranking (<link linkend="_struct_bmodel">Bmodel</link> * model, int nrank)</computeroutput></para><para>

<para>Ranks components based on the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>nrank</entry>
                                <entry>
<para>number of levels. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of selected components. <literallayout><computeroutput>Each selected component is ranked into one of a number of levels.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1307 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a34a5e4088c3cfec2b1ded2d39e7c86df"/>    <section>
    <title>model_invert_selection()</title>
<indexterm><primary>model_invert_selection</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_invert_selection</secondary></indexterm>
<para><computeroutput>long model_invert_selection (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Inverts the selection of all components. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. </para>
</formalpara>
</para>
<para>
Definition at line 286 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1ad16521c232c8c558ca1129bdc3b10c24"/>    <section>
    <title>model_prune_fit()</title>
<indexterm><primary>model_prune_fit</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_prune_fit</secondary></indexterm>
<para><computeroutput>long model_prune_fit (<link linkend="_struct_bmodel">Bmodel</link> * model, double distance)</computeroutput></para><para>

<para>Deselects components based on overlap distance and the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>distance</entry>
                                <entry>
<para>overlap distance. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>The selected component with the highest FOM is chosen as the first 
component in the solution set and all components within the distance 
criterion from it are deselected. The selected component with the next 
highest FOM is then chosen and again, all components within the distance 
criterion from it are deselected.
This is repeated until there are no more selected components to choose.
Only the first model is processed.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1805 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1ace8559f3c6acfadde8e9c7d7a6025be8"/>    <section>
    <title>model_prune_fom()</title>
<indexterm><primary>model_prune_fom</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_prune_fom</secondary></indexterm>
<para><computeroutput>long model_prune_fom (<link linkend="_struct_bmodel">Bmodel</link> * model, double distance)</computeroutput></para><para>

<para>Deselects components based on overlap distance and the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>distance</entry>
                                <entry>
<para>overlap distance. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>The selected component with the highest FOM is chosen as the first 
component in the solution set and all components within the distance 
criterion from it are deselected. The selected component with the next 
highest FOM is then chosen and again, all components within the distance 
criterion from it are deselected.
This is repeated until there are no more selected components to choose.
Only the first model is processed.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1518 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a8f5c05c0d65f204f54c816dc226fb529"/>    <section>
    <title>model_prune_large()</title>
<indexterm><primary>model_prune_large</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_prune_large</secondary></indexterm>
<para><computeroutput>long model_prune_large (<link linkend="_struct_bmodel">Bmodel</link> * model, double sampling)</computeroutput></para><para>

<para>Deselects components based on overlap distance and the FOM. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>sampling</entry>
                                <entry>
<para>grid sampling. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>Each component location is mapped to a grid point and the component FOM
is assigned to the grid point if it is larger.
Peaks are determined within each 3x3x3 kernel: a peak is defined as
having a higher value than any of its 26 neigbors.
The component associated with the value at a peak is selected.
Only the first model is processed.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1936 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a090e8e485b5a3a19cdccd47fa0e00e1b"/>    <section>
    <title>model_prune_similar()</title>
<indexterm><primary>model_prune_similar</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_prune_similar</secondary></indexterm>
<para><computeroutput>long model_prune_similar (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Averages similar components and reduces redundancy. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>lon number of clusters. <literallayout><computeroutput>A view distance matrix is calculated for all the components.
All components within a small distance (~10% of model radius) are averaged
into the first component and the rest are deselected.
Only the first model is processed.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1610 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a1067c84127161d2d472db3a624b92fa8"/>    <section>
    <title>model_prune_simple()</title>
<indexterm><primary>model_prune_simple</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_prune_simple</secondary></indexterm>
<para><computeroutput>long model_prune_simple (<link linkend="_struct_bmodel">Bmodel</link> * model, double mindist)</computeroutput></para><para>

<para>Prunes overlapping components based on a distance criterion. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model structure to be modified. </para>
</entry>
                            </row>
                            <row>
                                <entry>mindist</entry>
                                <entry>
<para>distance criterion. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of remaining components. <literallayout><computeroutput>The first component in any pair of overlapping components is kept.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1468 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1acb883959b232b18224f6f3e744fd9d59"/>    <section>
    <title>model_reset_selection()</title>
<indexterm><primary>model_reset_selection</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_reset_selection</secondary></indexterm>
<para><computeroutput>long model_reset_selection (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Resets the selection to all components. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>Only one model is modified.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 232 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1abaea2279a082540bbd621520ab18e365"/>    <section>
    <title>model_select()<computeroutput>[1/2]</computeroutput></title>
<indexterm><primary>model_select</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select</secondary></indexterm>
<para><computeroutput>long model_select (<link linkend="_struct_bmodel">Bmodel</link> * model, <link linkend="_class_bstring">Bstring</link> &amp; selstr)</computeroutput></para><para>

<para>Selects models, components and component types. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>&amp;selstr</entry>
                                <entry>
<para>selection string. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of selections made. <literallayout><computeroutput>The selection string can have one of the following formats:
    #model@component
    #model%comp_type
    ^model_type@component
    ^model_type%comp_type
Only elements originally selected is considered, except where the &quot;.&quot; is used.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 36 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1abba8e8231e249fbd760f1ec9535e8094"/>    <section>
    <title>model_select()<computeroutput>[2/2]</computeroutput></title>
<indexterm><primary>model_select</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select</secondary></indexterm>
<para><computeroutput>long model_select (<link linkend="_struct_bmodel">Bmodel</link> * model, long number)</computeroutput></para><para>

<para>Resets the selection to all models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>number</entry>
                                <entry>
<para>selection number to select. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. </para>
</formalpara>
</para>
<para>
Definition at line 163 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1afb18264c49ca758f6c32c3b48a3fde77"/>    <section>
    <title>model_select_all()</title>
<indexterm><primary>model_select_all</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_all</secondary></indexterm>
<para><computeroutput>long model_select_all (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Resets the selection to all models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. </para>
</formalpara>
</para>
<para>
Definition at line 193 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a981c07d34e09a0c24c1fed910a991e01"/>    <section>
    <title>model_select_closed()</title>
<indexterm><primary>model_select_closed</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_closed</secondary></indexterm>
<para><computeroutput>long model_select_closed (<link linkend="_struct_bmodel">Bmodel</link> * model, int closure_rule, int val_order)</computeroutput></para><para>

<para>Determines if a polyhedron is closed given a rule. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>closure_rule</entry>
                                <entry>
<para>1=valency, 2=order. </para>
</entry>
                            </row>
                            <row>
                                <entry>val_order</entry>
                                <entry>
<para>magnitude of valency or order. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. <literallayout><computeroutput>Polyhedron closure is arbitrarily decided by a rule:
1.  Fixed valency.
3.  Fixed polygon order.
Models that fail the given rule are deselected.
If the given valency or order is zero, it is set to the value for
the first component or polygon.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 397 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a48510909003613b6118059facc678ca0"/>    <section>
    <title>model_select_first()</title>
<indexterm><primary>model_select_first</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_first</secondary></indexterm>
<para><computeroutput>long model_select_first (<link linkend="_struct_bmodel">Bmodel</link> * model, int first)</computeroutput></para><para>

<para>Selects the first number of components. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>first</entry>
                                <entry>
<para>first number of components to select. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. </para>
</formalpara>
</para>
<para>
Definition at line 566 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a8a7fbb77d8ed809676e8d39adf287df0"/>    <section>
    <title>model_select_fullerene()</title>
<indexterm><primary>model_select_fullerene</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_fullerene</secondary></indexterm>
<para><computeroutput>long model_select_fullerene (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Selects fullerene type models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model structure. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. <literallayout><computeroutput>Each model is tested for the presence of polygons that have orders
only of five or six.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 448 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1af815f7ec9c6e9bc5e619dbd519fe076c"/>    <section>
    <title>model_select_in_mask()</title>
<indexterm><primary>model_select_in_mask</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_in_mask</secondary></indexterm>
<para><computeroutput>long model_select_in_mask (<link linkend="_struct_bmodel">Bmodel</link> * model, <link linkend="_class_bimage">Bimage</link> * pmask)</computeroutput></para><para>

<para>Selects components within a mask. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>pmask</entry>
                                <entry>
<para>first number of components to select. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. </para>
</formalpara>
</para>
<para>
Definition at line 590 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a2104021dfc9876054a884890d459e4c4"/>    <section>
    <title>model_select_non_fullerene()</title>
<indexterm><primary>model_select_non_fullerene</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_non_fullerene</secondary></indexterm>
<para><computeroutput>long model_select_non_fullerene (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Selects non-fullerene type models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model structure. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. <literallayout><computeroutput>Each model is tested for the presence of polygons that have orders
different from five or six.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 477 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a99d8915c9375b00efc72276b032950d8"/>    <section>
    <title>model_select_number_of_components()</title>
<indexterm><primary>model_select_number_of_components</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_number_of_components</secondary></indexterm>
<para><computeroutput>long model_select_number_of_components (<link linkend="_struct_bmodel">Bmodel</link> * model, int ncomp_min, int ncomp_max)</computeroutput></para><para>

<para>Selects models within a range of the number of components. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>ncomp_min</entry>
                                <entry>
<para>minimum number of components. </para>
</entry>
                            </row>
                            <row>
                                <entry>ncomp_max</entry>
                                <entry>
<para>maximum number of components. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. </para>
</formalpara>
</para>
<para>
Definition at line 359 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a7bb200bd8221b5736902a1a02f882680"/>    <section>
    <title>model_select_polygons()</title>
<indexterm><primary>model_select_polygons</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_polygons</secondary></indexterm>
<para><computeroutput>long model_select_polygons (<link linkend="_struct_bmodel">Bmodel</link> * model, int order)</computeroutput></para><para>

<para>Selects model polygons with a given order. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model to color. </para>
</entry>
                            </row>
                            <row>
                                <entry>order</entry>
                                <entry>
<para>polygon order. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long 0. </para>
</formalpara>
</para>
<para>
Definition at line 535 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a3911df5e73a2f2f78b9260a94b4a377c"/>    <section>
    <title>model_select_sets()</title>
<indexterm><primary>model_select_sets</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_sets</secondary></indexterm>
<para><computeroutput>long model_select_sets (<link linkend="_struct_bmodel">Bmodel</link> * model, int size, int flag)</computeroutput></para><para>

<para>Selects sets of components, each set with the same size. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>parameter structure with all parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>size</entry>
                                <entry>
<para>number of components in each set. </para>
</entry>
                            </row>
                            <row>
                                <entry>flag</entry>
                                <entry>
<para>flag to not count across model boundaries. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>Sets up sets of components, each set identified as a number in the
selection array.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 312 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a3be9cf5d44f487f80eba65096b94b123"/>    <section>
    <title>model_select_unknowns()</title>
<indexterm><primary>model_select_unknowns</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_unknowns</secondary></indexterm>
<para><computeroutput>long model_select_unknowns (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Resets the selection to all unknown models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. </para>
</formalpara>
</para>
<para>
Definition at line 208 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1a2219d85b95dfff7186ff9f0969945593"/>    <section>
    <title>model_select_valence()</title>
<indexterm><primary>model_select_valence</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_select_valence</secondary></indexterm>
<para><computeroutput>long model_select_valence (<link linkend="_struct_bmodel">Bmodel</link> * model, int valence)</computeroutput></para><para>

<para>Selects fullerene type models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model structure. </para>
</entry>
                            </row>
                            <row>
                                <entry>valence</entry>
                                <entry>
<para>component valence </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of models selected. <literallayout><computeroutput>Each model is tested for the presence of polygons that have orders
only of five or six.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 508 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1add2c9145c23ebf30a34098ddab54f450"/>    <section>
    <title>model_selection_stats()</title>
<indexterm><primary>model_selection_stats</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_selection_stats</secondary></indexterm>
<para><computeroutput>long model_selection_stats (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Calculates selection statistics. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>The FOM is assumed to be a value from 0 to 1.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 870 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1adc2044a6e916f7599cac0aa6a94af227"/>    <section>
    <title>model_type_from_selection()</title>
<indexterm><primary>model_type_from_selection</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_type_from_selection</secondary></indexterm>
<para><computeroutput>long model_type_from_selection (<link linkend="_struct_bmodel">Bmodel</link> * model, <link linkend="_class_bstring">Bstring</link> * comp_type, <link linkend="_class_bstring">Bstring</link> &amp; filename)</computeroutput></para><para>

<para>Converts selection numbers to different types. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>*comp_type</entry>
                                <entry>
<para>linked list of strings. </para>
</entry>
                            </row>
                            <row>
                                <entry>&amp;filename</entry>
                                <entry>
<para>component type file name. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of component types assigned. </para>
</formalpara>
</para>
<para>
Definition at line 1063 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1ac8ccc239deb63ae88486014447272295"/>    <section>
    <title>model_unset_selection()</title>
<indexterm><primary>model_unset_selection</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>model_unset_selection</secondary></indexterm>
<para><computeroutput>long model_unset_selection (<link linkend="_struct_bmodel">Bmodel</link> * model)</computeroutput></para><para>

<para>Unsets the selection to all components but not models. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components deselected. </para>
</formalpara>
</para>
<para>
Definition at line 261 of file model_select.cpp.</para>
    </section><anchor xml:id="_model__select_8h_1af73c878b06ac24962f5ba5c438054795"/>    <section>
    <title>models_radius_deselect()</title>
<indexterm><primary>models_radius_deselect</primary><secondary>model_select.h</secondary></indexterm>
<indexterm><primary>model_select.h</primary><secondary>models_radius_deselect</secondary></indexterm>
<para><computeroutput>long models_radius_deselect (<link linkend="_struct_bmodel">Bmodel</link> * model, double minrad, double maxrad)</computeroutput></para><para>

<para>Deselects components based on the distance from the origin. </para>
</para>

<para>
                <formalpara>
                    <title>
Parameters                    </title>
                    <para>
                    <table frame="all">
                        <tgroup cols="2" align="left" colsep="1" rowsep="1">
                        <colspec colwidth="1*"/>
                        <colspec colwidth="4*"/>
                        <tbody>
                            <row>
                                <entry>*model</entry>
                                <entry>
<para>model parameters. </para>
</entry>
                            </row>
                            <row>
                                <entry>minrad</entry>
                                <entry>
<para>minimum distance from origin. </para>
</entry>
                            </row>
                            <row>
                                <entry>maxrad</entry>
                                <entry>
<para>maximum distance from the origin. </para>
</entry>
                            </row>
                        </tbody>
                        </tgroup>
                    </table>
                    </para>
                </formalpara>
                <formalpara><title>Returns: </title>

<para>long number of components selected. <literallayout><computeroutput>All components inside a minmum radius and beyond a maximum radius are deselected.
</computeroutput></literallayout> </para>
</formalpara>
</para>
<para>
Definition at line 1215 of file model_select.cpp.</para>
</section>
</section>
</section>
