pybhatlib 0.3.0__tar.gz → 0.3.1__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 (157) hide show
  1. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/.gitignore +5 -0
  2. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/PKG-INFO +1 -1
  3. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t00_quickstart.py +2 -0
  4. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t01a_vectorization.py +2 -0
  5. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t01b_ldlt.py +2 -0
  6. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t01c_truncated_mvn.py +2 -0
  7. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t02a_gradcovcor.py +2 -0
  8. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t02b_spherical.py +2 -0
  9. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t02c_chain_rules.py +2 -0
  10. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t03a_mvncd_methods.py +2 -0
  11. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t03b_mvncd_gradients.py +2 -0
  12. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t03c_mvncd_rect.py +2 -0
  13. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t03d_univariate_cdfs.py +2 -0
  14. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t03e_bhat2018_table1.py +368 -366
  15. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04a_mnp_iid.py +183 -181
  16. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04b_mnp_flexible_cov.py +194 -192
  17. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04c_mnp_heteronly.py +2 -0
  18. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04d_mnp_random_coefficients.py +232 -230
  19. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04e_mnp_mixture.py +209 -207
  20. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04f_mnp_control_options.py +2 -0
  21. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t04g_mnp_forecasting.py +2 -0
  22. pybhatlib-0.3.1/examples/tutorials/python_scripts/t04h_bhatlib_table1.py +447 -0
  23. pybhatlib-0.3.1/examples/tutorials/python_scripts/t04i_bhat2018_table2.py +609 -0
  24. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t05b_morp_ate_predict.py +2 -0
  25. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t06a_backend_switching.py +2 -0
  26. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t06b_custom_specs.py +2 -0
  27. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/python_scripts/t06c_gradient_verification.py +2 -0
  28. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t00_quickstart.ipynb +1 -1
  29. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t01a_vectorization.ipynb +1 -1
  30. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t01b_ldlt.ipynb +1 -1
  31. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t01c_truncated_mvn.ipynb +1 -1
  32. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t02a_gradcovcor.ipynb +1 -1
  33. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t02b_spherical.ipynb +1 -1
  34. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t02c_chain_rules.ipynb +1 -1
  35. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t03a_mvncd_methods.ipynb +1 -1
  36. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t03b_mvncd_gradients.ipynb +1 -1
  37. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t03c_mvncd_rect.ipynb +1 -1
  38. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t03d_univariate_cdfs.ipynb +1 -1
  39. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t03e_bhat2018_table1.ipynb +1 -1
  40. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04a_mnp_iid.ipynb +1 -1
  41. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04b_mnp_flexible_cov.ipynb +1 -1
  42. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04c_mnp_heteronly.ipynb +1 -1
  43. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04d_mnp_random_coefficients.ipynb +1 -1
  44. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04e_mnp_mixture.ipynb +1 -1
  45. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04f_mnp_control_options.ipynb +1 -1
  46. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t04g_mnp_forecasting.ipynb +1 -1
  47. pybhatlib-0.3.1/examples/tutorials/t04h_bhatlib_table1.ipynb +163 -0
  48. pybhatlib-0.3.1/examples/tutorials/t04i_bhat2018_table2.ipynb +163 -0
  49. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t05b_morp_ate_predict.ipynb +1 -1
  50. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t06a_backend_switching.ipynb +1 -1
  51. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t06b_custom_specs.ipynb +1 -1
  52. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/t06c_gradient_verification.ipynb +1 -1
  53. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/pyproject.toml +1 -1
  54. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_model.py +272 -37
  55. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_results.py +8 -5
  56. pybhatlib-0.3.0/CLAUDE.md +0 -42
  57. pybhatlib-0.3.0/GAUSS_INTEGRATION_PLAN.md +0 -235
  58. pybhatlib-0.3.0/IMPLEMENTATION_PLAN.md +0 -497
  59. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/LICENSE +0 -0
  60. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/README.md +0 -0
  61. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/data/TRAVELMODE.csv +0 -0
  62. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/data/TRAVELMODE_synthetic.csv +0 -0
  63. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/data/generate_travelmode.py +0 -0
  64. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_age45.py +0 -0
  65. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_ate_analysis.py +0 -0
  66. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_flexible_cov.py +0 -0
  67. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_iid.py +0 -0
  68. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_mixture.py +0 -0
  69. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/mnp_random_coefficients.py +0 -0
  70. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/morp_example.py +0 -0
  71. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/examples/tutorials/_convert_to_ipynb.py +0 -0
  72. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/__init__.py +0 -0
  73. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/_version.py +0 -0
  74. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/backend/__init__.py +0 -0
  75. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/backend/_array_api.py +0 -0
  76. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/backend/_numpy_backend.py +0 -0
  77. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/backend/_torch_backend.py +0 -0
  78. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/__init__.py +0 -0
  79. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_bivariate_trunc.py +0 -0
  80. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_cond_trunc_grads.py +0 -0
  81. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_mvncd.py +0 -0
  82. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_mvncd_grad.py +0 -0
  83. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_mvncd_grad_analytic.py +0 -0
  84. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_mvncd_ssj.py +0 -0
  85. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_ordering.py +0 -0
  86. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_other_dists.py +0 -0
  87. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_partial_cdf.py +0 -0
  88. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_trunc_grads.py +0 -0
  89. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_truncated.py +0 -0
  90. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/gradmvn/_univariate.py +0 -0
  91. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/io/__init__.py +0 -0
  92. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/io/_data_loader.py +0 -0
  93. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/io/_spec_parser.py +0 -0
  94. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/__init__.py +0 -0
  95. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_chain_rules.py +0 -0
  96. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_gomegxomegax.py +0 -0
  97. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_gradcovcor.py +0 -0
  98. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_mat_grad_helpers.py +0 -0
  99. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_radial.py +0 -0
  100. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/matgradient/_spherical.py +0 -0
  101. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/__init__.py +0 -0
  102. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/_base.py +0 -0
  103. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/__init__.py +0 -0
  104. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_ate.py +0 -0
  105. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_control.py +0 -0
  106. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_forecast.py +0 -0
  107. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_grad_analytic.py +0 -0
  108. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/mnp/_mnp_loglik.py +0 -0
  109. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/__init__.py +0 -0
  110. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_ate.py +0 -0
  111. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_control.py +0 -0
  112. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_forecast.py +0 -0
  113. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_loglik.py +0 -0
  114. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_model.py +0 -0
  115. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/models/morp/_morp_results.py +0 -0
  116. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/optim/__init__.py +0 -0
  117. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/optim/_convergence.py +0 -0
  118. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/optim/_scipy_optim.py +0 -0
  119. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/optim/_torch_optim.py +0 -0
  120. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/utils/__init__.py +0 -0
  121. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/utils/_qmc.py +0 -0
  122. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/utils/_seeds.py +0 -0
  123. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/utils/_validation.py +0 -0
  124. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/__init__.py +0 -0
  125. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/_ldlt.py +0 -0
  126. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/_mask.py +0 -0
  127. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/_nondiag.py +0 -0
  128. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/_truncnorm.py +0 -0
  129. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/src/pybhatlib/vecup/_vec_ops.py +0 -0
  130. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/__init__.py +0 -0
  131. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/conftest.py +0 -0
  132. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_backend/__init__.py +0 -0
  133. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_backend/test_array_api.py +0 -0
  134. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/__init__.py +0 -0
  135. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_bivariate_trunc.py +0 -0
  136. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_cond_trunc_grads.py +0 -0
  137. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_mvncd.py +0 -0
  138. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_mvncd_grad_analytic.py +0 -0
  139. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_mvncd_methods.py +0 -0
  140. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_mvncd_rect.py +0 -0
  141. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_ordering.py +0 -0
  142. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_other_dists.py +0 -0
  143. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_gradmvn/test_trunc_grads.py +0 -0
  144. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_integration/__init__.py +0 -0
  145. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_matgradient/__init__.py +0 -0
  146. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_matgradient/test_gradcovcor.py +0 -0
  147. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_matgradient/test_mat_grad_helpers.py +0 -0
  148. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_matgradient/test_radial.py +0 -0
  149. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_matgradient/test_spherical.py +0 -0
  150. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_models/__init__.py +0 -0
  151. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_models/test_mnp_control.py +0 -0
  152. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_models/test_mnp_grad.py +0 -0
  153. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_models/test_morp.py +0 -0
  154. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_vecup/__init__.py +0 -0
  155. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_vecup/test_ldlt.py +0 -0
  156. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_vecup/test_ldlt_rank2.py +0 -0
  157. {pybhatlib-0.3.0 → pybhatlib-0.3.1}/tests/test_vecup/test_vec_ops.py +0 -0
