LINE Solver (C++)
Templated C++ port of the LINE queueing solver
Loading...
Searching...
No Matches
api_dispatch_pfqn_a.cpp File Reference
#include <cmath>
#include <cstdint>
#include <initializer_list>
#include <string>
#include <utility>
#include <vector>
#include "api_dispatch_detail.h"
#include "line/api/pfqn/pfqn_ab_amva.h"
#include "line/api/pfqn/pfqn_aghq.h"
#include "line/api/pfqn/pfqn_aql.h"
#include "line/api/pfqn/pfqn_bk.h"
#include "line/api/pfqn/pfqn_bkt.h"
#include "line/api/pfqn/pfqn_ble.h"
#include "line/api/pfqn/pfqn_bs.h"
#include "line/api/pfqn/pfqn_busyp.h"
#include "line/api/pfqn/pfqn_busyp_clw.h"
#include "line/api/pfqn/pfqn_busyp_multiclass.h"
#include "line/api/pfqn/pfqn_cbh.h"
#include "line/api/pfqn/pfqn_cftp.h"
#include "line/api/pfqn/pfqn_chow.h"
#include "line/api/pfqn/pfqn_clust.h"
#include "line/api/pfqn/pfqn_clw.h"
#include "line/api/pfqn/pfqn_cntol.h"
#include "line/api/pfqn/pfqn_comomrm_ld.h"
#include "line/api/pfqn/pfqn_conwayms.h"
#include "line/api/pfqn/pfqn_cub.h"
#include "line/api/pfqn/pfqn_cub_evals.h"
#include "line/api/pfqn/pfqn_cyclet_ofree.h"
#include "line/api/pfqn/pfqn_dac.h"
#include "line/api/pfqn/pfqn_divdiff_ld.h"
#include "line/api/pfqn/pfqn_dmlin.h"
#include "line/api/pfqn/pfqn_dnc.h"
#include "line/api/pfqn/pfqn_egflinearizer.h"
#include "line/api/pfqn/pfqn_expand.h"
#include "line/api/pfqn/pfqn_explicit.h"
#include "line/api/pfqn/pfqn_explicit_ld.h"
#include "line/api/pfqn/pfqn_fnc.h"
#include "line/api/pfqn/pfqn_gerasimov.h"
#include "line/api/pfqn/pfqn_gflinearizer.h"
#include "line/api/pfqn/pfqn_gldsingle.h"
#include "line/api/pfqn/pfqn_grnmol.h"
#include "line/api/pfqn/pfqn_harel_bounds.h"
#include "line/api/pfqn/pfqn_hst.h"
#include "line/api/pfqn/pfqn_is.h"
#include "line/api/pfqn/pfqn_joint.h"
#include "line/api/pfqn/pfqn_jointmarg.h"
#include "line/api/pfqn/pfqn_kt.h"
#include "line/api/pfqn/pfqn_lap.h"
#include "line/api/pfqn/pfqn_lcfsqn_ca.h"
#include "line/api/pfqn/pfqn_lcfsqn_mva.h"
#include "line/api/pfqn/pfqn_lcfsqn_nc.h"
#include "line/api/pfqn/pfqn_lcp.h"
#include "line/api/pfqn/pfqn_ld_is.h"
#include "line/api/pfqn/pfqn_ldbcmp.h"
#include "line/api/pfqn/pfqn_ldmx_ec.h"
#include "line/api/pfqn/pfqn_le.h"
#include "line/api/pfqn/pfqn_lekt.h"
#include "line/api/pfqn/pfqn_linearizer.h"
#include "line/api/pfqn/pfqn_linearizerms.h"
#include "line/api/pfqn/pfqn_linearizermx.h"
#include "line/api/pfqn/pfqn_lld.h"
#include "line/api/pfqn/pfqn_lldfun.h"
#include "line/api/pfqn/pfqn_lldsingle.h"
#include "line/api/pfqn/pfqn_looping.h"
#include "line/api/pfqn/pfqn_ls.h"

Go to the source code of this file.

Namespaces

namespace  line
 Conservation laws of a layered queueing network, enumerated from its structure.
namespace  line::reg

Macros

#define LINE_PFQN_A_LNZ(Name, fn, gk, lk)
 The (L, N[, Z]) shape of the asymptotic expansions, returning G and lG.

Functions

void line::reg::register_api_pfqn_a (DispatchTable &t)
void line::reg::register_library_only_pfqn_a (LibraryOnlyTable &t)

Macro Definition Documentation

◆ LINE_PFQN_A_LNZ

#define LINE_PFQN_A_LNZ ( Name,
fn,
gk,
lk )
Value:
struct Name { \
template <class T> \
static Json run(Args& a) { \
const Matrix<T> L = a.matrix<T>("L"); \
const std::vector<T> N = a.vector<T>("N"); \
const bool hasZ = a.has("Z"); \
const std::vector<T> Z = a.vector_or_empty<T>("Z"); \
a.done(); \
const auto r = hasZ ? pfqn::fn(L, N, Z) : pfqn::fn(L, N); \
return g_lg(r.G, r.lG, gk, lk); \
} \
};

The (L, N[, Z]) shape of the asymptotic expansions, returning G and lG.

Definition at line 1117 of file api_dispatch_pfqn_a.cpp.