paramrf 0.10.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (308) hide show
  1. paramrf-0.10.2/.github/workflows/deploy_docs.yml +36 -0
  2. paramrf-0.10.2/.github/workflows/tests.yml +30 -0
  3. paramrf-0.10.2/.gitignore +174 -0
  4. paramrf-0.10.2/LICENSE +62 -0
  5. paramrf-0.10.2/PKG-INFO +101 -0
  6. paramrf-0.10.2/README.md +72 -0
  7. paramrf-0.10.2/assets/logo.png +0 -0
  8. paramrf-0.10.2/docs/Makefile +20 -0
  9. paramrf-0.10.2/docs/make.bat +35 -0
  10. paramrf-0.10.2/docs/source/_templates/autosummary/class.rst +14 -0
  11. paramrf-0.10.2/docs/source/_templates/autosummary/function.rst +11 -0
  12. paramrf-0.10.2/docs/source/_templates/autosummary/module.rst +54 -0
  13. paramrf-0.10.2/docs/source/api/generated/pmrf.Frequency.rst +12 -0
  14. paramrf-0.10.2/docs/source/api/generated/pmrf.Model.rst +12 -0
  15. paramrf-0.10.2/docs/source/api/generated/pmrf.Parameter.rst +12 -0
  16. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.get_anomaly_mask.rst +9 -0
  17. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.has_converged.rst +9 -0
  18. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.has_converged_by_absolute_tolerance.rst +9 -0
  19. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.has_converged_by_patience.rst +9 -0
  20. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.has_converged_by_relative_tolerance.rst +9 -0
  21. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.has_sudden_changes.rst +9 -0
  22. paramrf-0.10.2/docs/source/api/generated/pmrf.algorithms.rst +34 -0
  23. paramrf-0.10.2/docs/source/api/generated/pmrf.constants.rst +20 -0
  24. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.AnestheticDistribution.rst +12 -0
  25. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.Distribution.rst +12 -0
  26. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.FlowJAXDistribution.rst +12 -0
  27. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.JointDistribution.rst +12 -0
  28. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.LogNormalDistribution.rst +12 -0
  29. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.LogUniformDistribution.rst +12 -0
  30. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.MultivariateNormalDistribution.rst +12 -0
  31. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.NormalDistribution.rst +12 -0
  32. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.SampledDistribution.rst +12 -0
  33. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.StackedDistribution.rst +12 -0
  34. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.UniformDistribution.rst +12 -0
  35. paramrf-0.10.2/docs/source/api/generated/pmrf.distributions.rst +39 -0
  36. paramrf-0.10.2/docs/source/api/generated/pmrf.extract_features.rst +9 -0
  37. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.BaseFitter.rst +12 -0
  38. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.BayesianFitter.rst +12 -0
  39. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.BlackJAXNSFitter.rst +12 -0
  40. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.FitResults.rst +12 -0
  41. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.FrequentistFitter.rst +12 -0
  42. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.NumPyroFitter.rst +12 -0
  43. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.NumPyroMCMCFitter.rst +12 -0
  44. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.NumPyroNSFitter.rst +12 -0
  45. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.PolyChordFitter.rst +12 -0
  46. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.SciPyMinimizeFitter.rst +12 -0
  47. paramrf-0.10.2/docs/source/api/generated/pmrf.fitting.rst +38 -0
  48. paramrf-0.10.2/docs/source/api/generated/pmrf.load.rst +9 -0
  49. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.broaden.rst +9 -0
  50. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.comb.rst +9 -0
  51. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex2Scalar.rst +9 -0
  52. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_db.rst +9 -0
  53. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_db10.rst +9 -0
  54. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_degree.rst +9 -0
  55. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_magnitude.rst +9 -0
  56. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_quadrature.rst +9 -0
  57. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_radian.rst +9 -0
  58. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_2_reim.rst +9 -0
  59. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complex_components.rst +9 -0
  60. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.complexify.rst +9 -0
  61. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.conv_cost.rst +9 -0
  62. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.conv_inter.rst +9 -0
  63. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.convolve_interleaved.rst +9 -0
  64. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.cross_ratio.rst +9 -0
  65. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.dB20.rst +9 -0
  66. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.db10_2_mag.rst +9 -0
  67. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.db_2_mag.rst +9 -0
  68. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.db_2_magnitude.rst +9 -0
  69. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.db_2_np.rst +9 -0
  70. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.db_per_100feet_2_db_per_100meter.rst +9 -0
  71. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.dbdeg_2_reim.rst +9 -0
  72. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.degree_2_radian.rst +9 -0
  73. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.dirac_delta.rst +9 -0
  74. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.evaluate_bernstein_basis.rst +9 -0
  75. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.evaluate_power_basis.rst +9 -0
  76. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.feet_2_meter.rst +9 -0
  77. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.find_closest.rst +9 -0
  78. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.find_correct_sign.rst +9 -0
  79. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.inf_to_num.rst +9 -0
  80. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.mag_2_db.rst +9 -0
  81. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.mag_2_db10.rst +9 -0
  82. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.magdeg_2_reim.rst +9 -0
  83. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.magnitude_2_db.rst +9 -0
  84. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.meter_2_feet.rst +9 -0
  85. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.multiply_by.rst +9 -0
  86. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.multiply_every.rst +9 -0
  87. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.neuman.rst +9 -0
  88. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.np_2_db.rst +9 -0
  89. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.nudge_eig.rst +9 -0
  90. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.null.rst +9 -0
  91. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.polar_2_rect.rst +9 -0
  92. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.radian_2_degree.rst +9 -0
  93. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.rect_2_polar.rst +9 -0
  94. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.rms.rst +9 -0
  95. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.round_sig.rst +9 -0
  96. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.rsolve.rst +9 -0
  97. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.rst +81 -0
  98. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.scalar2Complex.rst +9 -0
  99. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.sqrt_known_sign.rst +9 -0
  100. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.sqrt_phase_unwrap.rst +9 -0
  101. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.sum_every.rst +9 -0
  102. paramrf-0.10.2/docs/source/api/generated/pmrf.math_functions.unwrap_rad.rst +9 -0
  103. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.base.Discrete.rst +12 -0
  104. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.base.SingleDiscreteProperty.rst +12 -0
  105. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.base.SingleProperty.rst +12 -0
  106. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.base.rst +31 -0
  107. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.bridge.Host.rst +12 -0
  108. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.bridge._host_side_batched_lookup.rst +9 -0
  109. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.bridge.rst +38 -0
  110. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.collection.DictModel.rst +12 -0
  111. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.collection.ListModel.rst +12 -0
  112. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.collection.rst +30 -0
  113. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.rst +34 -0
  114. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.static.Measured.rst +12 -0
  115. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.static.rst +29 -0
  116. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.surrogate.ContinuousSurrogate.rst +12 -0
  117. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.surrogate.DiscreteSurrogate.rst +12 -0
  118. paramrf-0.10.2/docs/source/api/generated/pmrf.models.adapters.surrogate.rst +30 -0
  119. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.ideal.Ground.rst +12 -0
  120. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.ideal.Port.rst +12 -0
  121. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.ideal.SourceConverter.rst +12 -0
  122. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.ideal.Transformer.rst +12 -0
  123. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.ideal.rst +32 -0
  124. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.CoaxialLine.rst +12 -0
  125. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.ConstantRLGCLine.rst +12 -0
  126. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.DatasheetLine.rst +12 -0
  127. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.MicrostripLine.rst +12 -0
  128. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.RLGCLine.rst +12 -0
  129. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.TLine.rst +12 -0
  130. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.line.rst +34 -0
  131. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.Capacitor.rst +12 -0
  132. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.Inductor.rst +12 -0
  133. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.Load.rst +12 -0
  134. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.Resistor.rst +12 -0
  135. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.ShuntCapacitor.rst +12 -0
  136. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.ShuntInductor.rst +12 -0
  137. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.ShuntResistor.rst +12 -0
  138. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.lumped.rst +35 -0
  139. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.nonideal.CLCResistor.rst +12 -0
  140. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.nonideal.NonIdealResistor.rst +12 -0
  141. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.nonideal.rst +30 -0
  142. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.rst +34 -0
  143. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.topological.BoxCLCC.rst +12 -0
  144. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.topological.PiCLC.rst +12 -0
  145. paramrf-0.10.2/docs/source/api/generated/pmrf.models.components.topological.rst +30 -0
  146. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.interconnected.Cascade.rst +12 -0
  147. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.interconnected.Circuit.rst +12 -0
  148. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.interconnected.Terminated.rst +12 -0
  149. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.interconnected.rst +31 -0
  150. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.rst +31 -0
  151. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.transformed.Flipped.rst +12 -0
  152. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.transformed.Renumbered.rst +12 -0
  153. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.transformed.Stacked.rst +12 -0
  154. paramrf-0.10.2/docs/source/api/generated/pmrf.models.composite.transformed.rst +31 -0
  155. paramrf-0.10.2/docs/source/api/generated/pmrf.models.numerical.expansion.VectorExpansion.rst +12 -0
  156. paramrf-0.10.2/docs/source/api/generated/pmrf.models.numerical.expansion.rst +29 -0
  157. paramrf-0.10.2/docs/source/api/generated/pmrf.models.numerical.rst +30 -0
  158. paramrf-0.10.2/docs/source/api/generated/pmrf.models.rst +33 -0
  159. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.CenteredUniform.rst +9 -0
  160. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.Fixed.rst +9 -0
  161. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.Free.rst +9 -0
  162. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.Normal.rst +9 -0
  163. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.ParameterConstraint.rst +12 -0
  164. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.ParameterGroup.rst +12 -0
  165. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.PercentNormal.rst +9 -0
  166. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.PercentUniform.rst +9 -0
  167. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.RelativeNormal.rst +9 -0
  168. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.RelativeUniform.rst +9 -0
  169. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.Stacked.rst +9 -0
  170. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.Uniform.rst +9 -0
  171. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.as_param.rst +9 -0
  172. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.is_fixed_param.rst +9 -0
  173. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.is_free_param.rst +9 -0
  174. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.is_param.rst +9 -0
  175. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.is_valid_param.rst +9 -0
  176. paramrf-0.10.2/docs/source/api/generated/pmrf.parameters.rst +53 -0
  177. paramrf-0.10.2/docs/source/api/generated/pmrf.results.BaseResults.rst +12 -0
  178. paramrf-0.10.2/docs/source/api/generated/pmrf.results.rst +29 -0
  179. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.a2s.rst +9 -0
  180. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.cascade_a.rst +9 -0
  181. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.cascade_s.rst +9 -0
  182. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.connect_s_arbitrary.rst +9 -0
  183. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.connect_s_common.rst +9 -0
  184. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.fix_z0_shape.rst +9 -0
  185. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.renormalize_s.rst +9 -0
  186. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.rst +43 -0
  187. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.s2a.rst +9 -0
  188. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.s2s.rst +9 -0
  189. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.s2y.rst +9 -0
  190. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.s2z.rst +9 -0
  191. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.terminate_a_in_s.rst +9 -0
  192. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.terminate_s_in_s.rst +9 -0
  193. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.y2s.rst +9 -0
  194. paramrf-0.10.2/docs/source/api/generated/pmrf.rf_functions.z2s.rst +9 -0
  195. paramrf-0.10.2/docs/source/api/generated/pmrf.runner.BaseRunner.rst +12 -0
  196. paramrf-0.10.2/docs/source/api/generated/pmrf.runner.rst +29 -0
  197. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.AcquisitionSampler.rst +12 -0
  198. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.BaseSampler.rst +12 -0
  199. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.EqxLearnUncertaintySampler.rst +12 -0
  200. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.FieldSampler.rst +12 -0
  201. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.LatinHypercubeSampler.rst +12 -0
  202. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.OneshotSampler.rst +12 -0
  203. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.SampleResults.rst +12 -0
  204. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.UniformSampler.rst +12 -0
  205. paramrf-0.10.2/docs/source/api/generated/pmrf.sampling.rst +36 -0
  206. paramrf-0.10.2/docs/source/api/generated/pmrf.save.rst +9 -0
  207. paramrf-0.10.2/docs/source/api/index.rst +34 -0
  208. paramrf-0.10.2/docs/source/conf.py +167 -0
  209. paramrf-0.10.2/docs/source/index.rst +61 -0
  210. paramrf-0.10.2/docs/source/installation.rst +30 -0
  211. paramrf-0.10.2/docs/source/introduction/circuit_clc.png +0 -0
  212. paramrf-0.10.2/docs/source/introduction/index.rst +191 -0
  213. paramrf-0.10.2/docs/source/license.rst +66 -0
  214. paramrf-0.10.2/docs/source/skrf_comparison.rst +38 -0
  215. paramrf-0.10.2/examples/1_compose_rlc.py +20 -0
  216. paramrf-0.10.2/examples/2_fit_cable_scipy.py +26 -0
  217. paramrf-0.10.2/examples/3_simulate_resistor.py +12 -0
  218. paramrf-0.10.2/examples/data/10m_cable.s2p +2011 -0
  219. paramrf-0.10.2/paramrf.egg-info/PKG-INFO +101 -0
  220. paramrf-0.10.2/paramrf.egg-info/SOURCES.txt +306 -0
  221. paramrf-0.10.2/paramrf.egg-info/dependency_links.txt +1 -0
  222. paramrf-0.10.2/paramrf.egg-info/requires.txt +20 -0
  223. paramrf-0.10.2/paramrf.egg-info/top_level.txt +1 -0
  224. paramrf-0.10.2/pmrf/__init__.py +58 -0
  225. paramrf-0.10.2/pmrf/algorithms/__init__.py +15 -0
  226. paramrf-0.10.2/pmrf/algorithms/anomaly.py +53 -0
  227. paramrf-0.10.2/pmrf/algorithms/convergence.py +80 -0
  228. paramrf-0.10.2/pmrf/constants.py +51 -0
  229. paramrf-0.10.2/pmrf/distributions/__init__.py +31 -0
  230. paramrf-0.10.2/pmrf/distributions/backends/__init__.py +17 -0
  231. paramrf-0.10.2/pmrf/distributions/backends/anesthetic.py +76 -0
  232. paramrf-0.10.2/pmrf/distributions/backends/flowjax.py +76 -0
  233. paramrf-0.10.2/pmrf/distributions/joint.py +153 -0
  234. paramrf-0.10.2/pmrf/distributions/sampled.py +63 -0
  235. paramrf-0.10.2/pmrf/distributions/stacked.py +62 -0
  236. paramrf-0.10.2/pmrf/features.py +268 -0
  237. paramrf-0.10.2/pmrf/fitting/__init__.py +32 -0
  238. paramrf-0.10.2/pmrf/fitting/backends/__init__.py +33 -0
  239. paramrf-0.10.2/pmrf/fitting/backends/blackjax.py +204 -0
  240. paramrf-0.10.2/pmrf/fitting/backends/numpyro.py +254 -0
  241. paramrf-0.10.2/pmrf/fitting/backends/polychord.py +132 -0
  242. paramrf-0.10.2/pmrf/fitting/backends/scipy.py +105 -0
  243. paramrf-0.10.2/pmrf/fitting/base.py +215 -0
  244. paramrf-0.10.2/pmrf/fitting/bayesian.py +308 -0
  245. paramrf-0.10.2/pmrf/fitting/frequentist.py +127 -0
  246. paramrf-0.10.2/pmrf/fitting/results.py +72 -0
  247. paramrf-0.10.2/pmrf/frequency.py +582 -0
  248. paramrf-0.10.2/pmrf/io.py +65 -0
  249. paramrf-0.10.2/pmrf/math_functions.py +1313 -0
  250. paramrf-0.10.2/pmrf/models/__init__.py +31 -0
  251. paramrf-0.10.2/pmrf/models/adapters/__init__.py +17 -0
  252. paramrf-0.10.2/pmrf/models/adapters/base.py +139 -0
  253. paramrf-0.10.2/pmrf/models/adapters/bridge.py +108 -0
  254. paramrf-0.10.2/pmrf/models/adapters/collection.py +36 -0
  255. paramrf-0.10.2/pmrf/models/adapters/static.py +53 -0
  256. paramrf-0.10.2/pmrf/models/adapters/surrogate.py +43 -0
  257. paramrf-0.10.2/pmrf/models/components/__init__.py +16 -0
  258. paramrf-0.10.2/pmrf/models/components/ideal.py +68 -0
  259. paramrf-0.10.2/pmrf/models/components/line.py +426 -0
  260. paramrf-0.10.2/pmrf/models/components/lumped.py +192 -0
  261. paramrf-0.10.2/pmrf/models/components/nonideal.py +92 -0
  262. paramrf-0.10.2/pmrf/models/components/topological.py +238 -0
  263. paramrf-0.10.2/pmrf/models/composite/__init__.py +13 -0
  264. paramrf-0.10.2/pmrf/models/composite/interconnected.py +175 -0
  265. paramrf-0.10.2/pmrf/models/composite/transformed.py +133 -0
  266. paramrf-0.10.2/pmrf/models/model.py +2089 -0
  267. paramrf-0.10.2/pmrf/models/numerical/__init__.py +9 -0
  268. paramrf-0.10.2/pmrf/models/numerical/expansion.py +66 -0
  269. paramrf-0.10.2/pmrf/network_collection.py +421 -0
  270. paramrf-0.10.2/pmrf/parameters/__init__.py +27 -0
  271. paramrf-0.10.2/pmrf/parameters/factories.py +344 -0
  272. paramrf-0.10.2/pmrf/parameters/parameter.py +644 -0
  273. paramrf-0.10.2/pmrf/parameters/parameter_constraint.py +42 -0
  274. paramrf-0.10.2/pmrf/parameters/parameter_group.py +119 -0
  275. paramrf-0.10.2/pmrf/results.py +209 -0
  276. paramrf-0.10.2/pmrf/rf_functions/__init__.py +22 -0
  277. paramrf-0.10.2/pmrf/rf_functions/connections/__init__.py +12 -0
  278. paramrf-0.10.2/pmrf/rf_functions/connections/cascade.py +127 -0
  279. paramrf-0.10.2/pmrf/rf_functions/connections/general.py +366 -0
  280. paramrf-0.10.2/pmrf/rf_functions/connections/terminate.py +89 -0
  281. paramrf-0.10.2/pmrf/rf_functions/conversions.py +416 -0
  282. paramrf-0.10.2/pmrf/rf_functions/normalize.py +72 -0
  283. paramrf-0.10.2/pmrf/runner.py +250 -0
  284. paramrf-0.10.2/pmrf/sampling/__init__.py +33 -0
  285. paramrf-0.10.2/pmrf/sampling/acqusition.py +164 -0
  286. paramrf-0.10.2/pmrf/sampling/algorithms/__init__.py +13 -0
  287. paramrf-0.10.2/pmrf/sampling/algorithms/field.py +258 -0
  288. paramrf-0.10.2/pmrf/sampling/algorithms/latin_hypercube.py +32 -0
  289. paramrf-0.10.2/pmrf/sampling/algorithms/uniform.py +23 -0
  290. paramrf-0.10.2/pmrf/sampling/backends/__init__.py +11 -0
  291. paramrf-0.10.2/pmrf/sampling/backends/eqxlearn.py +126 -0
  292. paramrf-0.10.2/pmrf/sampling/base.py +237 -0
  293. paramrf-0.10.2/pmrf/sampling/oneshot.py +77 -0
  294. paramrf-0.10.2/pmrf/sampling/results.py +68 -0
  295. paramrf-0.10.2/pmrf/util/__init__.py +11 -0
  296. paramrf-0.10.2/pmrf/util/logging.py +33 -0
  297. paramrf-0.10.2/pmrf/util/misc.py +95 -0
  298. paramrf-0.10.2/pmrf/util/mpi.py +31 -0
  299. paramrf-0.10.2/pmrf/util/plotting.py +150 -0
  300. paramrf-0.10.2/pmrf/util/preprocessing.py +24 -0
  301. paramrf-0.10.2/pmrf/util/random.py +17 -0
  302. paramrf-0.10.2/pmrf/util/tree.py +443 -0
  303. paramrf-0.10.2/pyproject.toml +46 -0
  304. paramrf-0.10.2/setup.cfg +4 -0
  305. paramrf-0.10.2/tests/__init__.py +0 -0
  306. paramrf-0.10.2/tests/data/10m_cable.s2p +2011 -0
  307. paramrf-0.10.2/tests/test_fitting.py +39 -0
  308. paramrf-0.10.2/tests/test_rlc.py +28 -0
