This module will output the eDNA tags which are used inside each
        calculation.

        If flat=True, data will be written flat, like:
            ADE1CA01, ADE1PI01, ADE1PI02

        If flat=False, data will be written in the non-flat way, like:
            ADE1CA01, ADE1PI01
            ADE1CA01, ADE1PI02

        :param file_name: the output filename to write the relationships,
                          which should include the '.csv' extension
        :param flat: True or False

def write_relationships(self, file_name, flat=True):
        """
        This module will output the eDNA tags which are used inside each
        calculation.

        If flat=True, data will be written flat, like:
            ADE1CA01, ADE1PI01, ADE1PI02

        If flat=False, data will be written in the non-flat way, like:
            ADE1CA01, ADE1PI01
            ADE1CA01, ADE1PI02

        :param file_name: the output filename to write the relationships,
                          which should include the '.csv' extension
        :param flat: True or False
        """
        with open(file_name, 'w') as writer:
            if flat:
                self._write_relationships_flat(writer)
            else:
                self._write_relationships_non_flat(writer)