Esempio n. 1
0
        with open(
                RES_ROOT_DIR +
                f"{self.prefix}_dt_{self.time_step}_alpha_{self.alpha}_order_{self.order}_Bo_{self.bo}_DaI_{self.da}.csv",
                "w") as f:
            for z, u in enumerate(lastrun[::-1]):
                f.write(f"{z*self.length_interval}, {u}" + "\n")
            f.flush()

    def get_savefile_path(self):
        return RES_ROOT_DIR + f"{self.prefix}_dt_{self.time_step}_alpha_{self.alpha}_order_{self.order}_Bo_{self.bo}_DaI_{self.da}.csv"


if __name__ == '__main__':
    from expdata import Result
    from displayer import Displayer
    sec = Solver(order=2,
                 dt=1e-2,
                 dz=1e-1,
                 alpha=1,
                 da=0.05,
                 bo=10,
                 totalTime=40,
                 note="testnorm")
    sec.solve()
    result = Result(sec.get_savefile_path())
    # result2 = Result(RES_ROOT_DIR + "dt_0.0001_alpha_1_order_1_Bo_100_DaI_0.1.csv")
    show = Displayer(0, 30, 0, 1)
    show.plotmany([result])
    show.save("testnorm.png")
    show.show()
Esempio n. 2
0
        tao, psi = np.loadtxt(name, delimiter=",", usecols=(0, 1), unpack=True)
        return tao, psi

    def getLabel(self):
        return f"Bo: {self.bo}"

    def __str__(self) -> str:
        return f"alpha_{self.alpha}_order_{self.order}_Bo_{self.bo}_DaI_{self.da}"

    def getTruePsi(self):
        if int(self.order) == 1:
            return 1 / np.exp(float(self.da) * self.tao)
        elif int(self.order) == 2:
            return 1 / (1 + float(self.da) * self.tao)
        else:
            raise NotImplementedError


if __name__ == '__main__':
    resname = [
        "dt_0.0001_alpha_1_order_1_Bo_50_DaI_0.1",
        "dt_0.0001_alpha_1_order_1_Bo_100_DaI_0.1",
        "dt_0.0001_alpha_1_order_1_Bo_500_DaI_0.1",
        "dt_0.0001_alpha_1_order_1_Bo_1000_DaI_0.1"
    ]
    results = [Result(RES_ROOT_DIR + name + ".csv") for name in resname]
    show = Displayer(0, 15, 0, 0.8)
    show.plotmany(results)
    show.save("compare_bo_1.png")
    show.show()