1 // 2 // equivalence_set.h 3 // libmsym 4 // 5 // Created by Marcus Johansson on 08/02/15. 6 // Copyright (c) 2015 Marcus Johansson. 7 // 8 // Distributed under the MIT License ( See LICENSE file or copy at http://opensource.org/licenses/MIT ) 9 // 10 11 #ifndef __MSYM__EQUIVALENCE_SET_h 12 #define __MSYM__EQUIVALENCE_SET_h 13 14 #include <stdio.h> 15 #include "msym.h" 16 #include "point_group.h" 17 18 msym_error_t copyEquivalenceSets(int length, msym_equivalence_set_t es[length], msym_equivalence_set_t **ces); 19 msym_error_t findEquivalenceSets(int length, msym_element_t *elements[length], msym_geometry_t g, int *esl, msym_equivalence_set_t **es, msym_thresholds_t *thresholds); 20 msym_error_t findPointGroupEquivalenceSets(msym_point_group_t *pg, int length, msym_element_t *elements[length], int *esl, msym_equivalence_set_t **es, msym_thresholds_t *thresholds); 21 msym_error_t splitPointGroupEquivalenceSets(msym_point_group_t *pg, int esl, msym_equivalence_set_t es[esl], int *sesl, msym_equivalence_set_t **ses, msym_thresholds_t *thresholds); 22 msym_error_t generateEquivalenceSet(msym_point_group_t *pg, int length, msym_element_t elements[length], double cm[3], int *glength, msym_element_t **gelements, int *esl, msym_equivalence_set_t **es,msym_thresholds_t *thresholds); 23 24 #endif /* defined(__MSYM__EQUIVALENCE_SET_h) */ 25