@@ -33,6 +33,11 @@ results/
33
33
  # Original GAUSS source
34
34
  chandra_code/
35
35
 
36
+ # Project-local docs (not for repo)
37
+ CLAUDE.md
38
+ GAUSS_INTEGRATION_PLAN.md
39
+ IMPLEMENTATION_PLAN.md
40
+
36
41
  # OS
37
42
  .DS_Store
38
43
  Thumbs.db
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: pybhatlib
3
- Version: 0.3.0
3
+ Version: 0.3.1
4
4
  Summary: Python implementation of BHATLIB: matrix-based inference for advanced econometric models
5
5
  Project-URL: Homepage, https://github.com/UMN-Choi-Lab/pybhatlib
6
6
  Project-URL: Repository, https://github.com/UMN-Choi-Lab/pybhatlib
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - How to interpret the output
12
12
 
13
13
  Prerequisites: None (this is the first tutorial).
14
+
15
+ Expected runtime: ~1 min
14
16
  """
15
17
  import os, sys
16
18
  import numpy as np
@@ -13,6 +13,8 @@ What you will learn:
13
13
  - nondiag: extract all non-diagonal elements
14
14
 
15
15
  Prerequisites: None.
16
+
17
+ Expected runtime: <5 sec
16
18
  """
17
19
  import os, sys
