Source code for femagtools

# -*- coding: utf-8 -*-
"""
    femagtools
    ~~~~~~~~~~

    Python bindings for FEMAG



"""
__title__ = 'femagtools'
__version__ = '0.9.40-snapshot'
__author__ = 'Ronald Tanner'
__license__ = 'BSD'
__copyright__ = 'Copyright 2016-2018 SEMAFOR Informatik & Energie AG'

from .bch import Reader
from .model import MachineModel
from .fsl import Builder
from .magnet import Magnet
from .femag import Femag, ZmqFemag


[docs]def read_bchfile(filename): """Read BCH/BATCH results from file *filename*.""" import io bchresults = Reader() with io.open(filename, encoding='latin1', errors='ignore') as f: bchresults.read(f.readlines()) return bchresults
[docs]def create_fsl(machine, operatingconditions={}, magnetmat=[]): """create FSL command list from model parameters Args: machine: dict with parameters operatuingConditions: dict with parameters magnetmat: list fo dict with parameters """ model = MachineModel(machine) builder = Builder() magnets = [] if magnetmat: magnets = Magnet(magnetmat) if operatingconditions: return builder.create(model, operatingconditions, magnets) return builder.create_model(model) + ['save_model("cont")']