Coverage for gamdpy/__init__.py: 100%

34 statements  

« prev     ^ index     » next       coverage.py v7.4.4, created at 2025-06-14 15:25 +0200

1""" The gamdpy main module """ 

2 

3# Setting to make gamdpy run on google.colab: 

4from numba import config 

5config.CUDA_ENABLE_PYNVJITLINK = 1 

6 

7# Objects which are imported here will be in the main namespace and can be called are gamdpy.object 

8# Objects which are imported in the __init__.py of subpackages are called as gamdpy.subpackage.object 

9 

10# Import from configuration subpackage 

11# The configuration subpackage contains details about the configuration (positions, energies, etc) 

12# The (abstract base) class SimulationBox, and derived classes Orthrhombic and LeesEdwards have information about the simulation box 

13from .configuration.Configuration import Configuration 

14from .configuration.old_input_output import configuration_to_rumd3, configuration_from_rumd3, configuration_to_lammps 

15from .configuration.old_input_output import configuration_from_hdf5 # This should be removed 

16from .configuration.Configuration import replicate_molecules 

17from .simulation_boxes.orthorhombic import Orthorhombic 

18from .simulation_boxes.lees_edwards import LeesEdwards 

19from .configuration.topology import Topology 

20from .configuration.topology import bonds_from_positions, angles_from_bonds, dihedrals_from_angles, molecules_from_bonds, duplicate_topology, replicate_topologies 

21from .configuration.colarray import colarray 

22from .configuration import unit_cells 

23# make_lattice is imported in configuration/__init__.py 

24 

25# Import from simulation subpackage 

26from .simulation.Simulation import Simulation 

27from .simulation.get_default_sim import get_default_sim 

28from .simulation.get_default_compute_plan import get_default_compute_plan 

29from .simulation.get_default_compute_flags import get_default_compute_flags 

30 

31# Import from integrators subpackage 

32from .integrators import integrator, NVE, NVT, NVT_Langevin, NPT_Atomic, NPT_Langevin, SLLOD, NVU_RT 

33 

34# Import from interactions subpackage 

35from .interactions import interaction, add_interactions_list, NbList2, NbListLinkedLists 

36from .interactions import PairPotential 

37from .interactions import Bonds, Angles, Dihedrals 

38from .interactions import make_fixed_interactions, make_planar_calculator, setup_planar_interactions 

39from .interactions import Gravity, Relaxtemp, Tether 

40from .interactions.potential_functions import * 

41 

42# Import from runtime_actions subpackage (Actions that can be inserted into the stimulation kernel) 

43from .runtime_actions import RuntimeAction, add_runtime_actions_list, TrajectorySaver, RestartSaver, ScalarSaver, MomentumReset, StressSaver, extract_stress_tensor 

44 

45# Import from calculators subpackage 

46from .calculators import CalculatorHydrodynamicCorrelations, CalculatorHydrodynamicProfile, CalculatorWidomInsertion 

47from .calculators import CalculatorRadialDistribution, CalculatorStructureFactor 

48 

49# Import from tools subpackage 

50# To make type checking work (e.g. pylance):  

51from .tools import TrajectoryIO, calc_dynamics, save_configuration 

52# Side effect gp.calc_dynamics does also work! Same problem for integrators 

53# TrajectoryIO, save_configuration and calc_dynamics are not directly imported and are called via gp.tools.* 

54 

55# Tools/Evaluator are runtime actions with do not interact with the kernel 

56from .tools.Evaluator import Evaluator 

57 

58# Import from misc 

59# Misc folder contains scripts that have no better place in the code 

60from .misc.select_gpu import select_gpu 

61from .misc.plot_scalars import plot_scalars 

62from .misc.make_function import make_function_constant, make_function_ramp, make_function_sin 

63from .misc.extract_scalars import extract_scalars 

64from .misc.plot_molecule import plot_molecule 

65 

66# Import from visualization  

67#from .visualization import * 

68 

69__version__ = "0.8.2dev"