示例#1
0
文件: main.py 项目: sel454/idaes-pse
    def build_model(self):
        super().build_model()
        if self._vdata_in is not None and self._vdata_out is not None:
            self.alamopy_results = alamopy.alamo(self._rdata_in, self._rdata_out, xval=self._vdata_in,
                                                 zval=self._vdata_out, **self.config)
        else:
            self.alamopy_results = alamopy.alamo(self._rdata_in, self._rdata_out, **self.config)

        self._res = self.alamopy_results
        self._model = self.alamopy_results['model']

        self.handle_results(self._res)
        self.pkl_info['Run settings'] = self.config.value()
        self.pkl_info['Results'] = self._results
        self.pkl_info['Expression'] = self._model
示例#2
0
def test_basic():

    if has_alamo_flag:
        ndata = 10
        x = np.random.uniform([-2, -1], [2, 1], (ndata, 2))
        z = [0] * ndata
        # specify simulator as examples.sixcamel
        sim = examples.sixcamel
        for i in range(ndata):
            z[i] = sim(x[i][0], x[i][1])

        # Use alamopy's python function wrapper to avoid using ALAMO's I/O format
        almsim = wrapwriter(sim)
        # Call alamo through the alamopy wrapper
        res = alamo(x,
                    z,
                    almname='cam6',
                    monomialpower=(1, 2, 3, 4, 5, 6),
                    multi2power=(1, 2),
                    simulator=almsim,
                    expandoutput=True,
                    maxiter=20)  #,cvfun=True)
        #conf_inv = almconfidence(res)

        #print('Model: {}'.format(res['model']))
        #print('Confidence Intervals : {}'.format(conf_inv['conf_inv']))
        almplot(res, show=False)
示例#3
0
def DV():
    """
    ALAMO regression of saturated vapor density
    """
    global DVfun
    DataImport.DV(molecule)
    Values = DataImport.DVValues

    xval, zval = [], []
    for x in Values:
        manVal = DataManipulation.DV(x)
        xval.append(manVal[0])
        zval.append(manVal[1])

    res = alamopy.alamo(
        xval,
        zval,
        zlabels=["%sDV" % molecule],
        almname="%sDV" % molecule,
        monomialpower=(1, 2, 3, 4, 5, 6),
        savetrace=True,
    )
    # print(res['model'], res['ssr'], res['R2'])

    if res is None:
        raise Exception("Model does not exist for Saturated Vapor Density")

    DVfun = importlib.import_module("%sDV" % molecule, "f")
示例#4
0
def DL():
    "ALAMO regression of Saturated Liquid Density"
    global DLfun
    DataImport.DL(molecule)
    Values = DataImport.DLValues

    xval, zval = [], []
    for x in Values:
        manVal = DataManipulation.DL(x)
        xval.append(manVal[0])
        zval.append(manVal[1])

    res = alamopy.alamo(
        xval,
        zval,
        zlabels=["%sDL" % molecule],
        almname="%sDL" % molecule,
        monomialpower=(-1, 1, 2, 3),
        expfcns=1,
        savetrace=True,
        savescratch=True,
    )

    if res is None:
        raise Exception("Model does not exist for Saturated Liquid Density")

    DLfun = importlib.import_module("%sDL" % molecule, "f")
示例#5
0
def PV():
    "ALAMO regression of vapor pressure"
    global PVfun
    DataImport.PV(molecule)
    Values = DataImport.Values

    xval, zval = [], []
    for x in Values:
        manVal = DataManipulation.PV(x)
        xval.append([manVal[0], manVal[1]])
        zval.append(manVal[2])

    res = alamopy.alamo(
        xval,
        zval,
        zlabels=["%sPV" % molecule],
        almname="%sPV" % molecule,
        monomialpower=(1, 2, 3, 4, 5, 6),
    )
    # print(res['model'], res['ssr'], res['R2'])

    if res is None:
        raise Exception("Model does not exist for Vapor Pressure")

    PVfun = importlib.import_module("%sPV" % molecule, "f")