18
20
  import numpy as np
@@ -10,6 +10,8 @@ What you will learn:
10
10
  - Why this matters for MVNCD sequential conditioning
11
11
 
12
12
  Prerequisites: t01a (vectorization basics).
13
+
14
+ Expected runtime: <5 sec
13
15
  """
14
16
  import os, sys
15
17
  import numpy as np
@@ -10,6 +10,8 @@ What you will learn:
10
10
  - Different truncation scenarios and their effects
11
11
 
12
12
  Prerequisites: t01a (vectorization), t01b (LDLT).
13
+
14
+ Expected runtime: <5 sec
13
15
  """
14
16
  import os, sys
15
17
  import numpy as np
@@ -15,6 +15,8 @@ What you will learn:
15
15
  - Why this decomposition matters for unconstrained optimization
16
16
 
17
17
  Prerequisites: t01a (vectorization).
18
+
19
+ Expected runtime: <5 sec
18
20
  """
19
21
  import os, sys
20
22
  import numpy as np
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - Why this is better than direct correlation parameterization
12
12
 
13
13
  Prerequisites: t02a (gradcovcor).
14
+
15
+ Expected runtime: <5 sec
14
16
  """
15
17
  import os, sys
16
18
  import numpy as np
@@ -12,6 +12,8 @@ What you will learn:
12
12
  - Numerical verification of every link
13
13
 
14
14
  Prerequisites: t02a (gradcovcor), t02b (spherical).
15
+
16
+ Expected runtime: <5 sec
15
17
  """
16
18
  import os, sys
17
19
  import numpy as np
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - Recommended method for different problem sizes
12
12
 
13
13
  Prerequisites: t03d (univariate CDFs) recommended.
14
+
15
+ Expected runtime: ~15 sec
14
16
  """
15
17
  import os, sys, time
16
18
  import numpy as np
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - Numerical verification via finite differences
12
12
 
13
13
  Prerequisites: t03a (MVNCD methods).
14
+
15
+ Expected runtime: <5 sec
14
16
  """
15
17
  import os, sys
16
18
  import numpy as np
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - Connection to ordered probit threshold bounds
12
12
 
13
13
  Prerequisites: t03a (MVNCD methods).
14
+
15
+ Expected runtime: <5 sec
14
16
  """
15
17
  import os, sys
16
18
  import numpy as np
@@ -11,6 +11,8 @@ What you will learn:
11
11
  - How these building blocks compose into MVNCD methods
12
12
 
13
13
  Prerequisites: None (standalone reference).
14
+
15
+ Expected runtime: <5 sec
14
16
  """
15
17
  import os, sys
16
18
  import numpy as np