Library

Contents

Index

Modules

ACGuiModule
ACGui

ACGui is a simple web app for the ACFlow toolkit. It depends on the Dash web framework, and provide an useful ui to facilite analytic continuation calculations. Now ACGui supports seven analytic continuation solvers:

  • Maximum Entropy Method (MaxEnt solver, recommended)
  • Barycentric Rational Function Method (BarRat solver, recommended)
  • Nevanlinna Analytical Continuation (NevanAC solver)
  • Stochastic Analytic Continuation (StochAC solver, Beach's algorithm)
  • Stochastic Analytic Continuation (StochSK solver, Sandvik's algorithm)
  • Stochastic Optimization Method (StochOM solver)
  • Stochastic Pole eXpansion (StochPX solver, recommended)

The MaxEnt, BarRat, and NevanAC solvers are extremely fast, so users can obtain the calculated results quickly. However, other stochastic solvers are quite slow (they could spend a few hours solving analytic continuation problems). It is not a good idea to perform calculations with them through ACGui. In such cases, users can download the relevant ac.toml files from this app, and then submit their tasks manually.

Layouts

ACGui.acg_layout!Function
acg_layout!(app::Dash.DashApp)

Global layout for the ACGui app. There are five tabs, namely Data, General, Solver, Run, and About.

ACGui.layout_data_blockFunction
layout_data_block()

Layout for the data tab. Users can upload imaginary-time or Matsubara Green's functions via this tab.

ACGui.layout_base_blockFunction
layout_base_block()

Layout for the general tab. Users should configure the basic parameters for analytic continuation calculations in this tab.

ACGui.layout_maxent_blockFunction
layout_maxent_block()

Layout for the solver tab. It is the panel for the MaxEnt solver. Note that this panel can be hidden, if solver in general tab is not equal to MaxEnt.

ACGui.layout_barrat_blockFunction
layout_barrat_block()

Layout for the solver tab. It is the panel for the BarRat solver. Note that this panel can be hidden, if solver in general tab is not equal to BarRat.

ACGui.layout_nevanac_blockFunction
layout_nevanac_block()

Layout for the solver tab. It is the panel for the NevanAC solver. Note that this panel can be hidden, if solver in general tab is not equal to NevanAC.

ACGui.layout_stochac_blockFunction
layout_stochac_block()

Layout for the solver tab. It is the panel for the StochAC solver. Note that this panel can be hidden, if solver in general tab is not equal to StochAC.

ACGui.layout_stochsk_blockFunction
layout_stochsk_block()

Layout for the solver tab. It is the panel for the StochSK solver. Note that this panel can be hidden, if solver in general tab is not equal to StochSK.

ACGui.layout_stochom_blockFunction
layout_stochom_block()

Layout for the solver tab. It is the panel for the StochOM solver. Note that this panel can be hidden, if solver in general tab is not equal to StochOM.

ACGui.layout_stochpx_blockFunction
layout_stochpx_block()

Layout for the solver tab. It is the panel for the StochPX solver. Note that this panel can be hidden, if solver in general tab is not equal to StochPX.

ACGui.layout_calc_blockFunction
layout_calc_block()

Layout for the run tab. The users can start analytic continuation simulations and visualize the calculated results via this tab.

ACGui.layout_about_blockFunction
layout_about_block()

Layout for the about tab. It is used to display the version number and author of ACGui.

Callbacks

ACGui.parse_parametersFunction
parse_parameters(
    pbase::String,
    pmaxent::String,
    pbarrat::String,
    pnevanac::String,
    pstochac::String,
    pstochsk::String,
    pstochom::String,
    pstochpx::String
)

Convert parameters to dictionary.

ACGui.callbacks_in_data_tabFunction
callbacks_in_data_tab(app::Dash.DashApp)

Callbacks for the data tab. It only includes a callback, which is used to upload files from client side to server side.

ACGui.callbacks_in_general_tabFunction
callbacks_in_general_tab(app::Dash.DashApp)

Callbacks for the general tab. It includes two callbacks. One is used to control the solver tab. The other is used to gather parameters from this tab, and then update dict-base in run tab.

ACGui.callbacks_in_solver_tabFunction
callbacks_in_solver_tab(app::Dash.DashApp)

Callbacks for the solver tab. It includes seven callbacks. All of them are used to collect parameters that are relevant to analytic continuation solvers.

ACGui.callbacks_in_run_tabFunction
callbacks_in_run_tab(app::Dash.DashApp)

Callbacks for the run tab. It contains three callbacks. The first one is for the Start Analytic Continuation button. The second one is for the Get ac.toml only button. The third one is for the Check err.out button.

Base

ACGui.acg_cleanFunction
acg_clean()

This function will clean the current directory. It will remove all the files in the folder. So, please make sure that you are running the app in a safe directory.

ACGui.acg_runFunction
acg_run()

It is the main entry of the ACGui app. It will create a web ui, register some callbacks, and start the web server. By default, the web server will provide services at http://127.0.0.1:8848.