@@ -0,0 +1,36 @@
1
+ name: Deploy Sphinx Docs
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+
7
+ permissions:
8
+ contents: write
9
+
10
+ jobs:
11
+ build-deploy:
12
+ runs-on: ubuntu-latest
13
+
14
+ steps:
15
+ - name: Checkout repo
16
+ uses: actions/checkout@v4
17
+
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v5
20
+ with:
21
+ python-version: '3.11'
22
+
23
+ - name: Install dependencies
24
+ run: |
25
+ pip install sphinx sphinx_rtd_theme myst-parser ghp-import
26
+ pip install -e ".[docs]"
27
+
28
+ - name: Build docs
29
+ run: |
30
+ cd docs
31
+ make html
32
+
33
+ - name: Deploy to GitHub Pages
34
+ run: |
35
+ cd docs
36
+ ghp-import -n -p -f build/html
@@ -0,0 +1,30 @@
1
+ name: Run Tests
2
+
3
+ on:
4
+ push:
5
+ branches: [main]
6
+ pull_request:
7
+ branches: [main]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+
13
+ steps:
14
+ - name: Checkout repo
15
+ uses: actions/checkout@v4
16
+
17
+ - name: Set up Python
18
+ uses: actions/setup-python@v5
19
+ with:
20
+ python-version: '3.11'
21
+
22
+ - name: Install dependencies
23
+ run: |
24
+ python -m pip install --upgrade pip
25
+ pip install pytest
26
+ pip install -e . # Installs your library so tests can find it
27
+
28
+ - name: Run Pytest
29
+ run: |
30
+ python -m pytest
@@ -0,0 +1,174 @@
1
+ # Byte-compiled / optimized / DLL files
2
+ __pycache__/
3
+ *.py[cod]
4
+ *$py.class
5
+
6
+ # C extensions
7
+ *.so
8
+
9
+ # Distribution / packaging
10
+ .Python
11
+ build/
12
+ develop-eggs/
13
+ dist/
14
+ downloads/
15
+ eggs/
16
+ .eggs/
17
+ lib/
18
+ lib64/
19
+ parts/
20
+ sdist/
21
+ var/
22
+ wheels/
23
+ share/python-wheels/
24
+ *.egg-info/
25
+ .installed.cfg
26
+ *.egg
27
+ MANIFEST
28
+
29
+ # PyInstaller
30
+ # Usually these files are written by a python script from a template
31
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
32
+ *.manifest
33
+ *.spec
34
+
35
+ # Installer logs
36
+ pip-log.txt
37
+ pip-delete-this-directory.txt
38
+
39
+ # Unit test / coverage reports
40
+ htmlcov/
41
+ .tox/
42
+ .nox/
43
+ .coverage
44
+ .coverage.*
45
+ .cache
46
+ nosetests.xml
47
+ coverage.xml
48
+ *.cover
49
+ *.py,cover
50
+ .hypothesis/
51
+ .pytest_cache/
52
+ cover/
53
+
54
+ # Translations
55
+ *.mo
56
+ *.pot
57
+
58
+ # Django stuff:
59
+ *.log
60
+ local_settings.py
61
+ db.sqlite3
62
+ db.sqlite3-journal
63
+
64
+ # Flask stuff:
65
+ instance/
66
+ .webassets-cache
67
+
68
+ # Scrapy stuff:
69
+ .scrapy
70
+
71
+ # Sphinx documentation
72
+ docs/_build/
73
+
74
+ # PyBuilder
75
+ .pybuilder/
76
+ target/
77
+
78
+ # Jupyter Notebook
79
+ .ipynb_checkpoints
80
+
81
+ # IPython
82
+ profile_default/
83
+ ipython_config.py
84
+
85
+ # pyenv
86
+ # For a library or package, you might want to ignore these files since the code is
87
+ # intended to run in multiple environments; otherwise, check them in:
88
+ # .python-version
89
+
90
+ # pipenv
91
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
92
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
93
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
94
+ # install all needed dependencies.
95
+ #Pipfile.lock
96
+
97
+ # UV
98
+ # Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control.
99
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
100
+ # commonly ignored for libraries.
101
+ #uv.lock
102
+
103
+ # poetry
104
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
105
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
106
+ # commonly ignored for libraries.
107
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
108
+ #poetry.lock
109
+
110
+ # pdm
111
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
112
+ #pdm.lock
113
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
114
+ # in version control.
115
+ # https://pdm.fming.dev/latest/usage/project/#working-with-version-control
116
+ .pdm.toml
117
+ .pdm-python
118
+ .pdm-build/
119
+
120
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
121
+ __pypackages__/
122
+
123
+ # Celery stuff
124
+ celerybeat-schedule
125
+ celerybeat.pid
126
+
127
+ # SageMath parsed files
128
+ *.sage.py
129
+
130
+ # Environments
131
+ .env
132
+ .venv
133
+ env/
134
+ venv/
135
+ ENV/
136
+ env.bak/
137
+ venv.bak/
138
+
139
+ # Spyder project settings
140
+ .spyderproject
141
+ .spyproject
142
+
143
+ # Rope project settings
144
+ .ropeproject
145
+
146
+ # mkdocs documentation
147
+ /site
148
+
149
+ # mypy
150
+ .mypy_cache/
151
+ .dmypy.json
152
+ dmypy.json
153
+
154
+ # Pyre type checker
155
+ .pyre/
156
+
157
+ # pytype static type analyzer
158
+ .pytype/
159
+
160
+ # Cython debug symbols
161
+ cython_debug/
162
+
163
+ # PyCharm
164
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
165
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
166
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
167
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
168
+ #.idea/
169
+
170
+ # Ruff stuff:
171
+ .ruff_cache/
172
+
173
+ # PyPI configuration file
174
+ .pypirc
paramrf-0.10.2/LICENSE ADDED
@@ -0,0 +1,62 @@
1
+ Apache License
2
+ Version 2.0, January 2004
3
+ http://www.apache.org/licenses/
4
+
5
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6
+
7
+ Copyright 2025 Stellenbosch University
8
+
9
+ Licensed under the Apache License, Version 2.0 (the "License");
10
+ you may not use this file except in compliance with the License.
11
+ You may obtain a copy of the License at
12
+
13
+ http://www.apache.org/licenses/LICENSE-2.0
14
+
15
+ Unless required by applicable law or agreed to in writing, software
16
+ distributed under the License is distributed on an "AS IS" BASIS,
17
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18
+ See the License for the specific language governing permissions and
19
+ limitations under the License.
20
+
21
+
22
+
23
+ NOTICE REGARDING THIRD-PARTY CODE
24
+
25
+ This software includes portions of code derived from the scikit-rf project
26
+ (https://github.com/scikit-rf/scikit-rf), which is licensed under the
27
+ BSD 3-Clause License.
28
+
29
+ The following license applies to those portions:
30
+
31
+ ----------------------------------------------------------------------
32
+ BSD 3-Clause License
33
+
34
+ Copyright (c) 2011, Scikit-rf Developers
35
+ All rights reserved.
36
+
37
+ Redistribution and use in source and binary forms, with or without
38
+ modification, are permitted provided that the following conditions are met:
39
+
40
+ 1. Redistributions of source code must retain the above copyright notice,
41
+ this list of conditions and the following disclaimer.
42
+
43
+ 2. Redistributions in binary form must reproduce the above copyright notice,
44
+ this list of conditions and the following disclaimer in the documentation
45
+ and/or other materials provided with the distribution.
46
+
47
+ 3. Neither the name of scikit-rf nor the names of its contributors
48
+ may be used to endorse or promote products derived from this software
49
+ without specific prior written permission.
50
+
51
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
52
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
53
+ THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
54
+ ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
55
+ LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
56
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
57
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
58
+ AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
59
+ (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
60
+ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
61
+ ----------------------------------------------------------------------
62
+
@@ -0,0 +1,101 @@
1
+ Metadata-Version: 2.4
2
+ Name: paramrf
3
+ Version: 0.10.2
4
+ Summary: ParamRF: Parametric Radio Frequency Modelling, Fitting and Sampling
5
+ Author-email: Gary Allen <gvcallen@gmail.com>
6
+ Project-URL: homepage, https://github.com/paramrf/paramrf
7
+ Description-Content-Type: text/markdown
8
+ License-File: LICENSE
9
+ Requires-Dist: equinox
10
+ Requires-Dist: jax
11
+ Requires-Dist: jaxtyping
12
+ Requires-Dist: h5py
13
+ Requires-Dist: matplotlib
14
+ Requires-Dist: numpy
15
+ Requires-Dist: numpyro
16
+ Requires-Dist: jsonpickle
17
+ Requires-Dist: cloudpickle
18
+ Requires-Dist: scikit-rf
19
+ Requires-Dist: scipy
20
+ Requires-Dist: joblib
21
+ Requires-Dist: tqdm
22
+ Provides-Extra: docs
23
+ Requires-Dist: sphinx; extra == "docs"
24
+ Requires-Dist: myst-parser; extra == "docs"
25
+ Requires-Dist: ghp-import; extra == "docs"
26
+ Requires-Dist: sphinx-rtd-theme; extra == "docs"
27
+ Requires-Dist: sphinx-math-dollar; extra == "docs"
28
+ Dynamic: license-file
29
+
30
+ [![Run Tests](https://github.com/paramrf/paramrf/actions/workflows/tests.yml/badge.svg)](https://github.com/paramrf/paramrf/actions/workflows/tests.yml)
31
+
32
+ ![paramrf logo](assets/logo.png)
33
+
34
+ # ParamRF: Parametric Radio Frequency Modelling, Fitting and Sampling
35
+
36
+ **ParamRF**, or ``pmrf``, is an open-source radio frequency (RF) modelling framework. It provides an object-orientated means of modelling, fitting and sampling both circuit and numerical RF models in the frequency-domain, using [JAX](https://github.com/jax-ml/jax) and [Equinox](https://github.com/patrick-kidger/equinox).
37
+
38
+ | **ParamRF** | |
39
+ |-------------|-------|
40
+ | **Author** | Gary Allen |
41
+ | **Homepage** | [github.com/paramrf/paramrf](https://github.com/paramrf/paramrf) |
42
+ | **Docs** | [paramrf.github.io/paramrf](https://paramrf.github.io/paramrf) |
43
+ | **Paper** | [ParamRF: A JAX-Native Framework for Declarative Circuit Modelling](https://doi.org/10.48550/arXiv.2510.15881) |
44
+
45
+ ## Installation
46
+ ParamRF can be installed using pip directly:
47
+
48
+ ``
49
+ pip install paramrf
50
+ ``
51
+
52
+ ### Optional dependencies
53
+ Several additional dependencies are required/recommended for more advanced use-cases.
54
+
55
+ For PolyChord fitting:
56
+
57
+ ``
58
+ pip install git+https://github.com/PolyChord/PolyChordLite.git
59
+ pip install anesthetic
60
+ pip install mpi4py
61
+ ``
62
+
63
+ For BlackJAX fitting:
64
+
65
+ ``
66
+ pip install git+https://github.com/handley-lab/blackjax@nested_sampling
67
+ pip install anesthetic
68
+ ``
69
+
70
+ For eqx-learn surrogate modeling:
71
+
72
+ ``
73
+ pip install git+https://github.com/eqx-learn/eqx-learn
74
+ ``
75
+
76
+
77
+ ## Citation
78
+
79
+ If you have used ParamRF for academic work, please cite the original [paper](https://doi.org/10.48550/arXiv.2510.15881):
80
+
81
+ > G.V.C. Allen, D.I.L. de Villiers, (2025). ParamRF: A JAX-native Framework for Declarative Circuit Modelling. arXiv, https://doi.org/10.48550/arXiv.2510.15881.
82
+
83
+ or with BibTeX:
84
+
85
+ ```bibtex
86
+ @article{paramrf,
87
+ doi = {10.48550/arXiv.2510.15881},
88
+ url = {https://doi.org/10.48550/arXiv.2510.15881},
89
+ year = {2025},
90
+ month = {Oct},
91
+ title = {ParamRF: A JAX-native Framework for Declarative Circuit Modelling},
92
+ author = {Gary V. C. Allen and Dirk I. L. de Villiers},
93
+ eprint = {2510.15881},
94
+ archivePrefix = {arXiv},
95
+ primaryClass = {cs.OH},
96
+ }
97
+ ```
98
+
99
+ ## Contributions
100
+
101
+ Since the library is in very early stages and likely contains several bugs, contributions are more than welcome by submitting a PR (especially for the docs!). However, before making any major changes, please open an issue so we can discuss the general intention of the contribution.
@@ -0,0 +1,72 @@
1
+ [![Run Tests](https://github.com/paramrf/paramrf/actions/workflows/tests.yml/badge.svg)](https://github.com/paramrf/paramrf/actions/workflows/tests.yml)
2
+
3
+ ![paramrf logo](assets/logo.png)
4
+
5
+ # ParamRF: Parametric Radio Frequency Modelling, Fitting and Sampling
6
+
7
+ **ParamRF**, or ``pmrf``, is an open-source radio frequency (RF) modelling framework. It provides an object-orientated means of modelling, fitting and sampling both circuit and numerical RF models in the frequency-domain, using [JAX](https://github.com/jax-ml/jax) and [Equinox](https://github.com/patrick-kidger/equinox).
8
+
9
+ | **ParamRF** | |
10
+ |-------------|-------|
11
+ | **Author** | Gary Allen |
12
+ | **Homepage** | [github.com/paramrf/paramrf](https://github.com/paramrf/paramrf) |
13
+ | **Docs** | [paramrf.github.io/paramrf](https://paramrf.github.io/paramrf) |
14
+ | **Paper** | [ParamRF: A JAX-Native Framework for Declarative Circuit Modelling](https://doi.org/10.48550/arXiv.2510.15881) |
15
+
16
+ ## Installation
17
+ ParamRF can be installed using pip directly:
18
+
19
+ ``
20
+ pip install paramrf
21
+ ``
22
+
23
+ ### Optional dependencies
24
+ Several additional dependencies are required/recommended for more advanced use-cases.
25
+
26
+ For PolyChord fitting:
27
+
28
+ ``
29
+ pip install git+https://github.com/PolyChord/PolyChordLite.git
30
+ pip install anesthetic
31
+ pip install mpi4py
32
+ ``
33
+
34
+ For BlackJAX fitting:
35
+
36
+ ``
37
+ pip install git+https://github.com/handley-lab/blackjax@nested_sampling
38
+ pip install anesthetic
39
+ ``
40
+
41
+ For eqx-learn surrogate modeling:
42
+
43
+ ``
44
+ pip install git+https://github.com/eqx-learn/eqx-learn
45
+ ``
46
+
47
+
48
+ ## Citation
49
+
50
+ If you have used ParamRF for academic work, please cite the original [paper](https://doi.org/10.48550/arXiv.2510.15881):
51
+
52
+ > G.V.C. Allen, D.I.L. de Villiers, (2025). ParamRF: A JAX-native Framework for Declarative Circuit Modelling. arXiv, https://doi.org/10.48550/arXiv.2510.15881.
53
+
54
+ or with BibTeX:
55
+
56
+ ```bibtex
57
+ @article{paramrf,
58
+ doi = {10.48550/arXiv.2510.15881},
59
+ url = {https://doi.org/10.48550/arXiv.2510.15881},
60
+ year = {2025},
61
+ month = {Oct},
62
+ title = {ParamRF: A JAX-native Framework for Declarative Circuit Modelling},
63
+ author = {Gary V. C. Allen and Dirk I. L. de Villiers},
64
+ eprint = {2510.15881},
65
+ archivePrefix = {arXiv},
66
+ primaryClass = {cs.OH},
67
+ }
68
+ ```
69
+
70
+ ## Contributions
71
+
72
+ Since the library is in very early stages and likely contains several bugs, contributions are more than welcome by submitting a PR (especially for the docs!). However, before making any major changes, please open an issue so we can discuss the general intention of the contribution.
Binary file
@@ -0,0 +1,20 @@
1
+ # Minimal makefile for Sphinx documentation
2
+ #
3
+
4
+ # You can set these variables from the command line, and also
5
+ # from the environment for the first two.
6
+ SPHINXOPTS ?=
7
+ SPHINXBUILD ?= sphinx-build
8
+ SOURCEDIR = source
9
+ BUILDDIR = build
10
+
11
+ # Put it first so that "make" without argument is like "make help".
12
+ help:
13
+ @$(SPHINXBUILD) -M help "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
14
+
15
+ .PHONY: help Makefile
16
+
17
+ # Catch-all target: route all unknown targets to Sphinx using the new
18
+ # "make mode" option. $(O) is meant as a shortcut for $(SPHINXOPTS).
19
+ %: Makefile
20
+ @$(SPHINXBUILD) -M $@ "$(SOURCEDIR)" "$(BUILDDIR)" $(SPHINXOPTS) $(O)
@@ -0,0 +1,35 @@
1
+ @ECHO OFF
2
+
3
+ pushd %~dp0
4
+
5
+ REM Command file for Sphinx documentation
6
+
7
+ if "%SPHINXBUILD%" == "" (
8
+ set SPHINXBUILD=sphinx-build
9
+ )
10
+ set SOURCEDIR=source
11
+ set BUILDDIR=build
12
+
13
+ %SPHINXBUILD% >NUL 2>NUL
14
+ if errorlevel 9009 (
15
+ echo.
16
+ echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
17
+ echo.installed, then set the SPHINXBUILD environment variable to point
18
+ echo.to the full path of the 'sphinx-build' executable. Alternatively you
19
+ echo.may add the Sphinx directory to PATH.
20
+ echo.
21
+ echo.If you don't have Sphinx installed, grab it from
22
+ echo.https://www.sphinx-doc.org/
23
+ exit /b 1
24
+ )
25
+
26
+ if "%1" == "" goto help
27
+
28
+ %SPHINXBUILD% -M %1 %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
29
+ goto end
30
+
31
+ :help
32
+ %SPHINXBUILD% -M help %SOURCEDIR% %BUILDDIR% %SPHINXOPTS% %O%
33
+
34
+ :end
35
+ popd
@@ -0,0 +1,14 @@
1
+ {% if fullname.count('.') <= 1 %}
2
+ {% set title = "**" ~ name ~ "** (" ~ fullname ~ ")" %}
3
+ {% else %}
4
+ {% set title = name %}
5
+ {% endif %}
6
+ {{ title }}
7
+ {{ "=" * title|length }}
8
+
9
+ .. currentmodule:: {{ module }}
10
+
11
+ .. autoclass:: {{ objname }}
12
+ :members:
13
+ :show-inheritance:
14
+ :inherited-members:
@@ -0,0 +1,11 @@
1
+ {% if fullname.count('.') <= 1 %}
2
+ {% set title = "**" ~ name ~ "** (" ~ fullname ~ ")" %}
3
+ {% else %}
4
+ {% set title = name %}
5
+ {% endif %}
6
+ {{ title }}
7
+ {{ "=" * title|length }}
8
+
9
+ .. currentmodule:: {{ module }}
10
+
11
+ .. autofunction:: {{ objname }}
@@ -0,0 +1,54 @@
1
+ {% if fullname.count('.') <= 1 %}
2
+ {% set title = "**" ~ name ~ "** (" ~ fullname ~ ")" %}
3
+ {% else %}
4
+ {% set title = name %}
5
+ {% endif %}
6
+ {{ title }}
7
+ {{ "=" * title|length }}
8
+
9
+ .. automodule:: {{ fullname }}
10
+ :no-members:
11
+ :no-inherited-members:
12
+
13
+ {% block modules %}
14
+ {% if modules %}
15
+ .. rubric:: Modules
16
+
17
+ .. autosummary::
18
+ :toctree:
19
+ :template: autosummary/module.rst
20
+ :recursive:
21
+
22
+ {% for item in modules %}
23
+ {{ item }}
24
+ {%- endfor %}
25
+ {% endif %}
26
+ {% endblock %}
27
+
28
+ {% block classes %}
29
+ {% if classes %}
30
+ .. rubric:: Classes
31
+
32
+ .. autosummary::
33
+ :toctree:
34
+ :template: autosummary/class.rst
35
+
36
+ {% for item in classes %}
37
+ {{ item }}
38
+ {%- endfor %}
39
+ {% endif %}
40
+ {% endblock %}
41
+
42
+ {% block functions %}
43
+ {% if functions %}
44
+ .. rubric:: Functions
45
+
46
+ .. autosummary::
47
+ :toctree:
48
+ :template: autosummary/function.rst
49
+
50
+ {% for item in functions %}
51
+ {{ item }}
52
+ {%- endfor %}
53
+ {% endif %}
54
+ {% endblock %}
@@ -0,0 +1,12 @@
1
+ 
2
+
3
+
4
+ **Frequency** (pmrf.Frequency)
5
+ ==============================
6
+
7
+ .. currentmodule:: pmrf
8
+
9
+ .. autoclass:: Frequency
10
+ :members:
11
+ :show-inheritance:
12
+ :inherited-members:
@@ -0,0 +1,12 @@
1
+ 
2
+
3
+
4
+ **Model** (pmrf.Model)
5
+ ======================
6
+
7
+ .. currentmodule:: pmrf
8
+
9
+ .. autoclass:: Model
10
+ :members:
11
+ :show-inheritance:
12
+ :inherited-members:
@@ -0,0 +1,12 @@
1
+ 
2
+
3
+
4
+ **Parameter** (pmrf.Parameter)
5
+ ==============================
6
+
7
+ .. currentmodule:: pmrf
8
+
9
+ .. autoclass:: Parameter
10
+ :members:
11
+ :show-inheritance:
12
+ :inherited-members:
@@ -0,0 +1,9 @@
1
+
2
+
3
+
4
+ get_anomaly_mask
5
+ ================
6
+
7
+ .. currentmodule:: pmrf.algorithms
8
+
9
+ .. autofunction:: get_anomaly_mask
@@ -0,0 +1,9 @@
1
+
2
+
3
+
4
+ has_converged
5
+ =============
6
+
7
+ .. currentmodule:: pmrf.algorithms
8
+
9
+ .. autofunction:: has_converged
@@ -0,0 +1,9 @@
1
+
2
+
3
+
4
+ has_converged_by_absolute_tolerance
5
+ ===================================
6
+
7
+ .. currentmodule:: pmrf.algorithms
8
+
9
+ .. autofunction:: has_converged_by_absolute_tolerance