Exemplo n.º 1
0
 def compare_concentrations(self):
     '''
     method for concentration comparsion
     check what list and method has to be used
     '''
     if self.radio_compare_all.isChecked():
         self.__compare_selected_conc()
     elif self.radio_compare_selected.isChecked():
         self.__compare_selected_conc(self.displayed_mesh_list.keys())
     elif self.radio_compare_surface.isChecked():
         if not self.surface_elements:
             fname = self.work_dir + 'SEPAR' + 'master' + SEPAR + FNAME_SURF
             self.surface_elements = surface.read_result(fname)
         self.__compare_selected_conc(self.surface_elements)
Exemplo n.º 2
0
    def _read_surface_elements(self):
        '''
        imports surface elements to mesh list
        need surface_result file to work
        '''

        if not self.surface_elements:
            fname = self.work_dir + SEPAR + 'master' + SEPAR + FNAME_SURF
            self.surface_elements = surface.read_result(fname)

        vals = {}
        for elid in self.surface_elements:
            elid = int(elid)
            if self.msh.elements.has_key(elid):
                vals[elid] = self.msh.elements[elid]

        return vals
Exemplo n.º 3
0
    def _load_surface(self, file_name=None):
        '''
        load surface elems using surface module
        first try to open prepared file, in case of file create a new one using surface module
        '''
        wdir = {'basic': self.work_dir, 'compare': self.master_work_dir}

        fname_bcd = wdir[self.problem_type] + SEPAR + self.file_dict['Boundary']
        self.bcd_file = fname_bcd

        if file_name is None:
            fname = self.master_work_dir + FNAME_SURF

        self.messenger('Loading Surface elements')
        if path.isfile(fname):
            self.surface_elements = surface.read_result(fname)
        else:
            fname_msh = wdir[self.problem_type] + SEPAR + self.file_dict['Mesh']
            self.surface_elements = surface.read(fname_bcd, fname_msh)
            surface.write(fname, self.surface_elements)

        self.messenger('Surface elements successfully loaded', 8000)