mirror of https://github.com/vladmandic/automatic
268 lines
8.5 KiB
Python
268 lines
8.5 KiB
Python
# res4lyf
|
|
|
|
from .abnorsett_scheduler import ABNorsettScheduler
|
|
from .bong_tangent_scheduler import BongTangentScheduler
|
|
from .common_sigma_scheduler import CommonSigmaScheduler
|
|
from .deis_scheduler_alt import RESDEISMultistepScheduler
|
|
from .etdrk_scheduler import ETDRKScheduler
|
|
from .gauss_legendre_scheduler import GaussLegendreScheduler
|
|
from .langevin_dynamics_scheduler import LangevinDynamicsScheduler
|
|
from .lawson_scheduler import LawsonScheduler
|
|
from .linear_rk_scheduler import LinearRKScheduler
|
|
from .lobatto_scheduler import LobattoScheduler
|
|
from .pec_scheduler import PECScheduler
|
|
from .radau_iia_scheduler import RadauIIAScheduler
|
|
from .res_multistep_scheduler import RESMultistepScheduler
|
|
from .res_multistep_sde_scheduler import RESMultistepSDEScheduler
|
|
from .res_singlestep_scheduler import RESSinglestepScheduler
|
|
from .res_singlestep_sde_scheduler import RESSinglestepSDEScheduler
|
|
from .res_unified_scheduler import RESUnifiedScheduler
|
|
from .riemannian_flow_scheduler import RiemannianFlowScheduler
|
|
from .rungekutta_44s_scheduler import RungeKutta44Scheduler
|
|
from .rungekutta_57s_scheduler import RungeKutta57Scheduler
|
|
from .rungekutta_67s_scheduler import RungeKutta67Scheduler
|
|
from .simple_exponential_scheduler import SimpleExponentialScheduler
|
|
from .specialized_rk_scheduler import SpecializedRKScheduler
|
|
|
|
from .variants import (
|
|
ABNorsett2MScheduler,
|
|
ABNorsett3MScheduler,
|
|
ABNorsett4MScheduler,
|
|
SigmaArcsineScheduler,
|
|
DEIS1MultistepScheduler,
|
|
DEIS2MScheduler,
|
|
DEIS2MultistepScheduler,
|
|
DEIS3MScheduler,
|
|
DEIS3MultistepScheduler,
|
|
DEISUnified1SScheduler,
|
|
DEISUnified2MScheduler,
|
|
DEISUnified3MScheduler,
|
|
SigmaEasingScheduler,
|
|
ETDRK2Scheduler,
|
|
ETDRK3AScheduler,
|
|
ETDRK3BScheduler,
|
|
ETDRK4AltScheduler,
|
|
ETDRK4Scheduler,
|
|
FlowEuclideanScheduler,
|
|
FlowHyperbolicScheduler,
|
|
Lawson2AScheduler,
|
|
Lawson2BScheduler,
|
|
Lawson4Scheduler,
|
|
LinearRK2Scheduler,
|
|
LinearRK3Scheduler,
|
|
LinearRK4Scheduler,
|
|
LinearRKMidpointScheduler,
|
|
LinearRKRalsstonScheduler,
|
|
Lobatto2Scheduler,
|
|
Lobatto3Scheduler,
|
|
Lobatto4Scheduler,
|
|
FlowLorentzianScheduler,
|
|
PEC2H2SScheduler,
|
|
PEC2H3SScheduler,
|
|
RadauIIA2Scheduler,
|
|
RadauIIA3Scheduler,
|
|
RES2MScheduler,
|
|
RES2MSDEScheduler,
|
|
RES2SScheduler,
|
|
RES2SSDEScheduler,
|
|
RES3MScheduler,
|
|
RES3MSDEScheduler,
|
|
RES3SScheduler,
|
|
RES3SSDEScheduler,
|
|
RES5SScheduler,
|
|
RES5SSDEScheduler,
|
|
RES6SScheduler,
|
|
RES6SSDEScheduler,
|
|
RESUnified2MScheduler,
|
|
RESUnified2SScheduler,
|
|
RESUnified3MScheduler,
|
|
RESUnified3SScheduler,
|
|
RESUnified5SScheduler,
|
|
RESUnified6SScheduler,
|
|
SigmaSigmoidScheduler,
|
|
SigmaSineScheduler,
|
|
SigmaSmoothScheduler,
|
|
FlowSphericalScheduler,
|
|
GaussLegendre2SScheduler,
|
|
GaussLegendre3SScheduler,
|
|
GaussLegendre4SScheduler,
|
|
)
|
|
|
|
__all__ = [ # noqa: RUF022
|
|
# Base
|
|
"RESUnifiedScheduler",
|
|
"RESMultistepScheduler",
|
|
"RESMultistepSDEScheduler",
|
|
"RESSinglestepScheduler",
|
|
"RESSinglestepSDEScheduler",
|
|
"RESDEISMultistepScheduler",
|
|
"ETDRKScheduler",
|
|
"LawsonScheduler",
|
|
"ABNorsettScheduler",
|
|
"PECScheduler",
|
|
"BongTangentScheduler",
|
|
"RiemannianFlowScheduler",
|
|
"LangevinDynamicsScheduler",
|
|
"CommonSigmaScheduler",
|
|
"SimpleExponentialScheduler",
|
|
"LinearRKScheduler",
|
|
"LobattoScheduler",
|
|
"RadauIIAScheduler",
|
|
"GaussLegendreScheduler",
|
|
"SpecializedRKScheduler",
|
|
# Variants
|
|
"RES2MScheduler",
|
|
"RES3MScheduler",
|
|
"DEIS2MScheduler",
|
|
"DEIS3MScheduler",
|
|
"RES2MSDEScheduler",
|
|
"RES3MSDEScheduler",
|
|
"RES2SScheduler",
|
|
"RES3SScheduler",
|
|
"RES5SScheduler",
|
|
"RES6SScheduler",
|
|
"RES2SSDEScheduler",
|
|
"RES3SSDEScheduler",
|
|
"RES5SSDEScheduler",
|
|
"RES6SSDEScheduler",
|
|
"ETDRK2Scheduler",
|
|
"ETDRK3AScheduler",
|
|
"ETDRK3BScheduler",
|
|
"ETDRK4Scheduler",
|
|
"ETDRK4AltScheduler",
|
|
"Lawson2AScheduler",
|
|
"Lawson2BScheduler",
|
|
"Lawson4Scheduler",
|
|
"ABNorsett2MScheduler",
|
|
"ABNorsett3MScheduler",
|
|
"ABNorsett4MScheduler",
|
|
"PEC2H2SScheduler",
|
|
"PEC2H3SScheduler",
|
|
"FlowEuclideanScheduler",
|
|
"FlowHyperbolicScheduler",
|
|
"FlowSphericalScheduler",
|
|
"FlowLorentzianScheduler",
|
|
"SigmaSigmoidScheduler",
|
|
"SigmaSineScheduler",
|
|
"SigmaEasingScheduler",
|
|
"SigmaArcsineScheduler",
|
|
"SigmaSmoothScheduler",
|
|
"DEISUnified1SScheduler",
|
|
"DEISUnified2MScheduler",
|
|
"DEISUnified3MScheduler",
|
|
"RESUnified2MScheduler",
|
|
"RESUnified3MScheduler",
|
|
"RESUnified2SScheduler",
|
|
"RESUnified3SScheduler",
|
|
"RESUnified5SScheduler",
|
|
"RESUnified6SScheduler",
|
|
"DEIS1MultistepScheduler",
|
|
"DEIS2MultistepScheduler",
|
|
"DEIS3MultistepScheduler",
|
|
"LinearRK2Scheduler",
|
|
"LinearRK3Scheduler",
|
|
"LinearRK4Scheduler",
|
|
"LinearRKRalsstonScheduler",
|
|
"LinearRKMidpointScheduler",
|
|
"Lobatto2Scheduler",
|
|
"Lobatto3Scheduler",
|
|
"Lobatto4Scheduler",
|
|
"RadauIIA2Scheduler",
|
|
"RadauIIA3Scheduler",
|
|
"GaussLegendre2SScheduler",
|
|
"GaussLegendre3SScheduler",
|
|
"GaussLegendre4SScheduler",
|
|
"RungeKutta44Scheduler",
|
|
"RungeKutta57Scheduler",
|
|
"RungeKutta67Scheduler",
|
|
]
|
|
|
|
BASE = [
|
|
("RES Unified", RESUnifiedScheduler),
|
|
("RES Multistep", RESMultistepScheduler),
|
|
("RES Multistep SDE", RESMultistepSDEScheduler),
|
|
("RES Singlestep", RESSinglestepScheduler),
|
|
("RES Singlestep SDE", RESSinglestepSDEScheduler),
|
|
("DEIS Multistep", RESDEISMultistepScheduler),
|
|
("ETDRK", ETDRKScheduler),
|
|
("Lawson", LawsonScheduler),
|
|
("ABNorsett", ABNorsettScheduler),
|
|
("PEC", PECScheduler),
|
|
("Common Sigma", CommonSigmaScheduler),
|
|
("Riemannian Flow", RiemannianFlowScheduler),
|
|
("Specialized RK", SpecializedRKScheduler),
|
|
]
|
|
|
|
SIMPLE = [
|
|
("Bong Tangent", BongTangentScheduler),
|
|
("Langevin Dynamics", LangevinDynamicsScheduler),
|
|
("Simple Exponential", SimpleExponentialScheduler),
|
|
]
|
|
|
|
VARIANTS = [
|
|
("RES 2M", RES2MScheduler),
|
|
("RES 3M", RES3MScheduler),
|
|
("DEIS 2M", DEIS2MScheduler),
|
|
("DEIS 3M", DEIS3MScheduler),
|
|
("RES 2M SDE", RES2MSDEScheduler),
|
|
("RES 3M SDE", RES3MSDEScheduler),
|
|
("RES 2S", RES2SScheduler),
|
|
("RES 3S", RES3SScheduler),
|
|
("RES 5S", RES5SScheduler),
|
|
("RES 6S", RES6SScheduler),
|
|
("RES 2S SDE", RES2SSDEScheduler),
|
|
("RES 3S SDE", RES3SSDEScheduler),
|
|
("RES 5S SDE", RES5SSDEScheduler),
|
|
("RES 6S SDE", RES6SSDEScheduler),
|
|
("ETDRK 2", ETDRK2Scheduler),
|
|
("ETDRK 3A", ETDRK3AScheduler),
|
|
("ETDRK 3B", ETDRK3BScheduler),
|
|
("ETDRK 4", ETDRK4Scheduler),
|
|
("ETDRK 4 Alt", ETDRK4AltScheduler),
|
|
("Lawson 2A", Lawson2AScheduler),
|
|
("Lawson 2B", Lawson2BScheduler),
|
|
("Lawson 4", Lawson4Scheduler),
|
|
("ABNorsett 2M", ABNorsett2MScheduler),
|
|
("ABNorsett 3M", ABNorsett3MScheduler),
|
|
("ABNorsett 4M", ABNorsett4MScheduler),
|
|
("PEC 2H2S", PEC2H2SScheduler),
|
|
("PEC 2H3S", PEC2H3SScheduler),
|
|
("Euclidean Flow", FlowEuclideanScheduler),
|
|
("Hyperbolic Flow", FlowHyperbolicScheduler),
|
|
("Spherical Flow", FlowSphericalScheduler),
|
|
("Lorentzian Flow", FlowLorentzianScheduler),
|
|
("Sigmoid Sigma", SigmaSigmoidScheduler),
|
|
("Sine Sigma", SigmaSineScheduler),
|
|
("Easing Sigma", SigmaEasingScheduler),
|
|
("Arcsine Sigma", SigmaArcsineScheduler),
|
|
("Smoothstep Sigma", SigmaSmoothScheduler),
|
|
("DEIS Unified 1", DEISUnified1SScheduler),
|
|
("DEIS Unified 2", DEISUnified2MScheduler),
|
|
("DEIS Unified 3", DEISUnified3MScheduler),
|
|
("RES Unified 2M", RESUnified2MScheduler),
|
|
("RES Unified 3M", RESUnified3MScheduler),
|
|
("RES Unified 2S", RESUnified2SScheduler),
|
|
("RES Unified 3S", RESUnified3SScheduler),
|
|
("RES Unified 5S", RESUnified5SScheduler),
|
|
("RES Unified 6S", RESUnified6SScheduler),
|
|
("DEIS Multistep 1", DEIS1MultistepScheduler),
|
|
("DEIS Multistep 2", DEIS2MultistepScheduler),
|
|
("DEIS Multistep 3", DEIS3MultistepScheduler),
|
|
("Linear-RK 2", LinearRK2Scheduler),
|
|
("Linear-RK 3", LinearRK3Scheduler),
|
|
("Linear-RK 4", LinearRK4Scheduler),
|
|
("Linear-RK Ralston", LinearRKRalsstonScheduler),
|
|
("Linear-RK Midpoint", LinearRKMidpointScheduler),
|
|
("Lobatto 2", Lobatto2Scheduler),
|
|
("Lobatto 3", Lobatto3Scheduler),
|
|
("Lobatto 4", Lobatto4Scheduler),
|
|
("Radau-IIA 2", RadauIIA2Scheduler),
|
|
("Radau-IIA 3", RadauIIA3Scheduler),
|
|
("Gauss-Legendre 2S", GaussLegendre2SScheduler),
|
|
("Gauss-Legendre 3S", GaussLegendre3SScheduler),
|
|
("Gauss-Legendre 4S", GaussLegendre4SScheduler),
|
|
("Runge-Kutta 4/4", RungeKutta44Scheduler),
|
|
("Runge-Kutta 5/7", RungeKutta57Scheduler),
|
|
("Runge-Kutta 6/7", RungeKutta67Scheduler),
|
|
]
|