diff --git a/Parameter_studies_and_optimization/python-optimize/.gitattributes b/Parameter_studies_and_optimization/Downloads/ParamBikeFinal/Download/.gitattributes similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/.gitattributes rename to Parameter_studies_and_optimization/Downloads/ParamBikeFinal/Download/.gitattributes diff --git a/Parameter_studies_and_optimization/Downloads/Python-Optimization.zip b/Parameter_studies_and_optimization/Downloads/Python-Optimization.zip new file mode 100644 index 00000000..97ca2e6a Binary files /dev/null and b/Parameter_studies_and_optimization/Downloads/Python-Optimization.zip differ diff --git a/Parameter_studies_and_optimization/Downloads/python-optimize.zip b/Parameter_studies_and_optimization/Downloads/python-optimize.zip deleted file mode 100644 index d30aa005..00000000 Binary files a/Parameter_studies_and_optimization/Downloads/python-optimize.zip and /dev/null differ diff --git a/Parameter_studies_and_optimization/index.md b/Parameter_studies_and_optimization/index.md index 2b54357d..1c1b1a2c 100644 --- a/Parameter_studies_and_optimization/index.md +++ b/Parameter_studies_and_optimization/index.md @@ -18,5 +18,5 @@ to obtain a desired model behavior. Introduction lesson1 lesson2 -lesson3 +lesson3/lesson3 ``` diff --git a/Parameter_studies_and_optimization/lesson1.md b/Parameter_studies_and_optimization/lesson1.md index e868cd81..fb17e841 100644 --- a/Parameter_studies_and_optimization/lesson1.md +++ b/Parameter_studies_and_optimization/lesson1.md @@ -359,6 +359,8 @@ is that this bicycle model has a predefined ankle angle variation whereas a real human can compensate for a higher seat by letting the ankle operate in a more plantar-flexed position. +### Calculating the metabolism of the muscles with integrals + Before we finish this section, let us take a look at a particularly important feature of AnyScript mathematics: The ability to compute integral properties. AnyBody has a simple way of approximating the diff --git a/Parameter_studies_and_optimization/lesson2.md b/Parameter_studies_and_optimization/lesson2.md index 03f84ba5..41e56106 100644 --- a/Parameter_studies_and_optimization/lesson2.md +++ b/Parameter_studies_and_optimization/lesson2.md @@ -399,6 +399,6 @@ picture below: This completes the introduction to optimization studies. -In {doc}`lesson 3 ` we will look at how to use external (3rd. party) optimizers with +In {doc}`lesson 3 ` we will look at how to use external (3rd. party) optimizers with AnyBody. In particular we will show how to use the Python programming language to run the same optimizations as we have done in this Tutorial. \ No newline at end of file diff --git a/Parameter_studies_and_optimization/lesson3.md b/Parameter_studies_and_optimization/lesson3.md deleted file mode 100644 index f9dbdd40..00000000 --- a/Parameter_studies_and_optimization/lesson3.md +++ /dev/null @@ -1,274 +0,0 @@ -::: {rst-class} break -::: - -# Optimization Studies in Python - -The optimization study introduced in the preceding lesson used AnyBody's builtin -facilities for optimizing. Sometimes that is not enough, either because the -objective functions depends on data that is not easily included in AnyBody, or -because a different solver is needed. - -In this tutorial we use an external optimizer together with AnyBody. The example -is based on the model from the {doc}`previous lesson ` but uses an -optimizer from the [Scipy](https://scipy.org/) python library. The same -could also have been achived with other optimization frameworks (like [NLopt](https://nlopt.readthedocs.io/en/latest/), or languages like [MatLab](https://www.mathworks.com/products/matlab.html)). - -## Requirements - -Before we begin you need to install the Python and some libraries. Using the `conda` package manager, makes this much easier. - -- [Download and install the conda-forge package manager](https://conda-forge.org/) - -We also need one additional Python library (AnyPyTools) which will make it -easier to work with AnyBody from Python. [AnyPyTools](https://anybody-research-group.github.io/anypytools-docs/) can be easily -installed from the command prompt. Open the Anaconda command prompt and type: - -```bat -conda install anypytools -``` - -## Example Python script - -First we show the full Python program used in this tutorial. -Secondly, we will go through and explain the different sections in the file. - -```{code-block} python -:linenos: true - - import math - import scipy - - from anypytools import AnyPyProcess - from anypytools.macro_commands import Load, OperationRun, Dump, SetValue - - - def run_model(saddle_height, saddle_pos, silent=False): - """Run the AnyBody model and return the metabolism results""" - macro = [ - Load("BikeModel2D.main.any"), - SetValue("Main.BikeParameters.SaddleHeight", saddle_height), - SetValue("Main.BikeParameters.SaddlePos", saddle_pos), - OperationRun("Main.Study.InverseDynamics"), - Dump("Main.Study.Output.Pmet_total"), - Dump("Main.Study.Output.Abscissa.t"), - ] - app = AnyPyProcess(silent=silent) - results = app.start_macro(macro) - return results[0] - - - def objfun(designvars): - """Calculate the objective function value""" - saddle_height = designvars[0] - saddle_pos = designvars[1] - result = run_model(saddle_height, saddle_pos, silent=True) - - if "ERROR" in result: - raise ValueError("Failed to run model") - - pmet = scipy.integrate.trapz(result["Pmet_total"], result["Abscissa.t"]) - - return float(pmet) - - - def seat_distance_constraint(designvars): - """Compute contraint value which must be larger than zero""" - return math.sqrt(designvars[0] ** 2 + designvars[1] ** 2) - 0.66 - - - constaints = {"type": "ineq", "fun": seat_distance_constraint} - bounds = [(0.61, 0.69), (-0.22, -0.05)] - initial_guess = (0.68, -0.15) - - solution = scipy.optimize.minimize( - objfun, initial_guess, constraints=constaints, bounds=bounds, method="SLSQP" - ) - - print(solution) -``` - -A copy of the file can be {download}`downloaded here. ` -For now you can place the `optimize.py` next to your main file `BikeModel2D.main.any`. -If you didn't complete the model from {doc}`lesson 2 `, you can download the -{download}`finshed model here `. - -## Importing the necessary libraries - -:::{role} python(code) -:language: python -::: - -The first part of the code is the {python}`import` statements. They include the -libraries which is used by the code: - -```{code-block} python -:linenos: true - - import math - import scipy - - from anypytools import AnyPyProcess - from anypytools.macro_commands import Load, OperationRun, Dump, SetValue -``` - -## Running a model from Python - -For the external optimizers to work, we need a way to run AnyBody models from -Python and record the results of the simulations, so we need to create a -function to do this. There are more information on how to do this in the -[documentaion for AnyPyTools](https://anybody-research-group.github.io/anypytools-docs/). So here we will -just show how the code looks and not discuss the details. - -```{code-block} python -:lineno-start: 8 - - def run_model(saddle_height, saddle_pos, silent=False): - """Run the AnyBody model and return the metabolism results""" - macro = [ - Load("BikeModel2D.main.any"), - SetValue("Main.BikeParameters.SaddleHeight", saddle_height), - SetValue("Main.BikeParameters.SaddlePos", saddle_pos), - OperationRun("Main.Study.InverseDynamics"), - Dump("Main.Study.Output.Pmet_total"), - Dump("Main.Study.Output.Abscissa.t"), - ] - app = AnyPyProcess(silent=silent) - results = app.start_macro(macro) - return results[0] - - result = run_model(0.66, -0.16) - print(result["Main.Study.Output.Pmet_total"]) -``` - -The function {python}`run_model()` takes {python}`saddle_height` and {python}`saddle_pos` as input -and return the `Pmet` metabolism output from AnyBody. - -If you use an interactive Python environment (like [IPython](https://ipython.org/)) you could try calling the function directly to to -test it and investigate the results: - -```ipython -In [4]: result = run_model(0.66, -0.16) -[****************100%******************] 1 of 1 completeTotal time: 0.8 seconds - -In [5]: print(result.keys()) -odict_keys(['Main.Study.Output.Pmet_total', 'Main.Study.Output.Abscissa.t']) - -In [6]: print(result["Main.Study.Output.Pmet_total"]) -[ 17.20903341 73.49291834 209.58490241 379.67002659 559.57715608 - 736.92126247 901.88875426 1045.75303378 1162.65470516 1248.32088806 - 1299.79539032 1315.38241529 1294.6947524 1238.68684947 1149.59584772 - 1030.78784505 886.60667952 722.43408728 547.1840971 368.64175002 - 198.07134668 53.41928909 25.84379129 30.60376508 23.17442367 - 24.30809055 139.3209062 292.35610808 469.73382854 649.02576552 - 821.74094457 977.02863522 1108.05435136 1209.79739513 1278.65973442 - 1312.31195028 1309.70451022 1271.1212895 1198.17227557 1093.68215448 - 961.51890402 806.51623776 634.74029158 458.00117565 280.40563034 - 121.30841553 21.54859903 28.97200722 26.82989147 17.2090334 ] -``` - -As we expected the output contains the `Main.Study.Output.Pmet_total` value for each timestep in our model. - -## Defining the objective function - -The next step is to define the objective function. The objective function should -take a list of design values as input and return the objective function value. -In {doc}`Lesson 2 ` the objective function was the time integral of the -metabolism variable. So we will do the same here with Scipy's -{func}`numpy.trapz`: function. - -```{code-block} python -:lineno-start: 23 - - def objfun(x): - saddle_height = x[0] - saddle_pos = x[1] - result = run_model(saddle_height, saddle_pos, silent=True) - - if "ERROR" in result: - raise ValueError("Failed to run model") - # Integrate Pmet_total - pmet = scipy.integrate.trapz(result["Pmet_total"], result["Abscissa.t"]) - - return float(pmet) -``` - -:::{note} -The function also checks the results for errors reported -by AnyBody and raises a {py:exc}`ValueError` exception if that happens. -There could be ways of handle error without failing but it is important to -handle model failures, otherwise they may go unnoticed or mess with the -optimization results. -::: - -Again, we can run this function interactively to test it: - -```ipython -In [9]: pmet = objfun([0.66, -0.16]) - -In [10]: print(pmet) -505.329399532772 -``` - -Now we get the time integral of the `Pmet_total` variable as a single value, -and we are now ready to define the optimization process. - -## Setting up the optimization study - -We wrap things up by creating a function, {ref}`similar to what we did in AnyBody `, -as well as defining the bounds and initial guess -for the design variables. - -```{code-block} python -:lineno-start: 37 - - def seat_distance_constraint(x): - """ Compute contraint value which must be larger than zero""" - return (math.sqrt(x[0] ** 2 + x[1] ** 2) - 0.66) - - - constaints = {"type": "ineq", "fun": seat_distance_constraint} - bounds = [(0.61, 0.69), (-0.22, -0.05)] - initial_guess = (0.68, -0.15) -``` - -The documentation {py:func}`scipy.optimize.minimize` has more information on how to define bounds, contraints, tolerances, etc. - -Finally, we call the `scipy.optimize.minimize` function run the optimizer. In this case we used the -[SLSQP](https://docs.scipy.org/doc/scipy/reference/optimize.minimize-slsqp.html#optimize-minimize-slsqp) algorithm. - -```{code-block} python -:lineno-start: 46 - - solution = scipy.optimize.minimize( - objfun, initial_guess, constraints=constaints, bounds=bounds, method="SLSQP" - ) -``` - -Let us try to do this interactively and look at the results. - -```ipython -In [11]: solution = scipy.optimize.minimize( - ...: objfun, initial_guess, constraints=constaints, bounds=bounds, method="SLSQP" - ...: ) - -In [12]: print(solution) - fun: 503.57634385063113 - jac: array([39.43954086, -6.95677948]) - message: 'Optimization terminated successfully.' - nfev: 56 - nit: 12 - njev: 12 - status: 0 - success: True - x: array([ 0.65010304, -0.11386853]) -``` - -And there we have it! -We can now take advantage of the many different algorithms and settings available for {py:func}`scipy.optimize.minimize`. -We could also use a different package or customize our own algorithm, constraints etc. - -The possibilities are practically endless. The full example from this tutorial can be -{download}`downloaded here `. - -For more information regarding the `AnyPyTools` python package follow [this link.](https://anybody-research-group.github.io/anypytools-docs/) -You can also check out this [webcast.](https://www.youtube.com/results?search_query=anybody+webcast+batch) diff --git a/Parameter_studies_and_optimization/python-optimize/BikeModel2D.main.any b/Parameter_studies_and_optimization/lesson3/BikeModel2D.main.any similarity index 96% rename from Parameter_studies_and_optimization/python-optimize/BikeModel2D.main.any rename to Parameter_studies_and_optimization/lesson3/BikeModel2D.main.any index ef06e967..2e010bad 100644 --- a/Parameter_studies_and_optimization/python-optimize/BikeModel2D.main.any +++ b/Parameter_studies_and_optimization/lesson3/BikeModel2D.main.any @@ -1,6 +1,4 @@ -#ifnpathexists "../libdef.any" -#include "/AMMR/libdef.any" -#endif +#include "libdef.any" /**2-D bicyle model. Although this model can be rotated in 3-D space it really is just a saggital @@ -105,7 +103,7 @@ Main = { }; AnyDesVar SaddlePos = { Val = Main.BikeParameters.SaddlePos; - Min = -0.22 /*-0.03*/; + Min = -0.20 /*-0.03*/; Max = -0.05; }; AnyDesMeasure MaxAct = { @@ -129,7 +127,7 @@ Main = { }; AnyDesVar SaddlePos = { Val = Main.BikeParameters.SaddlePos; - Min = -0.22 /*-0.03*/; + Min = -0.20 /*-0.03*/; Max = -0.05; }; AnyDesMeasure Metab = { diff --git a/Parameter_studies_and_optimization/python-optimize/Input/bikeframe.anysurf b/Parameter_studies_and_optimization/lesson3/Input/bikeframe.anysurf similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/bikeframe.anysurf rename to Parameter_studies_and_optimization/lesson3/Input/bikeframe.anysurf diff --git a/Parameter_studies_and_optimization/python-optimize/Input/bikeframe.anysurf3 b/Parameter_studies_and_optimization/lesson3/Input/bikeframe.anysurf3 similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/bikeframe.anysurf3 rename to Parameter_studies_and_optimization/lesson3/Input/bikeframe.anysurf3 diff --git a/Parameter_studies_and_optimization/python-optimize/Input/crank.anysurf b/Parameter_studies_and_optimization/lesson3/Input/crank.anysurf similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/crank.anysurf rename to Parameter_studies_and_optimization/lesson3/Input/crank.anysurf diff --git a/Parameter_studies_and_optimization/python-optimize/Input/crank.anysurf3 b/Parameter_studies_and_optimization/lesson3/Input/crank.anysurf3 similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/crank.anysurf3 rename to Parameter_studies_and_optimization/lesson3/Input/crank.anysurf3 diff --git a/Parameter_studies_and_optimization/python-optimize/Input/wheel.anysurf b/Parameter_studies_and_optimization/lesson3/Input/wheel.anysurf similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/wheel.anysurf rename to Parameter_studies_and_optimization/lesson3/Input/wheel.anysurf diff --git a/Parameter_studies_and_optimization/python-optimize/Input/wheel.anysurf3 b/Parameter_studies_and_optimization/lesson3/Input/wheel.anysurf3 similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Input/wheel.anysurf3 rename to Parameter_studies_and_optimization/lesson3/Input/wheel.anysurf3 diff --git a/Parameter_studies_and_optimization/python-optimize/Model/BikeFrameAndWheels.any b/Parameter_studies_and_optimization/lesson3/Model/BikeFrameAndWheels.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/BikeFrameAndWheels.any rename to Parameter_studies_and_optimization/lesson3/Model/BikeFrameAndWheels.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/BikeFrameGroundConnection.any b/Parameter_studies_and_optimization/lesson3/Model/BikeFrameGroundConnection.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/BikeFrameGroundConnection.any rename to Parameter_studies_and_optimization/lesson3/Model/BikeFrameGroundConnection.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/BikeLegConnection.any b/Parameter_studies_and_optimization/lesson3/Model/BikeLegConnection.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/BikeLegConnection.any rename to Parameter_studies_and_optimization/lesson3/Model/BikeLegConnection.any diff --git a/Parameter_studies_and_optimization/lesson3/Model/DrawSettings.any b/Parameter_studies_and_optimization/lesson3/Model/DrawSettings.any new file mode 100644 index 00000000..f67e693d --- /dev/null +++ b/Parameter_studies_and_optimization/lesson3/Model/DrawSettings.any @@ -0,0 +1,151 @@ +// Include the default DrawSettings values so they can be customized below. +#include "/DrawSettings/DrawSettingsDefault.any" + + +DrawSettings ={ + + + //This is the color definitions of the nodes and segments +Colors = { + AnyBodyRed = {149/256,51/256,55/256}; //AnyBody standard red + AnyBodyGreen = {47/256,131/256,80/256}; //AnyBody standard green + AnyBodyBlue = {82/256,85/256,111/256}; //AnyBody standard blue + AnyBodyYellow= {235/256,197/256,17/256}; //AnyBody standard yellow + AnyBodyPaleYellow = {248/256,204/256,115/256}; //AnyBody standard pale yellow + AnyBodyGrey = {153/256,153/256,153/256}; //AnyBody standard grey + + Nodes = AnyBodyPaleYellow; + Segments = AnyBodyPaleYellow; +}; + + Muscle ={ + RGB = .Colors.AnyBodyRed; + DrawScaleOnOff =Off; + Bulging =0.0; + ColorScale =1.0; + RGBColorScale = {0.957031, 0.785156, 0.785156}; + MaxStress = 2500000.000000; //N/m^2 //This number is for graphics only! + Opacity =1.0; + DrawScale = + { + EnableCreasing = Off; + CreasingAngle = 0.524; + EnableWireframe = Off; + EnableSmoothing = On; + Param = 0.0; + ParamArray = {0.0, 0.167, 0.333, 0.5, 0.667, 0.833, 1.0}; + RGBArray = {{0.0, 0.0, 0.6}, {0.0, 0.0, 1.0}, {0.0, 1.0, 1.0}, {0.0, 1.0, 0.0}, {1.0, 1.0, 0.0}, {1.0, 0.0, 0.0}, {0.6, 0.0, 0.0}}; + OpacityArray = {1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0}; + }; + }; + + + BonesOpacity ={ + + GlobalCoef = 1; + + Skull = 1*GlobalCoef; + Thorax = 1*GlobalCoef; + Pelvis = 1*GlobalCoef; + Sacrum = 1*GlobalCoef; + L5 = 1*GlobalCoef; + L4 = 1*GlobalCoef; + L3 = 1*GlobalCoef; + L2 = 1*GlobalCoef; + L1 = 1*GlobalCoef; + + RightFoot = 1*GlobalCoef; + RightShank = 1*GlobalCoef; + RightThigh = 1*GlobalCoef; + + LeftFoot = 1*GlobalCoef; + LeftShank = 1*GlobalCoef; + LeftThigh = 1*GlobalCoef; + + + RightClavicula = 1*GlobalCoef; + RightScapula = 1*GlobalCoef; + RightHumerus = 1*GlobalCoef; + RightUlna = 1*GlobalCoef; + RightRadius = 1*GlobalCoef; + RightHand = 1*GlobalCoef; + + LeftClavicula = 1*GlobalCoef; + LeftScapula = 1*GlobalCoef; + LeftHumerus = 1*GlobalCoef; + LeftUlna = 1*GlobalCoef; + LeftRadius = 1*GlobalCoef; + LeftHand = 1*GlobalCoef; + + + // For leg TD only. + RightTalus = 1*GlobalCoef; + RightPatella = 1*GlobalCoef; + + LeftTalus = 1*GlobalCoef; + LeftPatella = 1*GlobalCoef; + + + // For detailed cervical model only. + C1 = 1*GlobalCoef; + C2 = 1*GlobalCoef; + C3 = 1*GlobalCoef; + C4 = 1*GlobalCoef; + C5 = 1*GlobalCoef; + C6 = 1*GlobalCoef; + C7 = 1*GlobalCoef; + }; + + + + SegmentAxes ={ + RGB ={0,0,1}; + ScaleXYZ ={0.0001,0.00001,0.00001}; + }; + BML ={ + ScaleXYZ ={0.0006,0.0006,0.0006}; + RGB = .Colors.AnyBodyBlue; + }; + JointAxesProximal = { + RGB = .Colors.AnyBodyRed; + ScaleXYZ = {0.015,0.015,0.015}; + }; + JointAxesDistal = { + RGB = .Colors.AnyBodyGreen; + ScaleXYZ = {0.01,0.01,0.01}; + }; + + + SegmentNodes ={ + ScaleXYZ ={0.0005,0.0005,0.0005}; + RGB = .Colors.AnyBodyRed; + }; + WrapGeometry ={ + RGB ={1,1,1}; + }; + + DrawSettingsSupport={ + Lin={ + ScaleFactor=0.004; + RGB = {0,0,1}; + Thickness = 0.004; + HeadThickness = 2*Thickness; + HeadLength = 3*Thickness; + }; + Rot={ + ScaleFactor=0.08; + RGB = {1,0,0}; + Thickness = 0.075; + HeadThickness = 2*Thickness; + HeadLength = 5*Thickness; + }; + }; + + + Marker={ + Color={0,0,1}; + Radius=0.00; + + }; + +}; //DrawSettings \ No newline at end of file diff --git a/Parameter_studies_and_optimization/python-optimize/Model/InitialPositions.any b/Parameter_studies_and_optimization/lesson3/Model/InitialPositions.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/InitialPositions.any rename to Parameter_studies_and_optimization/lesson3/Model/InitialPositions.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/JointsAndDrivers.any b/Parameter_studies_and_optimization/lesson3/Model/JointsAndDrivers.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/JointsAndDrivers.any rename to Parameter_studies_and_optimization/lesson3/Model/JointsAndDrivers.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/Leg2D.any b/Parameter_studies_and_optimization/lesson3/Model/Leg2D.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/Leg2D.any rename to Parameter_studies_and_optimization/lesson3/Model/Leg2D.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/RunAppSequence.any b/Parameter_studies_and_optimization/lesson3/Model/RunAppSequence.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/RunAppSequence.any rename to Parameter_studies_and_optimization/lesson3/Model/RunAppSequence.any diff --git a/Parameter_studies_and_optimization/python-optimize/Model/Scaling.any b/Parameter_studies_and_optimization/lesson3/Model/Scaling.any similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Model/Scaling.any rename to Parameter_studies_and_optimization/lesson3/Model/Scaling.any diff --git a/Parameter_studies_and_optimization/python-optimize/Output/.gitkeep b/Parameter_studies_and_optimization/lesson3/Output/.gitkeep similarity index 100% rename from Parameter_studies_and_optimization/python-optimize/Output/.gitkeep rename to Parameter_studies_and_optimization/lesson3/Output/.gitkeep diff --git a/Parameter_studies_and_optimization/lesson3/lesson3.ipynb b/Parameter_studies_and_optimization/lesson3/lesson3.ipynb new file mode 100644 index 00000000..bb86edde --- /dev/null +++ b/Parameter_studies_and_optimization/lesson3/lesson3.ipynb @@ -0,0 +1,408 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Optimization Studies in Python\n", + "\n", + "The optimization study introduced in the preceding lesson used AnyBody's builtin\n", + "facilities for optimizing. Sometimes that is not enough, either because the\n", + "objective functions depends on data that is not easily included in AnyBody, or\n", + "because a different solver is needed.\n", + "\n", + "In this tutorial we use an external optimizer together with AnyBody. The example\n", + "is based on the model from the {doc}`previous lesson <../lesson2>` but uses an\n", + "optimizer from the [Scipy](https://scipy.org/) python library. The same\n", + "could also have been achived with other optimization frameworks (like [NLopt](https://nlopt.readthedocs.io/en/latest/), or languages like [MatLab](https://www.mathworks.com/products/matlab.html)). The example is written and run in [Jupyter Lab](https://jupyter.org/), but the Python script can also be run from other environments.\n", + "\n", + "\n", + "## Example Python Script\n", + "\n", + "First we show the full Python script used in this tutorial.\n", + "Afterwards, we will go through it and explain the different sections in the file. \n", + "The first part below is the Python script, followed by the corresponding results from Jupyter Lab.\n", + "\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " message: Optimization terminated successfully\n", + " success: True\n", + " status: 0\n", + " fun: 503.5763438548318\n", + " x: [ 6.501e-01 -1.139e-01]\n", + " nit: 12\n", + " jac: [ 3.944e+01 -6.962e+00]\n", + " nfev: 45\n", + " njev: 12\n" + ] + } + ], + "source": [ + "import math\n", + "\n", + "import scipy\n", + "from anypytools import AnyPyProcess\n", + "from anypytools.macro_commands import Load, OperationRun, Dump, SetValue\n", + "\n", + "\n", + "def run_model(saddle_height, saddle_pos, silent=False):\n", + " \"\"\" Run the AnyBody model and return the metabolism results \"\"\"\n", + " \n", + " macro = [\n", + " Load(\"BikeModel2D.main.any\"),\n", + " SetValue(\"Main.BikeParameters.SaddleHeight\", saddle_height),\n", + " SetValue(\"Main.BikeParameters.SaddlePos\", saddle_pos),\n", + " OperationRun(\"Main.Study.InverseDynamics\"),\n", + " Dump(\"Main.Study.Output.Pmet_total\"),\n", + " Dump(\"Main.Study.Output.Abscissa.t\"),\n", + " ]\n", + " app = AnyPyProcess(silent=silent)\n", + " results = app.start_macro(macro)\n", + " return results[0]\n", + "\n", + "\n", + "def objfun(x):\n", + " \"\"\" Calculate the objective function value \"\"\"\n", + " \n", + " saddle_height = x[0]\n", + " saddle_pos = x[1]\n", + " result = run_model(saddle_height, saddle_pos, silent=True)\n", + "\n", + " if \"ERROR\" in result:\n", + " raise ValueError(\"Failed to run model\")\n", + " \n", + " # Integrate Pmet_total\n", + " pmet = scipy.integrate.trapezoid(result[\"Pmet_total\"], result[\"Abscissa.t\"])\n", + "\n", + " return float(pmet)\n", + "\n", + "\n", + "def seat_distance_constraint(designvars):\n", + " \"\"\" Compute contraint value which must be larger than zero \"\"\"\n", + " \n", + " return math.sqrt(designvars[0] ** 2 + designvars[1] ** 2) - 0.66\n", + "\n", + "\n", + "CONSTRAINT = {\"type\": \"ineq\", \"fun\": seat_distance_constraint}\n", + "BOUNDS = [(0.61, 0.69), (-0.20, -0.05)]\n", + "INITIAL_GUESS = (0.68, -0.15)\n", + "\n", + "solution = scipy.optimize.minimize(\n", + " objfun, INITIAL_GUESS, constraints=CONSTRAINT, bounds=BOUNDS, method=\"SLSQP\"\n", + ")\n", + "\n", + "print(solution)\n" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "### Getting Started: Development Environment Setup\n", + "\n", + "You can download the code for this tutorial as an interactive Python (Jupyter) notebook. \n", + "Download and extract {download}`this zip-file <../Downloads/Python-Optimization.zip>`. \n", + "\n", + "Running the notebook requires a Python environment with the necessary libraries installed (`jupyter`, `anypytools`, `scipy`).\n", + "\n", + "See the following section for easy instructions on how to easily install these libraries.\n", + "\n", + "\n", + "````{admonition} Installing Python, Jupyter, and AnyPyTools\n", + ":class: tip dropdown\n", + "\n", + "The absolute easiest way to get the notebook running is with the [Pixi](https://pixi.sh/) package manager.\n", + "\n", + "Simply run the following command in a powershell terminal to install Pixi (or see [here for altinative installation methods](https://pixi.sh/latest/#__tabbed_1_2)):\n", + "\n", + "```powershell\n", + "iwr -useb https://pixi.sh/install.ps1 | iex\n", + "```\n", + "\n", + "Then open a command prompt in the folder you extracted from the zip file above.\n", + "Then run the following command to start the notebook:\n", + "\n", + "```bat \n", + "C:\\path-to-folder> pixi run jupyter lab lesson3.ipynb\n", + "```\n", + "\n", + "pixi will automatically download and install Python along with all the necessary libararies in virtual environment. Then it will start Jupyter Lab in your web browser.\n", + "\n", + "````\n", + "\n", + "\n", + "## Importing the Necessary Libraries\n", + "\n", + ":::{role} python(code)\n", + ":language: python\n", + ":::\n", + "\n", + "The first part of the code is the {python}`import` statements. They include the\n", + "libraries which is used by the code:" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [ + "import math\n", + "import scipy\n", + "\n", + "from anypytools import AnyPyProcess\n", + "from anypytools.macro_commands import Load, OperationRun, Dump, SetValue" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Running a Model From Python\n", + "\n", + "For the external optimizers to work, we need a way to run AnyBody models from\n", + "Python and record the results of the simulations. We will create a\n", + "function called {python}`run_model()` to do this. There are more information on how to do this in the\n", + "[documentaion for AnyPyTools](https://anybody-research-group.github.io/anypytools-docs/). So here we will\n", + "just show how the code for this function looks and not discuss its details. \n", + "Executing the code cell in Jupyter Lab should give the following output:" + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": {}, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "0f7db486a3f04b19975ffee4b47bfd20", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + " 0%| | 0/1 [00:00` the objective function was the time integral of the\n", + "metabolism variable. So we will define it similarly here using Scipy's\n", + "{func}`numpy.trapz` function." + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "505.3293995327723\n" + ] + } + ], + "source": [ + "def objfun(x):\n", + " #Calculate the objective function value\n", + " saddle_height = x[0]\n", + " saddle_pos = x[1]\n", + " result = run_model(saddle_height, saddle_pos, silent=True)\n", + "\n", + " if \"ERROR\" in result:\n", + " raise ValueError(\"Failed to run model\")\n", + " \n", + " # Integrate Pmet_total\n", + " pmet = scipy.integrate.trapezoid(result[\"Pmet_total\"], result[\"Abscissa.t\"])\n", + "\n", + " return float(pmet)\n", + "\n", + "\n", + "result_pmet = objfun([0.66, -0.16])\n", + "print(result_pmet)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + ":::{note}\n", + "The function also checks the results for errors reported\n", + "by AnyBody and raises a {py:exc}`ValueError` exception if that happens.\n", + "There could be ways to handle errors without failing but it is important to\n", + "handle model failures, otherwise they may go unnoticed or mess with the\n", + "optimization results.\n", + ":::\n", + "\n", + "Executing the code cell returns the time integral of the `Pmet_total` variable as a single value,\n", + "and we are now ready to define the optimization process. The interpretation of this number is the total metabolism of the muscles over the entire simulation time for the given values of {python}`saddle_height` and {python}`saddle_pos`.\n", + "\n", + "## Setting Up the Optimization Study\n", + "\n", + "We wrap things up by creating a function, {ref}`similar to what we did in AnyBody `,\n", + "as well as defining the constraints, bounds and initial guess\n", + "for the design variables." + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "metadata": {}, + "outputs": [], + "source": [ + "def seat_distance_constraint(x):\n", + " #Compute contraint value which must be larger than zero\n", + " return (math.sqrt(x[0] ** 2 + x[1] ** 2) - 0.66)\n", + "\n", + "\n", + "constraints = {\"type\": \"ineq\", \"fun\": seat_distance_constraint}\n", + "bounds = [(0.61, 0.69), (-0.20, -0.05)]\n", + "initial_guess = (0.68, -0.15)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Finally, we call the `scipy.optimize.minimize` function and run the optimizer. This function minimizes the objective function while respecting the constraints and bounds. In this case we used the\n", + "[SLSQP](https://docs.scipy.org/doc/scipy/reference/optimize.minimize-slsqp.html#optimize-minimize-slsqp) algorithm.\n", + "\n", + ":::{note}\n", + ":class: margin\n", + "The documentation {py:func}`scipy.optimize.minimize` has more information on bounds, contraints, tolerances, methods etc.\n", + ":::" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + " message: Optimization terminated successfully\n", + " success: True\n", + " status: 0\n", + " fun: 503.5763438548318\n", + " x: [ 6.501e-01 -1.139e-01]\n", + " nit: 12\n", + " jac: [ 3.944e+01 -6.962e+00]\n", + " nfev: 45\n", + " njev: 12\n" + ] + } + ], + "source": [ + "solution = scipy.optimize.minimize(\n", + " objfun, initial_guess, constraints=constraints, bounds=bounds, method=\"SLSQP\"\n", + ")\n", + "\n", + "print(solution)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Executing the code cell should give the above output, indicating that the optimization study was successfully completed. The optimal values for the design variables are determined to be `saddle_height = 0.6501` and `saddle_pos = -0.1139` resulting in a value of `503.58` for the objective function.\n", + "\n", + "And there we have it! You have now used the optimizer from the Scipy Python library to optimize the AnyBody model.\n", + "You can now take advantage of the many different algorithms and settings available for {py:func}`scipy.optimize.minimize`.\n", + "It is also possible to use a different package or customize our own algorithm, constraints etc.\n", + "\n", + "The possibilities are practically endless. \n", + "\n", + "For more information regarding the `AnyPyTools` python package follow [this link.](https://anybody-research-group.github.io/anypytools-docs/)\n", + "or check out this [webcast.](https://www.youtube.com/results?search_query=anybody+webcast+batch)\n" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "default", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/Parameter_studies_and_optimization/lesson3/libdef.any b/Parameter_studies_and_optimization/lesson3/libdef.any new file mode 100644 index 00000000..26348d05 --- /dev/null +++ b/Parameter_studies_and_optimization/lesson3/libdef.any @@ -0,0 +1 @@ +#include "../../../libdef.any" diff --git a/Parameter_studies_and_optimization/python-optimize/.gitignore b/Parameter_studies_and_optimization/python-optimize/.gitignore deleted file mode 100644 index 096b5eb5..00000000 --- a/Parameter_studies_and_optimization/python-optimize/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -# pixi environments -.pixi -*.egg-info diff --git a/Parameter_studies_and_optimization/python-optimize/Model/DrawSettings.any b/Parameter_studies_and_optimization/python-optimize/Model/DrawSettings.any deleted file mode 100644 index 402e557c..00000000 --- a/Parameter_studies_and_optimization/python-optimize/Model/DrawSettings.any +++ /dev/null @@ -1,148 +0,0 @@ - -AnyFolder DrawSettings ={ - - - //This is the color definitions of the nodes and segments -AnyFolder Colors = { - AnyVec3 AnyBodyRed = {149/256,51/256,55/256}; //AnyBody standard red - AnyVec3 AnyBodyGreen = {47/256,131/256,80/256}; //AnyBody standard green - AnyVec3 AnyBodyBlue = {82/256,85/256,111/256}; //AnyBody standard blue - AnyVec3 AnyBodyYellow= {235/256,197/256,17/256}; //AnyBody standard yellow - AnyVec3 AnyBodyPaleYellow = {248/256,204/256,115/256}; //AnyBody standard pale yellow -AnyVec3 AnyBodyGrey = {153/256,153/256,153/256}; //AnyBody standard grey - - AnyVec3 Nodes = AnyBodyPaleYellow; - AnyVec3 Segments = AnyBodyPaleYellow; -}; - - AnyFolder Muscle ={ - AnyVec3 RGB = .Colors.AnyBodyRed; - AnySwitch DrawScaleOnOff =Off; - AnyVar Bulging =0.0; - AnyVar ColorScale =1.0; - AnyVec3 RGBColorScale = {0.957031, 0.785156, 0.785156}; - AnyVar MaxStress = 2500000.000000; //N/m^2 //This number is for graphics only! - AnyVar Opacity =1.0; - AnyFolder DrawScale = - { - AnySwitchVar EnableCreasing = Off; - AnyVar CreasingAngle = 0.524; - AnySwitchVar EnableWireframe = Off; - AnySwitchVar EnableSmoothing = On; - AnyVar Param = 0.0; - AnyVector ParamArray = {0.0, 0.167, 0.333, 0.5, 0.667, 0.833, 1.0}; - AnyFloat RGBArray = {{0.0, 0.0, 0.6}, {0.0, 0.0, 1.0}, {0.0, 1.0, 1.0}, {0.0, 1.0, 0.0}, {1.0, 1.0, 0.0}, {1.0, 0.0, 0.0}, {0.6, 0.0, 0.0}}; - AnyVector OpacityArray = {1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0}; - }; - }; - - - AnyFolder BonesOpacity ={ - - AnyVar GlobalCoef = 1; - - AnyVar Skull = 1*GlobalCoef; - AnyVar Thorax = 1*GlobalCoef; - AnyVar Pelvis = 1*GlobalCoef; - AnyVar Sacrum = 1*GlobalCoef; - AnyVar L5 = 1*GlobalCoef; - AnyVar L4 = 1*GlobalCoef; - AnyVar L3 = 1*GlobalCoef; - AnyVar L2 = 1*GlobalCoef; - AnyVar L1 = 1*GlobalCoef; - - AnyVar RightFoot = 1*GlobalCoef; - AnyVar RightShank = 1*GlobalCoef; - AnyVar RightThigh = 1*GlobalCoef; - - AnyVar LeftFoot = 1*GlobalCoef; - AnyVar LeftShank = 1*GlobalCoef; - AnyVar LeftThigh = 1*GlobalCoef; - - - AnyVar RightClavicula = 1*GlobalCoef; - AnyVar RightScapula = 1*GlobalCoef; - AnyVar RightHumerus = 1*GlobalCoef; - AnyVar RightUlna = 1*GlobalCoef; - AnyVar RightRadius = 1*GlobalCoef; - AnyVar RightHand = 1*GlobalCoef; - - AnyVar LeftClavicula = 1*GlobalCoef; - AnyVar LeftScapula = 1*GlobalCoef; - AnyVar LeftHumerus = 1*GlobalCoef; - AnyVar LeftUlna = 1*GlobalCoef; - AnyVar LeftRadius = 1*GlobalCoef; - AnyVar LeftHand = 1*GlobalCoef; - - - // For leg TD only. - AnyVar RightTalus = 1*GlobalCoef; - AnyVar RightPatella = 1*GlobalCoef; - - AnyVar LeftTalus = 1*GlobalCoef; - AnyVar LeftPatella = 1*GlobalCoef; - - - // For detailed cervical model only. - AnyVar C1 = 1*GlobalCoef; - AnyVar C2 = 1*GlobalCoef; - AnyVar C3 = 1*GlobalCoef; - AnyVar C4 = 1*GlobalCoef; - AnyVar C5 = 1*GlobalCoef; - AnyVar C6 = 1*GlobalCoef; - AnyVar C7 = 1*GlobalCoef; - }; - - - - AnyFolder SegmentAxes ={ - AnyVec3 RGB ={0,0,1}; - AnyVec3 ScaleXYZ ={0.0001,0.00001,0.00001}; - }; - AnyFolder BML ={ - AnyVec3 ScaleXYZ ={0.0006,0.0006,0.0006}; - AnyVec3 RGB = .Colors.AnyBodyBlue; - }; - AnyFolder JointAxesProximal = { - AnyVec3 RGB = .Colors.AnyBodyRed; - AnyVec3 ScaleXYZ = {0.015,0.015,0.015}; - }; - AnyFolder JointAxesDistal = { - AnyVec3 RGB = .Colors.AnyBodyGreen; - AnyVec3 ScaleXYZ = {0.01,0.01,0.01}; - }; - - - AnyFolder SegmentNodes ={ - AnyVec3 ScaleXYZ ={0.0005,0.0005,0.0005}; - AnyVec3 RGB = .Colors.AnyBodyRed; - }; - AnyFolder WrapGeometry ={ - AnyVec3 RGB ={1,1,1}; - }; - - AnyFolder DrawSettingsSupport={ - AnyFolder Lin={ - AnyVar ScaleFactor=0.004; - AnyVec3 RGB = {0,0,1}; - AnyVar Thickness = 0.004; - AnyVar HeadThickness = 2*Thickness; - AnyVar HeadLength = 3*Thickness; - }; - AnyFolder Rot={ - AnyVar ScaleFactor=0.08; - AnyVec3 RGB = {1,0,0}; - AnyVar Thickness = 0.075; - AnyVar HeadThickness = 2*Thickness; - AnyVar HeadLength = 5*Thickness; - }; - }; - - - AnyFolder Marker={ -AnyVec3 Color={0,0,1}; -AnyVar Radius=0.00; - - }; - -}; //DrawSettings \ No newline at end of file diff --git a/Parameter_studies_and_optimization/python-optimize/optimize.py b/Parameter_studies_and_optimization/python-optimize/optimize.py deleted file mode 100644 index fe98c52e..00000000 --- a/Parameter_studies_and_optimization/python-optimize/optimize.py +++ /dev/null @@ -1,55 +0,0 @@ -import math -import os - -import scipy - -from anypytools import AnyPyProcess -from anypytools.macro_commands import Load, OperationRun, Dump, SetValue - - -os.chdir(os.path.dirname(__file__)) - - -def run_model(saddle_height, saddle_pos, silent=False): - """Run the AnyBody model and return the metabolism results""" - macro = [ - Load("BikeModel2D.main.any"), - SetValue("Main.BikeParameters.SaddleHeight", saddle_height), - SetValue("Main.BikeParameters.SaddlePos", saddle_pos), - OperationRun("Main.Study.InverseDynamics"), - Dump("Main.Study.Output.Pmet_total"), - Dump("Main.Study.Output.Abscissa.t"), - ] - app = AnyPyProcess(silent=silent) - results = app.start_macro(macro) - return results[0] - - -def objfun(designvars): - """Calculate the objective function value""" - saddle_height = designvars[0] - saddle_pos = designvars[1] - result = run_model(saddle_height, saddle_pos, silent=True) - - if "ERROR" in result: - raise ValueError("Failed to run model") - - pmet = scipy.integrate.trapz(result["Pmet_total"], result["Abscissa.t"]) - - return float(pmet) - - -def seat_distance_constraint(designvars): - """Compute contraint value which must be larger than zero""" - return math.sqrt(designvars[0] ** 2 + designvars[1] ** 2) - 0.66 - - -constraints = {"type": "ineq", "fun": seat_distance_constraint} -bounds = [(0.61, 0.69), (-0.22, -0.05)] -initial_guess = (0.68, -0.15) - -solution = scipy.optimize.minimize( - objfun, initial_guess, constraints=constraints, bounds=bounds, method="SLSQP" -) - -print(solution) diff --git a/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(44nooik4).txt b/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(44nooik4).txt deleted file mode 100644 index ba8bc77d..00000000 --- a/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(44nooik4).txt +++ /dev/null @@ -1,33 +0,0 @@ -########### MACRO ############# -load "BikeModel2D.main.any" -classoperation Main.BikeParameters.SaddleHeight "Set Value" --value="0.68" -classoperation Main.BikeParameters.SaddlePos "Set Value" --value="-0.15" -operation Main.Study.InverseDynamics -run -classoperation Main.Study.Output.Pmet_total "Dump" -classoperation Main.Study.Output.Abscissa.t "Dump" - -######### OUTPUT LOG ########## - -AnyBody Console Application -Edition Name : Beta -AnyBodyCon.exe version : 8. 1. 0. 12263 (64-bit version) -Build : 20010.50400 (beta) -Copyright (c) 1999 - 2024 AnyBody Technology A/S - -Current path: c:\Users\jha\Documents\tutorials\Parameter_studies_and_optimization\python-optimize -#### Macro command > load "BikeModel2D.main.any" -Loading Main : "C:\Users\jha\Documents\tutorials\Parameter_studies_and_optimization\python-optimize\BikeModel2D.main.any" -Scanning... -Parsing... -Constructing model tree... -ERROR(SCR.PRS9) : C:\Users\jha\AppData\Local\Programs\AnyBody Technology\AnyBody.8.1_Beta\AMMR\Body\AAUHuman\drawSettings\MusDrawSettings.any(7) : 'Visible' : Unresolved object -Model loading skipped -#### Macro command > classoperation Main.BikeParameters.SaddleHeight "Set Value" --value="0.68" -#### Macro command > classoperation Main.BikeParameters.SaddlePos "Set Value" --value="-0.15" -#### Macro command > operation Main.Study.InverseDynamics -Error : Main.Study.InverseDynamics : Select Operation is not expected or object is not AnyOperation. - -Closing model... -Deleting loaded model... -...Model deleted. diff --git a/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(sqssrft9).txt b/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(sqssrft9).txt deleted file mode 100644 index beb4f206..00000000 --- a/Parameter_studies_and_optimization/python-optimize/parameter_studies_and_optimization-python-optimize-0_(sqssrft9).txt +++ /dev/null @@ -1,33 +0,0 @@ -########### MACRO ############# -load "BikeModel2D.main.any" -classoperation Main.BikeParameters.SaddleHeight "Set Value" --value="0.68" -classoperation Main.BikeParameters.SaddlePos "Set Value" --value="-0.15" -operation Main.Study.InverseDynamics -run -classoperation Main.Study.Output.Pmet_total "Dump" -classoperation Main.Study.Output.Abscissa.t "Dump" - -######### OUTPUT LOG ########## - -AnyBody Console Application -Edition Name : Beta -AnyBodyCon.exe version : 8. 1. 0. 12263 (64-bit version) -Build : 20010.50400 (beta) -Copyright (c) 1999 - 2024 AnyBody Technology A/S - -Current path: C:\Users\jha\Documents\tutorials\Parameter_studies_and_optimization\python-optimize -#### Macro command > load "BikeModel2D.main.any" -Loading Main : "C:\Users\jha\Documents\tutorials\Parameter_studies_and_optimization\python-optimize\BikeModel2D.main.any" -Scanning... -Parsing... -Constructing model tree... -ERROR(SCR.PRS9) : C:\Users\jha\AppData\Local\Programs\AnyBody Technology\AnyBody.8.1_Beta\AMMR\Body\AAUHuman\drawSettings\MusDrawSettings.any(7) : 'Visible' : Unresolved object -Model loading skipped -#### Macro command > classoperation Main.BikeParameters.SaddleHeight "Set Value" --value="0.68" -#### Macro command > classoperation Main.BikeParameters.SaddlePos "Set Value" --value="-0.15" -#### Macro command > operation Main.Study.InverseDynamics -Error : Main.Study.InverseDynamics : Select Operation is not expected or object is not AnyOperation. - -Closing model... -Deleting loaded model... -...Model deleted. diff --git a/Parameter_studies_and_optimization/python-optimize/pixi.lock b/Parameter_studies_and_optimization/python-optimize/pixi.lock deleted file mode 100644 index feffcee7..00000000 --- a/Parameter_studies_and_optimization/python-optimize/pixi.lock +++ /dev/null @@ -1,813 +0,0 @@ -version: 5 -environments: - default: - channels: - - url: https://conda.anaconda.org/conda-forge/ - packages: - win-64: - - conda: https://conda.anaconda.org/conda-forge/win-64/anypytools-1.13.0-py312h2e8e312_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/h5py-3.12.1-nompi_py312ha036244_102.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h2b43c12_105.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.10.1-h1ee3ff0_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.3-he0c23c2_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.1-default_h8125262_1000.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.7-h0f24e4e_4.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-2.1.2-py312hf10105a_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.2-h2466b09_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-h2466b09_4.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pydoe-0.3.8-py_1.tar.bz2 - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/pygments_anyscript-1.4.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.12.7-hce54a09_0_cpython.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-5_cp312.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-307-py312h275cf98_3.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.14.1-py312h337df96_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.1.0-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.13.0-hc790b64_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.66.5-pyhd8ed1ab_0.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_22.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-hcc2c482_22.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_22.conda - - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 -packages: -- kind: conda - name: anypytools - version: 1.13.0 - build: py312h2e8e312_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/anypytools-1.13.0-py312h2e8e312_0.conda - sha256: d11b2daf3d9bb92b0290e470cc184a7eef72857b94ea6097f8e31a9c50ea1880 - md5: d0e94ed85819aba38afc4735b7d4c73f - depends: - - python 3.12.* *_cpython - - h5py >=2.5 - - setuptools - - pydoe - - tqdm - - scipy >=0.15 - - pygments_anyscript - - pywin32 - - python_abi 3.12.* *_cp312 - license: MIT - license_family: MIT - size: 3092030 - timestamp: 1729591449637 -- kind: conda - name: bzip2 - version: 1.0.8 - build: h2466b09_7 - build_number: 7 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda - sha256: 35a5dad92e88fdd7fc405e864ec239486f4f31eec229e31686e61a140a8e573b - md5: 276e7ffe9ffe39688abc665ef0f45596 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: bzip2-1.0.6 - license_family: BSD - size: 54927 - timestamp: 1720974860185 -- kind: conda - name: ca-certificates - version: 2024.8.30 - build: h56e8100_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda - sha256: 0fcac3a7ffcc556649e034a1802aedf795e64227eaa7194d207b01eaf26454c4 - md5: 4c4fd67c18619be5aa65dc5b6c72e490 - license: ISC - size: 158773 - timestamp: 1725019107649 -- kind: conda - name: cached-property - version: 1.5.2 - build: hd8ed1ab_1 - build_number: 1 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 - sha256: 561e6660f26c35d137ee150187d89767c988413c978e1b712d53f27ddf70ea17 - md5: 9b347a7ec10940d3f7941ff6c460b551 - depends: - - cached_property >=1.5.2,<1.5.3.0a0 - license: BSD-3-Clause - license_family: BSD - size: 4134 - timestamp: 1615209571450 -- kind: conda - name: cached_property - version: 1.5.2 - build: pyha770c72_1 - build_number: 1 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - sha256: 6dbf7a5070cc43d90a1e4c2ec0c541c69d8e30a0e25f50ce9f6e4a432e42c5d7 - md5: 576d629e47797577ab0f1b351297ef4a - depends: - - python >=3.6 - license: BSD-3-Clause - license_family: BSD - size: 11065 - timestamp: 1615209567874 -- kind: conda - name: colorama - version: 0.4.6 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 - sha256: 2c1b2e9755ce3102bca8d69e8f26e4f087ece73f50418186aee7c74bef8e1698 - md5: 3faab06a954c2a04039983f2c4a50d99 - depends: - - python >=3.7 - license: BSD-3-Clause - license_family: BSD - size: 25170 - timestamp: 1666700778190 -- kind: conda - name: h5py - version: 3.12.1 - build: nompi_py312ha036244_102 - build_number: 102 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/h5py-3.12.1-nompi_py312ha036244_102.conda - sha256: 558e3dce06eeb4a3767cc9c8b0718d86d022f7a2666d032a3bfb2a66051ff7ee - md5: 40339a5f55f03cc50a1679490d5b66a4 - depends: - - cached-property - - hdf5 >=1.14.3,<1.14.4.0a0 - - numpy >=1.19,<3 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause - license_family: BSD - size: 1093665 - timestamp: 1729618000039 -- kind: conda - name: hdf5 - version: 1.14.3 - build: nompi_h2b43c12_105 - build_number: 105 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h2b43c12_105.conda - sha256: 56c803607a64b5117a8b4bcfdde722e4fa40970ddc4c61224b0981cbb70fb005 - md5: 5788de34381caf624b78c4981618dc0a - depends: - - libaec >=1.1.3,<2.0a0 - - libcurl >=8.8.0,<9.0a0 - - libzlib >=1.2.13,<2.0a0 - - openssl >=3.3.1,<4.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause - license_family: BSD - size: 2039111 - timestamp: 1717587493910 -- kind: conda - name: intel-openmp - version: 2024.2.1 - build: h57928b3_1083 - build_number: 1083 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda - sha256: 0fd2b0b84c854029041b0ede8f4c2369242ee92acc0092f8407b1fe9238a8209 - md5: 2d89243bfb53652c182a7c73182cce4f - license: LicenseRef-IntelSimplifiedSoftwareOct2022 - license_family: Proprietary - size: 1852356 - timestamp: 1723739573141 -- kind: conda - name: krb5 - version: 1.21.3 - build: hdf4eb48_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - sha256: 18e8b3430d7d232dad132f574268f56b3eb1a19431d6d5de8c53c29e6c18fa81 - md5: 31aec030344e962fbd7dbbbbd68e60a9 - depends: - - openssl >=3.3.1,<4.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 712034 - timestamp: 1719463874284 -- kind: conda - name: libaec - version: 1.1.3 - build: h63175ca_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - sha256: f5c293d3cfc00f71dfdb64bd65ab53625565f8778fc2d5790575bef238976ebf - md5: 8723000f6ffdbdaef16025f0a01b64c5 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-2-Clause - license_family: BSD - size: 32567 - timestamp: 1711021603471 -- kind: conda - name: libblas - version: 3.9.0 - build: 25_win64_mkl - build_number: 25 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda - sha256: 5468bb91c44b41ce060bbd997c797b2f91e2b7ce91a7cbf4ddf7e7b734a8dc98 - md5: 499208e81242efb6e5abc7366c91c816 - depends: - - mkl 2024.2.2 h66d3029_14 - constrains: - - blas * mkl - - libcblas 3.9.0 25_win64_mkl - - liblapack 3.9.0 25_win64_mkl - - liblapacke 3.9.0 25_win64_mkl - license: BSD-3-Clause - license_family: BSD - size: 3736641 - timestamp: 1729643534444 -- kind: conda - name: libcblas - version: 3.9.0 - build: 25_win64_mkl - build_number: 25 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda - sha256: 21528cdfe67dafdb2d21925515a167f13963e002c2b6d06d68984767f731850c - md5: 3ed189ba03a9888a8013aaee0d67c49d - depends: - - libblas 3.9.0 25_win64_mkl - constrains: - - blas * mkl - - liblapack 3.9.0 25_win64_mkl - - liblapacke 3.9.0 25_win64_mkl - license: BSD-3-Clause - license_family: BSD - size: 3732258 - timestamp: 1729643561581 -- kind: conda - name: libcurl - version: 8.10.1 - build: h1ee3ff0_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.10.1-h1ee3ff0_0.conda - sha256: dfbac497c4fee74f67391f9c4a40cab559468b7d04ff9fad4b404a26b5e1d5b8 - md5: 7ead800e22ff7b4bccb73e42a8f7a0f4 - depends: - - krb5 >=1.21.3,<1.22.0a0 - - libssh2 >=1.11.0,<2.0a0 - - libzlib >=1.3.1,<2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: curl - license_family: MIT - size: 342388 - timestamp: 1726660508261 -- kind: conda - name: libexpat - version: 2.6.3 - build: he0c23c2_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.3-he0c23c2_0.conda - sha256: 9543965d155b8da96fc67dd81705fe5c2571c7c00becc8de5534c850393d4e3c - md5: 21415fbf4d0de6767a621160b43e5dea - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - constrains: - - expat 2.6.3.* - license: MIT - license_family: MIT - size: 138992 - timestamp: 1725569106114 -- kind: conda - name: libffi - version: 3.4.2 - build: h8ffe710_5 - build_number: 5 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 - sha256: 1951ab740f80660e9bc07d2ed3aefb874d78c107264fd810f24a1a6211d4b1a5 - md5: 2c96d1b6915b408893f9472569dee135 - depends: - - vc >=14.1,<15.0a0 - - vs2015_runtime >=14.16.27012 - license: MIT - license_family: MIT - size: 42063 - timestamp: 1636489106777 -- kind: conda - name: libhwloc - version: 2.11.1 - build: default_h8125262_1000 - build_number: 1000 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libhwloc-2.11.1-default_h8125262_1000.conda - sha256: 92728e292640186759d6dddae3334a1bc0b139740b736ffaeccb825fb8c07a2e - md5: 933bad6e4658157f1aec9b171374fde2 - depends: - - libxml2 >=2.12.7,<3.0a0 - - pthreads-win32 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause - license_family: BSD - size: 2379689 - timestamp: 1720461835526 -- kind: conda - name: libiconv - version: '1.17' - build: hcfcfb64_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libiconv-1.17-hcfcfb64_2.conda - sha256: 5f844dd19b046d43174ad80c6ea75b5d504020e3b63cfbc4ace97b8730d35c7b - md5: e1eb10b1cca179f2baa3601e4efc8712 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LGPL-2.1-only - size: 636146 - timestamp: 1702682547199 -- kind: conda - name: liblapack - version: 3.9.0 - build: 25_win64_mkl - build_number: 25 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - sha256: 98c13a28596389539abe3f608c6fbd2826df47671f77c58a331df878c6140c53 - md5: f716ef84564c574e8e74ae725f5d5f93 - depends: - - libblas 3.9.0 25_win64_mkl - constrains: - - blas * mkl - - libcblas 3.9.0 25_win64_mkl - - liblapacke 3.9.0 25_win64_mkl - license: BSD-3-Clause - license_family: BSD - size: 3736560 - timestamp: 1729643588182 -- kind: conda - name: libsqlite - version: 3.47.0 - build: h2466b09_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_0.conda - sha256: 4f3cd0477c831eab48fb7fa3ed91d918aeb644fad9b4014726d445339750cdcc - md5: 964bef59135d876c596ae67b3315e812 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: Unlicense - size: 884970 - timestamp: 1729592254351 -- kind: conda - name: libssh2 - version: 1.11.0 - build: h7dfc565_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - sha256: 813fd04eed2a2d5d9c36e53c554f9c1f08e9324e2922bd60c9c52dbbed2dbcec - md5: dc262d03aae04fe26825062879141a41 - depends: - - libzlib >=1.2.13,<2.0.0a0 - - openssl >=3.1.1,<4.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause - license_family: BSD - size: 266806 - timestamp: 1685838242099 -- kind: conda - name: libxml2 - version: 2.12.7 - build: h0f24e4e_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libxml2-2.12.7-h0f24e4e_4.conda - sha256: ae78197961b09b0eef4ee194a44e4adc4555c0f2f20c348086b0cd8aaf2f7731 - md5: ed4d301f0d2149b34deb9c4fecafd836 - depends: - - libiconv >=1.17,<2.0a0 - - libzlib >=1.3.1,<2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: MIT - license_family: MIT - size: 1682090 - timestamp: 1721031296951 -- kind: conda - name: libzlib - version: 1.3.1 - build: h2466b09_2 - build_number: 2 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/libzlib-1.3.1-h2466b09_2.conda - sha256: ba945c6493449bed0e6e29883c4943817f7c79cbff52b83360f7b341277c6402 - md5: 41fbfac52c601159df6c01f875de31b9 - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - constrains: - - zlib 1.3.1 *_2 - license: Zlib - license_family: Other - size: 55476 - timestamp: 1727963768015 -- kind: conda - name: mkl - version: 2024.2.2 - build: h66d3029_14 - build_number: 14 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda - sha256: 098ba4a3cb82f627bc79dc0ab1111b44859c9ef4aaa8d75ce043bce107770cb3 - md5: f011e7cc21918dc9d1efe0209e27fa16 - depends: - - intel-openmp 2024.* - - tbb 2021.* - license: LicenseRef-IntelSimplifiedSoftwareOct2022 - license_family: Proprietary - size: 103019089 - timestamp: 1727378392081 -- kind: conda - name: numpy - version: 2.1.2 - build: py312hf10105a_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/numpy-2.1.2-py312hf10105a_0.conda - sha256: 81aadbcee02b5cbf74b543c29b0bbb7917431ee07d83351267f1fcad35d787c8 - md5: ff10ff589eedbf2006ccda86d11150a2 - depends: - - libblas >=3.9.0,<4.0a0 - - libcblas >=3.9.0,<4.0a0 - - liblapack >=3.9.0,<4.0a0 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - constrains: - - numpy-base <0a0 - license: BSD-3-Clause - license_family: BSD - size: 7048272 - timestamp: 1728665362128 -- kind: conda - name: openssl - version: 3.3.2 - build: h2466b09_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/openssl-3.3.2-h2466b09_0.conda - sha256: a45c42f3577294e22ac39ddb6ef5a64fd5322e8a6725afefbf4f2b4109340bf9 - md5: 1dc86753693df5e3326bb8a85b74c589 - depends: - - ca-certificates - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: Apache-2.0 - license_family: Apache - size: 8396053 - timestamp: 1725412961673 -- kind: conda - name: pthreads-win32 - version: 2.9.1 - build: h2466b09_4 - build_number: 4 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pthreads-win32-2.9.1-h2466b09_4.conda - sha256: b989bdcf0a22ba05a238adac1ad3452c11871681f565e509f629e225a26b7d45 - md5: cf98a67a1ec8040b42455002a24f0b0b - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: LGPL-2.1-or-later - size: 265827 - timestamp: 1728400965968 -- kind: conda - name: pydoe - version: 0.3.8 - build: py_1 - build_number: 1 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pydoe-0.3.8-py_1.tar.bz2 - sha256: 4616364442c3c0c91188ae8b04d3146f21e8826e55e120835d910844e4dbe38e - md5: 6aeffd34a05a050c9b01c86de859c459 - depends: - - numpy >=1.8 - - python - - scipy >=0.13 - license: BSD 3-Clause - size: 13421 - timestamp: 1531166118644 -- kind: conda - name: pygments - version: 2.18.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_0.conda - sha256: 78267adf4e76d0d64ea2ffab008c501156c108bb08fecb703816fb63e279780b - md5: b7f5c092b8f9800150d998a71b76d5a1 - depends: - - python >=3.8 - license: BSD-2-Clause - license_family: BSD - size: 879295 - timestamp: 1714846885370 -- kind: conda - name: pygments_anyscript - version: 1.4.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/pygments_anyscript-1.4.0-pyhd8ed1ab_0.conda - sha256: fde2c3ae861184fafc569b2d20405f55f080863495bb556a16b64bf38bf71f69 - md5: ea449172a6b83b21b48345282e8488f1 - depends: - - pygments - - python >=3.7 - license: MIT - license_family: MIT - size: 17002 - timestamp: 1723023057402 -- kind: conda - name: python - version: 3.12.7 - build: hce54a09_0_cpython - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/python-3.12.7-hce54a09_0_cpython.conda - sha256: 2308cfa9ec563360d29ced7fd13a6b60b9a7b3cf8961a95c78c69f486211d018 - md5: 21f1f7c6ccf6b747c5086d2422c230e1 - depends: - - bzip2 >=1.0.8,<2.0a0 - - libexpat >=2.6.3,<3.0a0 - - libffi >=3.4,<4.0a0 - - libsqlite >=3.46.1,<4.0a0 - - libzlib >=1.3.1,<2.0a0 - - openssl >=3.3.2,<4.0a0 - - tk >=8.6.13,<8.7.0a0 - - tzdata - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - - xz >=5.2.6,<6.0a0 - constrains: - - python_abi 3.12.* *_cp312 - license: Python-2.0 - size: 15987537 - timestamp: 1728057382072 -- kind: conda - name: python_abi - version: '3.12' - build: 5_cp312 - build_number: 5 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.12-5_cp312.conda - sha256: 9486662af81a219e96d343449eff242f38d7c5128ced5ce5acf85857265058d6 - md5: e8681f534453af7afab4cd2bc1423eec - constrains: - - python 3.12.* *_cpython - license: BSD-3-Clause - license_family: BSD - size: 6730 - timestamp: 1723823139725 -- kind: conda - name: pywin32 - version: '307' - build: py312h275cf98_3 - build_number: 3 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/pywin32-307-py312h275cf98_3.conda - sha256: 68f8781b83942b91dbc0df883f9edfd1a54a1e645ae2a97c48203ff6c2919de3 - md5: 1747fbbdece8ab4358b584698b19c44d - depends: - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: PSF-2.0 - license_family: PSF - size: 6032183 - timestamp: 1728636767192 -- kind: conda - name: scipy - version: 1.14.1 - build: py312h337df96_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/scipy-1.14.1-py312h337df96_1.conda - sha256: d0a8b9e849ae53af5c8373d1429464e071fda3ee35accb77775757b330e0d340 - md5: 7d85322084d7262008c49c85d3079c50 - depends: - - libblas >=3.9.0,<4.0a0 - - libcblas >=3.9.0,<4.0a0 - - liblapack >=3.9.0,<4.0a0 - - numpy <2.3 - - numpy >=1.19,<3 - - numpy >=1.23.5 - - python >=3.12,<3.13.0a0 - - python_abi 3.12.* *_cp312 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: BSD-3-Clause - license_family: BSD - size: 16143541 - timestamp: 1729482531384 -- kind: conda - name: setuptools - version: 75.1.0 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.1.0-pyhd8ed1ab_0.conda - sha256: 6725235722095c547edd24275053c615158d6163f396550840aebd6e209e4738 - md5: d5cd48392c67fb6849ba459c2c2b671f - depends: - - python >=3.8 - license: MIT - license_family: MIT - size: 777462 - timestamp: 1727249510532 -- kind: conda - name: tbb - version: 2021.13.0 - build: hc790b64_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.13.0-hc790b64_0.conda - sha256: 990dbe4fb42f14700c22bd434d8312607bf8d0bd9f922b054e51fda14c41994c - md5: 28496a1e6af43c63927da4f80260348d - depends: - - libhwloc >=2.11.1,<2.11.2.0a0 - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: Apache-2.0 - license_family: APACHE - size: 151494 - timestamp: 1725532984828 -- kind: conda - name: tk - version: 8.6.13 - build: h5226925_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - sha256: 2c4e914f521ccb2718946645108c9bd3fc3216ba69aea20c2c3cedbd8db32bb1 - md5: fc048363eb8f03cd1737600a5d08aafe - depends: - - ucrt >=10.0.20348.0 - - vc >=14.2,<15 - - vc14_runtime >=14.29.30139 - license: TCL - license_family: BSD - size: 3503410 - timestamp: 1699202577803 -- kind: conda - name: tqdm - version: 4.66.5 - build: pyhd8ed1ab_0 - subdir: noarch - noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.66.5-pyhd8ed1ab_0.conda - sha256: f2384902cef72048b0e9bad5c03d7a843de02ba6bc8618a9ecab6ff81a131312 - md5: c6e94fc2b2ec71ea33fe7c7da259acb4 - depends: - - colorama - - python >=3.7 - license: MPL-2.0 or MIT - size: 89519 - timestamp: 1722737568509 -- kind: conda - name: tzdata - version: 2024b - build: hc8b5060_0 - subdir: noarch - noarch: generic - url: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - sha256: 4fde5c3008bf5d2db82f2b50204464314cc3c91c1d953652f7bd01d9e52aefdf - md5: 8ac3367aafb1cc0a068483c580af8015 - license: LicenseRef-Public-Domain - size: 122354 - timestamp: 1728047496079 -- kind: conda - name: ucrt - version: 10.0.22621.0 - build: h57928b3_1 - build_number: 1 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/ucrt-10.0.22621.0-h57928b3_1.conda - sha256: db8dead3dd30fb1a032737554ce91e2819b43496a0db09927edf01c32b577450 - md5: 6797b005cd0f439c4c5c9ac565783700 - constrains: - - vs2015_runtime >=14.29.30037 - license: LicenseRef-MicrosoftWindowsSDK10 - size: 559710 - timestamp: 1728377334097 -- kind: conda - name: vc - version: '14.3' - build: ha32ba9b_22 - build_number: 22 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc-14.3-ha32ba9b_22.conda - sha256: 2a47c5bd8bec045959afada7063feacd074ad66b170c1ea92dd139b389fcf8fd - md5: 311c9ba1dfdd2895a8cb08346ff26259 - depends: - - vc14_runtime >=14.38.33135 - track_features: - - vc14 - license: BSD-3-Clause - license_family: BSD - size: 17447 - timestamp: 1728400826998 -- kind: conda - name: vc14_runtime - version: 14.40.33810 - build: hcc2c482_22 - build_number: 22 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vc14_runtime-14.40.33810-hcc2c482_22.conda - sha256: 4c669c65007f88a7cdd560192f7e6d5679d191ac71610db724e18b2410964d64 - md5: ce23a4b980ee0556a118ed96550ff3f3 - depends: - - ucrt >=10.0.20348.0 - constrains: - - vs2015_runtime 14.40.33810.* *_22 - license: LicenseRef-MicrosoftVisualCpp2015-2022Runtime - license_family: Proprietary - size: 750719 - timestamp: 1728401055788 -- kind: conda - name: vs2015_runtime - version: 14.40.33810 - build: h3bf8584_22 - build_number: 22 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/vs2015_runtime-14.40.33810-h3bf8584_22.conda - sha256: 80aa9932203d65a96f817b8be4fafc176fb2b3fe6cf6899ede678b8f0317fbff - md5: 8c6b061d44cafdfc8e8c6eb5f100caf0 - depends: - - vc14_runtime >=14.40.33810 - license: BSD-3-Clause - license_family: BSD - size: 17453 - timestamp: 1728400827536 -- kind: conda - name: xz - version: 5.2.6 - build: h8d14728_0 - subdir: win-64 - url: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - sha256: 54d9778f75a02723784dc63aff4126ff6e6749ba21d11a6d03c1f4775f269fe0 - md5: 515d77642eaa3639413c6b1bc3f94219 - depends: - - vc >=14.1,<15 - - vs2015_runtime >=14.16.27033 - license: LGPL-2.1 and GPL-2.0 - size: 217804 - timestamp: 1660346976440 diff --git a/Parameter_studies_and_optimization/python-optimize/pixi.toml b/Parameter_studies_and_optimization/python-optimize/pixi.toml deleted file mode 100644 index 98d1403d..00000000 --- a/Parameter_studies_and_optimization/python-optimize/pixi.toml +++ /dev/null @@ -1,14 +0,0 @@ -[project] -authors = ["Jacob Hilmar Adamsen "] -channels = ["conda-forge"] -description = "Add a short description here" -name = "python-optimize" -platforms = ["win-64"] -version = "0.1.0" - -[tasks] - -[dependencies] -python = ">=3.12.7,<4" -scipy = ">=1.14.1,<2" -anypytools = ">=1.13.0,<2" diff --git a/conf.py b/conf.py index 6ad6c46d..2a3e701a 100644 --- a/conf.py +++ b/conf.py @@ -56,13 +56,14 @@ def tagged_commit(): "IPython.sphinxext.ipython_console_highlighting", "sphinx.ext.intersphinx", # 'sphinx.ext.autosectionlabel' - "myst_parser", + # "myst_parser", "sphinxext.opengraph", "sphinx_design", "sphinx_copybutton", "sphinx_togglebutton", "sphinxcontrib.youtube", "sphinx_simplepdf", + "myst_nb" ] myst_enable_extensions = [ @@ -118,7 +119,8 @@ def tagged_commit(): ".github", "README.md", "galleries/*", - ".pixi", + ".pixi/*", + "Parameter_studies_and_optimization/python-optimize/.pixi", "EXLCLUDED_*", ".pytest_cache", ] @@ -178,6 +180,19 @@ def tagged_commit(): } +# Jupyter Notebook Configurations +nb_execution_timeout = 150 +nb_execution_mode = "auto" +nb_execution_excludepatterns = [ + # Exclude the parameter opt from automatic execution. + # It will not run on linux machines since it needs the AnyBody + # conda package + 'Parameter_studies_and_optimization/lesson3/lesson3.ipynb' +] + + + + no_index = r""" .. meta:: :name=robots content=noindex: \ @@ -441,6 +456,10 @@ def tagged_commit(): user_agent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" +linkcheck_request_headers = { + r'https://docs.github.com/': {'User-Agent': 'Mozilla/5.0 (X11; Ubuntu; Linux i686; ' + 'rv:24.0) Gecko/20100101 Firefox/24.0'} +} linkcheck_ignore = [ r".*linkcheck_ignore", "https://doi.org/10.1115/1.4037100", # asme.org prevents the linkcheck @@ -450,6 +469,7 @@ def tagged_commit(): "https://doi.org/10.1080/10255840802459412", # tandfonline sometimes blocks linkcheck "https://doi.org/10.1080/23335432.2014.993706", # tandfonline sometimes blocks linkcheck "https://anyscript.org/tutorials/dev/", # The dev sides can sometimes be missing. + "https://www.mathworks.com/products/matlab.html", # Mathworks sometimes blocks linkcheck ] linkcheck_allowed_redirects = { diff --git a/pixi.lock b/pixi.lock index a0433420..0a1a1566 100644 --- a/pixi.lock +++ b/pixi.lock @@ -11,23 +11,30 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.6.2.post1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/anypytools-1.13.0-py311h38be061_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hfdbb021_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-heb4867d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-hebfffa5_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.8.30-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.17.1-py311hf29c0ef_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.1-py311hd18a35c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cssselect2-0.2.1-pyh9f0ad1d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.7-py311hfdbb021_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda @@ -45,45 +52,68 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.82.2-h44428e9_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.82.2-h4833e2c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.1.1-py311hfdbb021_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/h5py-3.12.1-nompi_py311hb639ac4_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-9.0.0-hda332d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_hdf9ad27_105.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/html5lib-1.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.5.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh3099207_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.29.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipywidgets-8.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.2-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-cache-1.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh31011fe_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_widgets-3.0.13-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.7-py311hd18a35c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.22-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.2.0-h69a702a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.82.2-h2ff4ddf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.44-hadc24fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsass-0.22.0-py311hfdbb021_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.20-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.0-he137b08_1.conda @@ -101,8 +131,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/myst-nb-1.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py311h71ddf71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda @@ -114,13 +148,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-11.0.0-py311h49e9ac3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-6.1.0-py311h9ecbd09_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydata-sphinx-theme-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydoe-0.3.8-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydyf-0.11.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments_anyscript-1.4.0-pyhd8ed1ab_0.conda @@ -130,12 +168,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.10-hc5c86c4_3_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-5_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.2-py311h9ecbd09_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-26.2.0-py311h7deb3e3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h434a139_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.21.0-py311h9e33e62_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.14.1-py311he9a78e4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 @@ -155,12 +199,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-youtube-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxext-opengraph-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.36-py311h9ecbd09_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/starlette-0.41.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.1.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4.1-py311h9ecbd09_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uc-micro-py-1.0.3-pyhd8ed1ab_0.conda @@ -172,6 +221,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/weasyprint-62.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/websockets-13.1-py311h9ecbd09_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/widgetsnbextension-4.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hb9d3cd8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-he73a12e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.10-h4f16b4b_0.conda @@ -182,6 +232,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xorgproto-2024.1-hb9d3cd8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h3b0a872_6.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.23.0-py311hbc35293_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda @@ -190,7 +242,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.6.2.post1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/anypytools-1.13.0-py311h1ea47a8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-h2466b09_2.conda @@ -198,15 +252,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-python-1.1.0-py311hda3d55a_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/bzip2-1.0.8-h2466b09_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/ca-certificates-2024.8.30-h56e8100_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/cairo-1.18.0-h32b962e_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.8.30-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/cffi-1.17.1-py311he736701_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.3.1-py311h3257749_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.11.10-py311hd8ed1ab_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cssselect2-0.2.1-pyh9f0ad1d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.7-py311hda3d55a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda @@ -224,28 +283,44 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.82.2-h7025463_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.82.2-h4394cf3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/graphite2-1.3.13-h63175ca_1003.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/greenlet-3.1.1-py311hda3d55a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/h5py-3.12.1-nompi_py311h67016bb_102.conda - conda: https://conda.anaconda.org/conda-forge/win-64/harfbuzz-9.0.0-h2bedf89_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/hdf5-1.14.3-nompi_h2b43c12_105.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/html5lib-1.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/icu-75.1-he0c23c2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.5.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/intel-openmp-2024.2.1-h57928b3_1083.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh4bbf305_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.29.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipywidgets-8.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.2-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-cache-1.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh5737063_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_widgets-3.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.7-py311h3257749_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lerc-4.0.0-h63175ca_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/libaec-1.1.3-h63175ca_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libblas-3.9.0-25_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlicommon-1.1.0-h2466b09_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlidec-1.1.0-h2466b09_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libbrotlienc-1.1.0-h2466b09_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libcblas-3.9.0-25_win64_mkl.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libcurl-8.10.1-h1ee3ff0_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libdeflate-1.22-h2466b09_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libexpat-2.6.4-he0c23c2_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libffi-3.4.2-h8ffe710_5.tar.bz2 @@ -259,7 +334,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/liblapack-3.9.0-25_win64_mkl.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.44-h3ca93ac_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsass-0.22.0-py311hda3d55a_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.20-hc70643c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.0-hfc51747_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwebp-base-1.4.0-hcfcfb64_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libwinpthread-12.0.0.r4.gg4f2fc60ca-h57928b3_8.conda @@ -275,7 +352,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/mkl-2024.2.2-h66d3029_14.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/myst-nb-1.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-2.1.3-py311h35ffc71_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openssl-3.4.0-h2466b09_0.conda @@ -286,12 +367,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-11.0.0-py311h4fbf6a9_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-6.1.0-py311he736701_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-h0e40799_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydata-sphinx-theme-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydoe-0.3.8-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydyf-0.11.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments_anyscript-1.4.0-pyhd8ed1ab_0.conda @@ -301,11 +386,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.10-hce54a09_3_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-5_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-307-py311hda3d55a_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.2-py311he736701_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-26.2.0-py311h484c95c_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-hc790b64_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.21.0-py311h533ab2d_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.14.1-py311hf16d85f_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 @@ -325,13 +417,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-youtube-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxext-opengraph-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlalchemy-2.0.36-py311he736701_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/starlette-0.41.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/tbb-2021.7.0-h91493d7_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.1.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4.1-py311he736701_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uc-micro-py-1.0.3-pyhd8ed1ab_0.conda @@ -347,11 +444,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/weasyprint-62.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/websockets-13.1-py311he736701_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/widgetsnbextension-4.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-h0e40799_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.5-h0e40799_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-ha9f60a1_6.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.3.1-h2466b09_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.23.0-py311h53056dc_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda @@ -366,23 +466,30 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/accessible-pygments-0.0.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/alabaster-1.0.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.6.2.post1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/anypytools-1.13.0-py311h38be061_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-bin-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/brotli-python-1.1.0-py311hfdbb021_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/bzip2-1.0.8-h4bc722e_7.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-heb4867d_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ca-certificates-2024.8.30-hbcca054_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cached-property-1.5.2-hd8ed1ab_1.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/cached_property-1.5.2-pyha770c72_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/cairo-1.18.0-hebfffa5_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/certifi-2024.8.30-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/cffi-1.17.1-py311hf29c0ef_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-unix_pyh707e725_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/contourpy-1.3.1-py311hd18a35c_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cssselect2-0.2.1-pyh9f0ad1d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.7-py311hfdbb021_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/decorator-5.1.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/docutils-0.21.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/exceptiongroup-1.2.2-pyhd8ed1ab_0.conda @@ -400,45 +507,68 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-2.82.2-h44428e9_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/glib-tools-2.82.2-h4833e2c_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/graphite2-1.3.13-h59595ed_1003.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.1.1-py311hfdbb021_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/h5py-3.12.1-nompi_py311hb639ac4_102.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/harfbuzz-9.0.0-hda332d3_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_hdf9ad27_105.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hpack-4.0.0-pyh9f0ad1d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/html5lib-1.1-pyhd8ed1ab_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/hyperframe-6.0.1-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/icu-75.1-he02047a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.5.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh3099207_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.29.0-pyh707e725_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipywidgets-8.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.2-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-cache-1.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh31011fe_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_widgets-3.0.13-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/kiwisolver-1.4.7-py311hd18a35c_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lcms2-2.16-hb7c19ff_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ld_impl_linux-64-2.43-h712a8e2_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/lerc-4.0.0-h27087fc_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libblas-3.9.0-25_linux64_openblas.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlicommon-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlidec-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libbrotlienc-1.1.0-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libcblas-3.9.0-25_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libdeflate-1.22-hb9d3cd8_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libexpat-2.6.4-h5888daf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libffi-3.4.2-h7f98852_5.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-14.2.0-h77fa898_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgcc-ng-14.2.0-h69a702a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-14.2.0-h69a702a_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.2.0-h69a702a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgfortran5-14.2.0-hd5240d6_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libglib-2.82.2-h2ff4ddf_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libgomp-14.2.0-h77fa898_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libiconv-1.17-hd590300_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libjpeg-turbo-3.0.0-hd590300_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/liblapack-3.9.0-25_linux64_openblas.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libnsl-2.0.1-hd590300_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libopenblas-0.3.28-pthreads_h94d23a6_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libpng-1.6.44-hadc24fc_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsass-0.22.0-py311hfdbb021_2.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.20-h4ab18f5_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libsqlite-3.47.0-hadc24fc_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-14.2.0-hc0a3c3a_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libstdcxx-ng-14.2.0-h4852527_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/libtiff-4.7.0-he137b08_1.conda @@ -456,8 +586,12 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/myst-nb-1.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/ncurses-6.5-he02047a_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/numpy-2.1.3-py311h71ddf71_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openjpeg-2.5.2-h488ebb8_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/openssl-3.4.0-hb9d3cd8_0.conda @@ -469,13 +603,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/pillow-11.0.0-py311h49e9ac3_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pixman-0.43.2-h59595ed_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/psutil-6.1.0-py311h9ecbd09_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pthread-stubs-0.4-hb9d3cd8_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ptyprocess-0.7.0-pyhd3deb0d_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pydata-sphinx-theme-0.16.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pydoe-0.3.8-py_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/pydyf-0.11.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments-2.18.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pygments_anyscript-1.4.0-pyhd8ed1ab_0.conda @@ -485,12 +623,18 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python-3.11.10-hc5c86c4_3_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/python_abi-3.11-5_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/pyyaml-6.0.2-py311h9ecbd09_1.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-26.2.0-py311h7deb3e3_3.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/qhull-2020.2-h434a139_5.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/readline-8.2-h8228510_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.21.0-py311h9e33e62_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.14.1-py311he9a78e4_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/sniffio-1.3.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/snowballstemmer-2.2.0-pyhd8ed1ab_0.tar.bz2 @@ -510,12 +654,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-youtube-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxext-opengraph-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.36-py311h9ecbd09_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/starlette-0.41.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/tk-8.6.13-noxft_h4845f30_101.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.1.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4.1-py311h9ecbd09_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uc-micro-py-1.0.3-pyhd8ed1ab_0.conda @@ -527,6 +676,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/weasyprint-62.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/websockets-13.1-py311h9ecbd09_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/widgetsnbextension-4.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libice-1.1.1-hb9d3cd8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libsm-1.2.4-he73a12e_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-libx11-1.8.10-h4f16b4b_0.conda @@ -537,6 +687,8 @@ environments: - conda: https://conda.anaconda.org/conda-forge/linux-64/xorg-xorgproto-2024.1-hb9d3cd8_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/xz-5.2.6-h166bdaf_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/linux-64/yaml-0.2.5-h7f98852_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h3b0a872_6.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zlib-1.3.1-hb9d3cd8_2.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstandard-0.23.0-py311hbc35293_1.conda - conda: https://conda.anaconda.org/conda-forge/linux-64/zstd-1.5.6-ha6fb4c9_0.conda @@ -548,6 +700,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/anyio-4.6.2.post1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/anypytools-1.13.0-py311h1ea47a8_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/asttokens-2.4.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/babel-2.16.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/beautifulsoup4-4.12.3-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/brotli-1.1.0-h2466b09_2.conda @@ -563,7 +716,9 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/charset-normalizer-3.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/click-8.1.7-win_pyh7428d3b_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/colorama-0.4.6-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/contourpy-1.3.1-py311h3257749_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/cpython-3.11.10-py311hd8ed1ab_3.conda - conda: https://conda.anaconda.org/conda-forge/noarch/cssselect2-0.2.1-pyh9f0ad1d_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/cycler-0.12.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.8-py311hda3d55a_0.conda @@ -584,6 +739,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/glib-2.82.2-h7025463_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/glib-tools-2.82.2-h4394cf3_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/graphite2-1.3.13-h63175ca_1003.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/greenlet-3.1.1-py311hda3d55a_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/h11-0.14.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/h2-4.1.0-pyhd8ed1ab_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/h5py-3.12.1-nompi_py311h67016bb_102.conda @@ -595,10 +751,20 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/icu-75.1-he0c23c2_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/idna-3.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/imagesize-1.4.1-pyhd8ed1ab_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.5.0-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/iniconfig-2.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh4bbf305_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/ipython-8.29.0-pyh7428d3b_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/ipywidgets-8.1.5-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jedi-0.19.2-pyhff2d567_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/jinja2-3.1.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter-cache-1.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh5737063_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_widgets-3.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/kiwisolver-1.4.7-py311h3257749_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/krb5-1.21.3-hdf4eb48_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/lcms2-2.16-h67d730c_0.conda @@ -625,6 +791,7 @@ environments: - conda: https://conda.anaconda.org/conda-forge/win-64/libopenblas-0.3.28-pthreads_hf0a32cb_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libpng-1.6.44-h3ca93ac_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsass-0.22.0-py311hda3d55a_2.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.20-hc70643c_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libsqlite-3.47.0-h2466b09_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libssh2-1.11.0-h7dfc565_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/libtiff-4.7.0-hfc51747_1.conda @@ -642,7 +809,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/mdit-py-plugins-0.4.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/mdurl-0.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/munkres-1.1.4-pyh9f0ad1d_0.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/noarch/myst-nb-1.1.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/myst-parser-4.0.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/nomkl-1.0-h5ca1d4c_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/numpy-2.1.3-py311h35ffc71_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/openjpeg-2.5.2-h3d672ee_0.conda @@ -655,8 +826,11 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pickleshare-0.7.5-py_1003.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/pillow-11.0.0-py311h4fbf6a9_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pixman-0.43.4-h63175ca_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pluggy-1.5.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/prompt-toolkit-3.0.48-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/psutil-6.1.0-py311he736701_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pthread-stubs-0.4-h0e40799_1002.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pure_eval-0.2.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pycparser-2.22-pyhd8ed1ab_0.conda @@ -671,12 +845,16 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/pytest-8.3.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python-3.11.10-hce54a09_3_cpython.conda - conda: https://conda.anaconda.org/conda-forge/noarch/python-dateutil-2.9.0-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.20.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/python_abi-3.11-5_cp311.conda - conda: https://conda.anaconda.org/conda-forge/noarch/pytz-2024.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pywin32-307-py311hda3d55a_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/pyyaml-6.0.2-py311he736701_1.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/pyzmq-26.2.0-py311h484c95c_3.conda - conda: https://conda.anaconda.org/conda-forge/win-64/qhull-2020.2-hc790b64_5.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/requests-2.32.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.21.0-py311h533ab2d_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/scipy-1.14.1-py311hf16d85f_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/setuptools-75.3.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/six-1.16.0-pyh6c4a22f_0.tar.bz2 @@ -698,13 +876,17 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-serializinghtml-1.1.10-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxcontrib-youtube-1.4.1-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/sphinxext-opengraph-0.9.1-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/sqlalchemy-2.0.36-py311he736701_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/stack_data-0.6.2-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/starlette-0.41.2-pyha770c72_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/noarch/tinycss2-1.4.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/tk-8.6.13-h5226925_1.conda - - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.1.0-pyhff2d567_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.2-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4.1-py311he736701_1.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tqdm-4.67.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/traitlets-5.14.3-pyhd8ed1ab_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/typing_extensions-4.12.2-pyha770c72_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/tzdata-2024b-hc8b5060_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/uc-micro-py-1.0.3-pyhd8ed1ab_0.conda @@ -720,11 +902,14 @@ environments: - conda: https://conda.anaconda.org/conda-forge/noarch/weasyprint-62.3-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/webencodings-0.5.1-pyhd8ed1ab_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/websockets-13.1-py311he736701_0.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/widgetsnbextension-4.0.13-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/noarch/win_inet_pton-1.1.0-pyh7428d3b_7.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxau-1.0.11-h0e40799_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xorg-libxdmcp-1.1.5-h0e40799_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/xz-5.2.6-h8d14728_0.tar.bz2 - conda: https://conda.anaconda.org/conda-forge/win-64/yaml-0.2.5-h8ffe710_2.tar.bz2 + - conda: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-ha9f60a1_6.conda + - conda: https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_0.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zlib-1.3.1-h2466b09_2.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstandard-0.23.0-py311h53056dc_1.conda - conda: https://conda.anaconda.org/conda-forge/win-64/zstd-1.5.6-h0ea2cb4_0.conda @@ -869,6 +1054,27 @@ packages: license_family: MIT size: 3099891 timestamp: 1729591445742 +- kind: conda + name: anypytools + version: 1.13.0 + build: py311h38be061_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/anypytools-1.13.0-py311h38be061_0.conda + sha256: 1fd1fa3b46ef0a3b62d4257f28480cdc09731f646dc418bc8d6d6e615a08bde6 + md5: 9f3762631ffc963de276f185a1d2a188 + depends: + - python 3.11.* *_cpython + - h5py >=2.5 + - setuptools + - pydoe + - tqdm + - scipy >=0.15 + - pygments_anyscript + - python_abi 3.11.* *_cp311 + license: MIT + license_family: MIT + size: 3100982 + timestamp: 1729591411871 - kind: conda name: asttokens version: 2.4.1 @@ -885,6 +1091,21 @@ packages: license_family: Apache size: 28922 timestamp: 1698341257884 +- kind: conda + name: attrs + version: 24.2.0 + build: pyh71513ae_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/attrs-24.2.0-pyh71513ae_0.conda + sha256: 28dba85a7e0f7fb57d7315e13f603d1e41b83c5b88aa2a602596b52c833a2ff8 + md5: 6732fa52eb8e66e5afeb32db8701a791 + depends: + - python >=3.7 + license: MIT + license_family: MIT + size: 56048 + timestamp: 1722977241383 - kind: conda name: babel version: 2.16.0 @@ -1068,6 +1289,21 @@ packages: license_family: BSD size: 252783 timestamp: 1720974456583 +- kind: conda + name: c-ares + version: 1.34.3 + build: heb4867d_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/c-ares-1.34.3-heb4867d_0.conda + sha256: 1015d731c05ef7de298834833d680b08dea58980b907f644345bd457f9498c99 + md5: 09a6c610d002e54e18353c06ef61a253 + depends: + - __glibc >=2.28,<3.0.a0 + - libgcc >=13 + license: MIT + license_family: MIT + size: 205575 + timestamp: 1731181837907 - kind: conda name: ca-certificates version: 2024.8.30 @@ -1293,6 +1529,22 @@ packages: license_family: BSD size: 25170 timestamp: 1666700778190 +- kind: conda + name: comm + version: 0.2.2 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/comm-0.2.2-pyhd8ed1ab_0.conda + sha256: e923acf02708a8a0b591f3bce4bdc11c8e63b73198b99b35fe6cd96bfb6a0dbe + md5: 948d84721b578d426294e17a02e24cbb + depends: + - python >=3.6 + - traitlets >=5.3 + license: BSD-3-Clause + license_family: BSD + size: 12134 + timestamp: 1710320435158 - kind: conda name: contourpy version: 1.3.1 @@ -1331,6 +1583,22 @@ packages: license_family: BSD size: 278209 timestamp: 1731428493722 +- kind: conda + name: cpython + version: 3.11.10 + build: py311hd8ed1ab_3 + build_number: 3 + subdir: noarch + noarch: generic + url: https://conda.anaconda.org/conda-forge/noarch/cpython-3.11.10-py311hd8ed1ab_3.conda + sha256: 3b2460b6cce53ce95f1f3aeb8ef7a50b356226dc48d45265ce5e585fc5e8cbed + md5: b6d1a583921c24bb45feef32262b10aa + depends: + - python 3.11.10.* + - python_abi * *_cp311 + license: Python-2.0 + size: 45741 + timestamp: 1729041746101 - kind: conda name: cssselect2 version: 0.2.1 @@ -1363,6 +1631,42 @@ packages: license_family: BSD size: 13458 timestamp: 1696677888423 +- kind: conda + name: debugpy + version: 1.8.7 + build: py311hda3d55a_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/debugpy-1.8.7-py311hda3d55a_0.conda + sha256: 714deaaa5ed757b259062f7979c2ed5e9fea66361ef72a5b63c644ea4b75232d + md5: 351ff5f8591856aa848a2cc89ca53957 + depends: + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + size: 3548917 + timestamp: 1728594758491 +- kind: conda + name: debugpy + version: 1.8.7 + build: py311hfdbb021_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/debugpy-1.8.7-py311hfdbb021_0.conda + sha256: 540d6b509d68ba77f6ad06f3bc419ba42930f1b3139ab4fda0476e12de8d7f4d + md5: e02dac14097eb3605342cd35c13f0a26 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - libstdcxx >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: MIT + license_family: MIT + size: 2544636 + timestamp: 1728594337523 - kind: conda name: debugpy version: 1.8.8 @@ -1774,6 +2078,42 @@ packages: license_family: LGPL size: 95406 timestamp: 1711634622644 +- kind: conda + name: greenlet + version: 3.1.1 + build: py311hda3d55a_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/greenlet-3.1.1-py311hda3d55a_0.conda + sha256: 90d5e012f3dcf40959fe9b0cd2ff9f135a8e1062ccdbd6fc80b2a9fff1667497 + md5: dc75389e40e61df3477a119db83e108b + depends: + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + size: 224725 + timestamp: 1726922741437 +- kind: conda + name: greenlet + version: 3.1.1 + build: py311hfdbb021_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/greenlet-3.1.1-py311hfdbb021_0.conda + sha256: 00d5ecec1b7898f209d2e3459a2acb02393a75fa8030025b553bf75c27397324 + md5: 7cfbc8bdc38951bee4f8e74a08cc0af3 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - libstdcxx >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: MIT + license_family: MIT + size: 240358 + timestamp: 1726922321375 - kind: conda name: h11 version: 0.14.0 @@ -1829,6 +2169,27 @@ packages: license_family: BSD size: 1115485 timestamp: 1729618324428 +- kind: conda + name: h5py + version: 3.12.1 + build: nompi_py311hb639ac4_102 + build_number: 102 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/h5py-3.12.1-nompi_py311hb639ac4_102.conda + sha256: a21932ada1e7a9f95433e4b29980316dac72428bedd738e1af73cb269ed36e2a + md5: c2438b0f0016fbd7ea93e872c9b93309 + depends: + - __glibc >=2.17,<3.0.a0 + - cached-property + - hdf5 >=1.14.3,<1.14.4.0a0 + - libgcc >=13 + - numpy >=1.19,<3 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: BSD-3-Clause + license_family: BSD + size: 1391677 + timestamp: 1729617884282 - kind: conda name: harfbuzz version: 9.0.0 @@ -1894,6 +2255,28 @@ packages: license_family: BSD size: 2039111 timestamp: 1717587493910 +- kind: conda + name: hdf5 + version: 1.14.3 + build: nompi_hdf9ad27_105 + build_number: 105 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/hdf5-1.14.3-nompi_hdf9ad27_105.conda + sha256: 2278fa07da6f96e807d402cd55480624d67d2dee202191aaaf278ce5ab23605a + md5: 7e1729554e209627636a0f6fabcdd115 + depends: + - libaec >=1.1.3,<2.0a0 + - libcurl >=8.8.0,<9.0a0 + - libgcc-ng >=12 + - libgfortran-ng + - libgfortran5 >=12.3.0 + - libstdcxx-ng >=12 + - libzlib >=1.2.13,<2.0a0 + - openssl >=3.3.1,<4.0a0 + license: BSD-3-Clause + license_family: BSD + size: 3911675 + timestamp: 1717587866574 - kind: conda name: hpack version: 4.0.0 @@ -2004,6 +2387,40 @@ packages: license_family: MIT size: 10164 timestamp: 1656939625410 +- kind: conda + name: importlib-metadata + version: 8.5.0 + build: pyha770c72_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/importlib-metadata-8.5.0-pyha770c72_0.conda + sha256: 7194700ce1a5ad2621fd68e894dd8c1ceaff9a38723e6e0e5298fdef13017b1c + md5: 54198435fce4d64d8a89af22573012a8 + depends: + - python >=3.8 + - zipp >=0.5 + license: Apache-2.0 + license_family: APACHE + size: 28646 + timestamp: 1726082927916 +- kind: conda + name: importlib_resources + version: 6.4.5 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/importlib_resources-6.4.5-pyhd8ed1ab_0.conda + sha256: 2cb9db3e40033c3df72d3defc678a012840378fd55a67e4351363d4b321a0dc1 + md5: c808991d29b9838fb4d96ce8267ec9ec + depends: + - python >=3.8 + - zipp >=3.1.0 + constrains: + - importlib-resources >=6.4.5,<6.4.6.0a0 + license: Apache-2.0 + license_family: APACHE + size: 32725 + timestamp: 1725921462405 - kind: conda name: iniconfig version: 2.0.0 @@ -2032,6 +2449,62 @@ packages: license_family: Proprietary size: 1852356 timestamp: 1723739573141 +- kind: conda + name: ipykernel + version: 6.29.5 + build: pyh3099207_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh3099207_0.conda + sha256: 33cfd339bb4efac56edf93474b37ddc049e08b1b4930cf036c893cc1f5a1f32a + md5: b40131ab6a36ac2c09b7c57d4d3fbf99 + depends: + - __linux + - comm >=0.1.1 + - debugpy >=1.6.5 + - ipython >=7.23.1 + - jupyter_client >=6.1.12 + - jupyter_core >=4.12,!=5.0.* + - matplotlib-inline >=0.1 + - nest-asyncio + - packaging + - psutil + - python >=3.8 + - pyzmq >=24 + - tornado >=6.1 + - traitlets >=5.4.0 + license: BSD-3-Clause + license_family: BSD + size: 119084 + timestamp: 1719845605084 +- kind: conda + name: ipykernel + version: 6.29.5 + build: pyh4bbf305_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/ipykernel-6.29.5-pyh4bbf305_0.conda + sha256: dc569094125127c0078aa536f78733f383dd7e09507277ef8bcd1789786e7086 + md5: 18df5fc4944a679e085e0e8f31775fc8 + depends: + - __win + - comm >=0.1.1 + - debugpy >=1.6.5 + - ipython >=7.23.1 + - jupyter_client >=6.1.12 + - jupyter_core >=4.12,!=5.0.* + - matplotlib-inline >=0.1 + - nest-asyncio + - packaging + - psutil + - python >=3.8 + - pyzmq >=24 + - tornado >=6.1 + - traitlets >=5.4.0 + license: BSD-3-Clause + license_family: BSD + size: 119853 + timestamp: 1719845858082 - kind: conda name: ipython version: 8.29.0 @@ -2086,6 +2559,26 @@ packages: license_family: BSD size: 600237 timestamp: 1729866942619 +- kind: conda + name: ipywidgets + version: 8.1.5 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/ipywidgets-8.1.5-pyhd8ed1ab_0.conda + sha256: ae27447f300c85a184d5d4fa08674eaa93931c12275daca981eb986f5d7795b3 + md5: a022d34163147d16b27de86dc53e93fc + depends: + - comm >=0.1.3 + - ipython >=6.1.0 + - jupyterlab_widgets >=3.0.13,<3.1.0 + - python >=3.7 + - traitlets >=4.3.1 + - widgetsnbextension >=4.0.13,<4.1.0 + license: BSD-3-Clause + license_family: BSD + size: 113497 + timestamp: 1724334989324 - kind: conda name: jedi version: 0.19.2 @@ -2117,6 +2610,157 @@ packages: license_family: BSD size: 111565 timestamp: 1715127275924 +- kind: conda + name: jsonschema + version: 4.23.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-4.23.0-pyhd8ed1ab_0.conda + sha256: 7d0c4c0346b26be9f220682b7c5c0d84606d48c6dbc36fc238e4452dda733aff + md5: da304c192ad59975202859b367d0f6a2 + depends: + - attrs >=22.2.0 + - importlib_resources >=1.4.0 + - jsonschema-specifications >=2023.03.6 + - pkgutil-resolve-name >=1.3.10 + - python >=3.8 + - referencing >=0.28.4 + - rpds-py >=0.7.1 + license: MIT + license_family: MIT + size: 74323 + timestamp: 1720529611305 +- kind: conda + name: jsonschema-specifications + version: 2024.10.1 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jsonschema-specifications-2024.10.1-pyhd8ed1ab_0.conda + sha256: 82f8bed0f21dc0b3aff40dd4e39d77e85b93b0417bc5659b001e0109341b8b98 + md5: 720745920222587ef942acfbc578b584 + depends: + - python >=3.8 + - referencing >=0.31.0 + license: MIT + license_family: MIT + size: 16165 + timestamp: 1728418976382 +- kind: conda + name: jupyter-cache + version: 1.0.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jupyter-cache-1.0.0-pyhd8ed1ab_0.conda + sha256: 16dd4d3601d0532bbe755267486d62f7c77e099d0f0517e20ef635f836425d57 + md5: b667cf7b57baa559f628d374f017fa32 + depends: + - attrs + - click + - importlib-metadata + - nbclient >=0.2 + - nbformat + - python >=3.9 + - pyyaml + - sqlalchemy >=1.3.12,<3 + - tabulate + license: MIT + license_family: MIT + size: 31425 + timestamp: 1701833284830 +- kind: conda + name: jupyter_client + version: 8.6.3 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jupyter_client-8.6.3-pyhd8ed1ab_0.conda + sha256: 4419c85e209a715f551a5c9bead746f29ee9d0fc41e772a76db3868622795671 + md5: a14218cfb29662b4a19ceb04e93e298e + depends: + - importlib-metadata >=4.8.3 + - jupyter_core >=4.12,!=5.0.* + - python >=3.8 + - python-dateutil >=2.8.2 + - pyzmq >=23.0 + - tornado >=6.2 + - traitlets >=5.3 + license: BSD-3-Clause + license_family: BSD + size: 106055 + timestamp: 1726610805505 +- kind: conda + name: jupyter_core + version: 5.7.2 + build: pyh31011fe_1 + build_number: 1 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh31011fe_1.conda + sha256: 732b1e8536bc22a5a174baa79842d79db2f4956d90293dd82dc1b3f6099bcccd + md5: 0a2980dada0dd7fd0998f0342308b1b1 + depends: + - __unix + - platformdirs >=2.5 + - python >=3.8 + - traitlets >=5.3 + license: BSD-3-Clause + license_family: BSD + size: 57671 + timestamp: 1727163547058 +- kind: conda + name: jupyter_core + version: 5.7.2 + build: pyh5737063_1 + build_number: 1 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jupyter_core-5.7.2-pyh5737063_1.conda + sha256: 7c903b2d62414c3e8da1f78db21f45b98de387aae195f8ca959794113ba4b3fd + md5: 46d87d1c0ea5da0aae36f77fa406e20d + depends: + - __win + - cpython + - platformdirs >=2.5 + - python >=3.8 + - pywin32 >=300 + - traitlets >=5.3 + license: BSD-3-Clause + license_family: BSD + size: 58269 + timestamp: 1727164026641 +- kind: conda + name: jupyterlab_widgets + version: 3.0.13 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/jupyterlab_widgets-3.0.13-pyhd8ed1ab_0.conda + sha256: 0e7ec7936d766f39d5a0a8eafc63f5543f488883ad3645246bc22db6d632566e + md5: ccea946e6dce9f330fbf7fca97fe8de7 + depends: + - python >=3.7 + constrains: + - jupyterlab >=3,<5 + license: BSD-3-Clause + license_family: BSD + size: 186024 + timestamp: 1724331451102 +- kind: conda + name: keyutils + version: 1.6.1 + build: h166bdaf_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/keyutils-1.6.1-h166bdaf_0.tar.bz2 + sha256: 150c05a6e538610ca7c43beb3a40d65c90537497a4f6a5f4d15ec0451b6f5ebb + md5: 30186d27e2c9fa62b45fb1476b7200e3 + depends: + - libgcc-ng >=10.3.0 + license: LGPL-2.1-or-later + size: 117831 + timestamp: 1646151697040 - kind: conda name: kiwisolver version: 1.4.7 @@ -2153,6 +2797,25 @@ packages: license_family: BSD size: 72393 timestamp: 1725459421768 +- kind: conda + name: krb5 + version: 1.21.3 + build: h659f571_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/krb5-1.21.3-h659f571_0.conda + sha256: 99df692f7a8a5c27cd14b5fb1374ee55e756631b9c3d659ed3ee60830249b238 + md5: 3f43953b7d3fb3aaa1d0d0723d91e368 + depends: + - keyutils >=1.6.1,<2.0a0 + - libedit >=3.1.20191231,<3.2.0a0 + - libedit >=3.1.20191231,<4.0a0 + - libgcc-ng >=12 + - libstdcxx-ng >=12 + - openssl >=3.3.1,<4.0a0 + license: MIT + license_family: MIT + size: 1370023 + timestamp: 1719463201255 - kind: conda name: krb5 version: 1.21.3 @@ -2251,6 +2914,21 @@ packages: license_family: Apache size: 194365 timestamp: 1657977692274 +- kind: conda + name: libaec + version: 1.1.3 + build: h59595ed_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libaec-1.1.3-h59595ed_0.conda + sha256: 2ef420a655528bca9d269086cf33b7e90d2f54ad941b437fb1ed5eca87cee017 + md5: 5e97e271911b8b2001a8b71860c32faa + depends: + - libgcc-ng >=12 + - libstdcxx-ng >=12 + license: BSD-2-Clause + license_family: BSD + size: 35446 + timestamp: 1711021212685 - kind: conda name: libaec version: 1.1.3 @@ -2511,6 +3189,27 @@ packages: license_family: MIT size: 342388 timestamp: 1726660508261 +- kind: conda + name: libcurl + version: 8.10.1 + build: hbbe4b11_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libcurl-8.10.1-hbbe4b11_0.conda + sha256: 54e6114dfce566c3a22ad3b7b309657e3600cdb668398e95f1301360d5d52c99 + md5: 6e801c50a40301f6978c53976917b277 + depends: + - __glibc >=2.17,<3.0.a0 + - krb5 >=1.21.3,<1.22.0a0 + - libgcc >=13 + - libnghttp2 >=1.58.0,<2.0a0 + - libssh2 >=1.11.0,<2.0a0 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.3.2,<4.0a0 + - zstd >=1.5.6,<1.6.0a0 + license: curl + license_family: MIT + size: 424900 + timestamp: 1726659794676 - kind: conda name: libdeflate version: '1.22' @@ -2542,6 +3241,37 @@ packages: license_family: MIT size: 72242 timestamp: 1728177071251 +- kind: conda + name: libedit + version: 3.1.20191231 + build: he28a2e2_2 + build_number: 2 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libedit-3.1.20191231-he28a2e2_2.tar.bz2 + sha256: a57d37c236d8f7c886e01656f4949d9dcca131d2a0728609c6f7fa338b65f1cf + md5: 4d331e44109e3f0e19b4cb8f9b82f3e1 + depends: + - libgcc-ng >=7.5.0 + - ncurses >=6.2,<7.0.0a0 + license: BSD-2-Clause + license_family: BSD + size: 123878 + timestamp: 1597616541093 +- kind: conda + name: libev + version: '4.33' + build: hd590300_2 + build_number: 2 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libev-4.33-hd590300_2.conda + sha256: 1cd6048169fa0395af74ed5d8f1716e22c19a81a8a36f934c110ca3ad4dd27b4 + md5: 172bf1cd1ff8629f2b1179945ed45055 + depends: + - libgcc-ng >=12 + license: BSD-2-Clause + license_family: BSD + size: 112766 + timestamp: 1702146165126 - kind: conda name: libexpat version: 2.6.4 @@ -2698,6 +3428,21 @@ packages: license_family: GPL size: 53997 timestamp: 1729027752995 +- kind: conda + name: libgfortran-ng + version: 14.2.0 + build: h69a702a_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libgfortran-ng-14.2.0-h69a702a_1.conda + sha256: 423f1e2403f0c665748e42d335e421e53fd03c08d457cfb6f360d329d9459851 + md5: 0a7f4cd238267c88e5d69f7826a407eb + depends: + - libgfortran 14.2.0 h69a702a_1 + license: GPL-3.0-only WITH GCC-exception-3.1 + license_family: GPL + size: 54106 + timestamp: 1729027945817 - kind: conda name: libgfortran5 version: 14.2.0 @@ -2941,6 +3686,27 @@ packages: license_family: BSD size: 3973640 timestamp: 1729643717290 +- kind: conda + name: libnghttp2 + version: 1.64.0 + build: h161d5f1_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libnghttp2-1.64.0-h161d5f1_0.conda + sha256: b0f2b3695b13a989f75d8fd7f4778e1c7aabe3b36db83f0fe80b2cd812c0e975 + md5: 19e57602824042dfd0446292ef90488b + depends: + - __glibc >=2.17,<3.0.a0 + - c-ares >=1.32.3,<2.0a0 + - libev >=4.33,<4.34.0a0 + - libev >=4.33,<5.0a0 + - libgcc >=13 + - libstdcxx >=13 + - libzlib >=1.3.1,<2.0a0 + - openssl >=3.3.2,<4.0a0 + license: MIT + license_family: MIT + size: 647599 + timestamp: 1729571887612 - kind: conda name: libnsl version: 2.0.1 @@ -3065,6 +3831,34 @@ packages: license_family: MIT size: 888474 timestamp: 1725439097733 +- kind: conda + name: libsodium + version: 1.0.20 + build: h4ab18f5_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libsodium-1.0.20-h4ab18f5_0.conda + sha256: 0105bd108f19ea8e6a78d2d994a6d4a8db16d19a41212070d2d1d48a63c34161 + md5: a587892d3c13b6621a6091be690dbca2 + depends: + - libgcc-ng >=12 + license: ISC + size: 205978 + timestamp: 1716828628198 +- kind: conda + name: libsodium + version: 1.0.20 + build: hc70643c_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/libsodium-1.0.20-hc70643c_0.conda + sha256: 7bcb3edccea30f711b6be9601e083ecf4f435b9407d70fc48fbcf9e5d69a0fc6 + md5: 198bb594f202b205c7d18b936fa4524f + depends: + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: ISC + size: 202344 + timestamp: 1716828757533 - kind: conda name: libsqlite version: 3.47.0 @@ -3097,6 +3891,22 @@ packages: license: Unlicense size: 875349 timestamp: 1730208050020 +- kind: conda + name: libssh2 + version: 1.11.0 + build: h0841786_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/libssh2-1.11.0-h0841786_0.conda + sha256: 50e47fd9c4f7bf841a11647ae7486f65220cfc988ec422a4475fe8d5a823824d + md5: 1f5a58e686b13bcfde88b93f547d23fe + depends: + - libgcc-ng >=12 + - libzlib >=1.2.13,<2.0.0a0 + - openssl >=3.1.1,<4.0a0 + license: BSD-3-Clause + license_family: BSD + size: 271133 + timestamp: 1685837707056 - kind: conda name: libssh2 version: 1.11.0 @@ -3602,6 +4412,31 @@ packages: license_family: Apache size: 12452 timestamp: 1600387789153 +- kind: conda + name: myst-nb + version: 1.1.2 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/myst-nb-1.1.2-pyhd8ed1ab_0.conda + sha256: f3dbbcc61717a0a3078393147dae111f658b0b057568500b4c68fd15e80214c1 + md5: 38e1b2f0f62e9976cf9fe54a54258e3c + depends: + - importlib-metadata + - ipykernel + - ipython + - jupyter-cache >=0.5 + - myst-parser >=1.0.0 + - nbclient + - nbformat >=5.0 + - python >=3.9 + - pyyaml + - sphinx >=5 + - typing_extensions + license: BSD-3-Clause + license_family: BSD + size: 62908 + timestamp: 1727267718083 - kind: conda name: myst-parser version: 4.0.0 @@ -3623,6 +4458,44 @@ packages: license_family: MIT size: 72798 timestamp: 1722964397370 +- kind: conda + name: nbclient + version: 0.10.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/nbclient-0.10.0-pyhd8ed1ab_0.conda + sha256: 589d72d36d61a23b39d6fff2c488f93e29e20de4fc6f5d315b5f2c16e81028bf + md5: 15b51397e0fe8ea7d7da60d83eb76ebc + depends: + - jupyter_client >=6.1.12 + - jupyter_core >=4.12,!=5.0.* + - nbformat >=5.1 + - python >=3.8 + - traitlets >=5.4 + license: BSD-3-Clause + license_family: BSD + size: 27851 + timestamp: 1710317767117 +- kind: conda + name: nbformat + version: 5.10.4 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/nbformat-5.10.4-pyhd8ed1ab_0.conda + sha256: 36fe73da4d37bc7ac2d1540526ecd294fbd09acda04e096181ab8f1ccd2b464c + md5: 0b57b5368ab7fc7cdc9e3511fa867214 + depends: + - jsonschema >=2.6 + - jupyter_core >=4.12,!=5.0.* + - python >=3.8 + - python-fastjsonschema >=2.15 + - traitlets >=5.1 + license: BSD-3-Clause + license_family: BSD + size: 101232 + timestamp: 1712239122969 - kind: conda name: ncurses version: '6.5' @@ -3638,6 +4511,21 @@ packages: license: X11 AND BSD-3-Clause size: 889086 timestamp: 1724658547447 +- kind: conda + name: nest-asyncio + version: 1.6.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/nest-asyncio-1.6.0-pyhd8ed1ab_0.conda + sha256: 30db21d1f7e59b3408b831a7e0417b83b53ee6223afae56482c5f26da3ceb49a + md5: 6598c056f64dc8800d40add25e4e2c34 + depends: + - python >=3.5 + license: BSD-2-Clause + license_family: BSD + size: 11638 + timestamp: 1705850780510 - kind: conda name: nomkl version: '1.0' @@ -4011,6 +4899,36 @@ packages: license_family: MIT size: 461854 timestamp: 1709239971654 +- kind: conda + name: pkgutil-resolve-name + version: 1.3.10 + build: pyhd8ed1ab_1 + build_number: 1 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/pkgutil-resolve-name-1.3.10-pyhd8ed1ab_1.conda + sha256: fecf95377134b0e8944762d92ecf7b0149c07d8186fb5db583125a2705c7ea0a + md5: 405678b942f2481cecdb3e010f4925d9 + depends: + - python >=3.6 + license: MIT AND PSF-2.0 + size: 10778 + timestamp: 1694617398467 +- kind: conda + name: platformdirs + version: 4.3.6 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/platformdirs-4.3.6-pyhd8ed1ab_0.conda + sha256: c81bdeadc4adcda216b2c7b373f0335f5c78cc480d1d55d10f21823590d7e46f + md5: fd8f2b18b65bbf62e8f653100690c8d2 + depends: + - python >=3.8 + license: MIT + license_family: MIT + size: 20625 + timestamp: 1726613611845 - kind: conda name: pluggy version: 1.5.0 @@ -4044,6 +4962,41 @@ packages: license_family: BSD size: 270271 timestamp: 1727341744544 +- kind: conda + name: psutil + version: 6.1.0 + build: py311h9ecbd09_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/psutil-6.1.0-py311h9ecbd09_0.conda + sha256: 2ac3f1ed6e6a2a0c67a3922f4b5faf382855ad02cc0c85c5d56291c7a94296d0 + md5: 0ffc1f53106a38f059b151c465891ed3 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: BSD-3-Clause + license_family: BSD + size: 505408 + timestamp: 1729847169876 +- kind: conda + name: psutil + version: 6.1.0 + build: py311he736701_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/psutil-6.1.0-py311he736701_0.conda + sha256: 303c988247c4b1638f1cc90cd40465f5c74ca0ecfd83114033af637654dc2b6b + md5: 307267e6a028bca3382d98e06a372ebf + depends: + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: BSD-3-Clause + license_family: BSD + size: 521434 + timestamp: 1729847606018 - kind: conda name: pthread-stubs version: '0.4' @@ -4370,6 +5323,21 @@ packages: license_family: APACHE size: 222742 timestamp: 1709299922152 +- kind: conda + name: python-fastjsonschema + version: 2.20.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/python-fastjsonschema-2.20.0-pyhd8ed1ab_0.conda + sha256: 7d8c931b89c9980434986b4deb22c2917b58d9936c3974139b9c10ae86fdfe60 + md5: b98d2018c01ce9980c03ee2850690fab + depends: + - python >=3.3 + license: BSD-3-Clause + license_family: BSD + size: 226165 + timestamp: 1718477110630 - kind: conda name: python_abi version: '3.11' @@ -4473,6 +5441,48 @@ packages: license_family: MIT size: 187901 timestamp: 1725456808581 +- kind: conda + name: pyzmq + version: 26.2.0 + build: py311h484c95c_3 + build_number: 3 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/pyzmq-26.2.0-py311h484c95c_3.conda + sha256: 4d3fc4cfac284efb83a903601586cc6ee18fb556d4bf84d3bd66af76517c463e + md5: 4836b00658e11b466b823216f6df2424 + depends: + - libsodium >=1.0.20,<1.0.21.0a0 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + - zeromq >=4.3.5,<4.3.6.0a0 + license: BSD-3-Clause + license_family: BSD + size: 371084 + timestamp: 1728642713666 +- kind: conda + name: pyzmq + version: 26.2.0 + build: py311h7deb3e3_3 + build_number: 3 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/pyzmq-26.2.0-py311h7deb3e3_3.conda + sha256: 3fdef7b3c43474b7225868776a373289a8fd92787ffdf8bed11cf7f39b4ac741 + md5: e0897de1d8979a3bb20ef031ae1f7d28 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - libsodium >=1.0.20,<1.0.21.0a0 + - libstdcxx >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - zeromq >=4.3.5,<4.4.0a0 + license: BSD-3-Clause + license_family: BSD + size: 389074 + timestamp: 1728642373938 - kind: conda name: qhull version: '2020.2' @@ -4521,6 +5531,23 @@ packages: license_family: GPL size: 281456 timestamp: 1679532220005 +- kind: conda + name: referencing + version: 0.35.1 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/referencing-0.35.1-pyhd8ed1ab_0.conda + sha256: be8d6d9e86b1a3fef5424127ff81782f8ca63d3058980859609f6f1ecdd34cb3 + md5: 0fc8b52192a8898627c3efae1003e9f6 + depends: + - attrs >=22.2.0 + - python >=3.8 + - rpds-py >=0.7.0 + license: MIT + license_family: MIT + size: 42210 + timestamp: 1714619625532 - kind: conda name: requests version: 2.32.3 @@ -4542,6 +5569,70 @@ packages: license_family: APACHE size: 58810 timestamp: 1717057174842 +- kind: conda + name: rpds-py + version: 0.21.0 + build: py311h533ab2d_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/rpds-py-0.21.0-py311h533ab2d_0.conda + sha256: 217c9ce9bcb50ea55ba1148a7b85ae945015c68ecae914707eff0fce5c175cdf + md5: 56ff25ebb744a6aa97ff02b8c263c892 + depends: + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + size: 211208 + timestamp: 1730923228503 +- kind: conda + name: rpds-py + version: 0.21.0 + build: py311h9e33e62_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/rpds-py-0.21.0-py311h9e33e62_0.conda + sha256: 41b1c00f08d2b09243ca184af6f4fe8ca9fee418a62aec1cf1555bfd0b1b2eac + md5: befdb32741d8686b860232ca80178d63 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + constrains: + - __glibc >=2.17 + license: MIT + license_family: MIT + size: 334025 + timestamp: 1730922823065 +- kind: conda + name: scipy + version: 1.14.1 + build: py311he9a78e4_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/scipy-1.14.1-py311he9a78e4_1.conda + sha256: 59482b974c36c375fdfd0bc3e5a3003ea2d2ae72b64b8f3deaeef5a851dbc91d + md5: 49ba89bf4d8a995efb99517d1c7aeb1e + depends: + - __glibc >=2.17,<3.0.a0 + - libblas >=3.9.0,<4.0a0 + - libcblas >=3.9.0,<4.0a0 + - libgcc >=13 + - libgfortran + - libgfortran5 >=13.3.0 + - liblapack >=3.9.0,<4.0a0 + - libstdcxx >=13 + - numpy <2.3 + - numpy >=1.19,<3 + - numpy >=1.23.5 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: BSD-3-Clause + license_family: BSD + size: 17592106 + timestamp: 1729481734425 - kind: conda name: scipy version: 1.14.1 @@ -4912,6 +6003,45 @@ packages: license_family: BSD size: 879435 timestamp: 1702567126562 +- kind: conda + name: sqlalchemy + version: 2.0.36 + build: py311h9ecbd09_0 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/sqlalchemy-2.0.36-py311h9ecbd09_0.conda + sha256: 6a9a79f5796b661d1ec3d3a6d274a01ed85685f6056a169b44874f3d09525870 + md5: 696cd42da0c3c1683a377abcd1e7db1e + depends: + - __glibc >=2.17,<3.0.a0 + - greenlet !=0.4.17 + - libgcc >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - typing-extensions >=4.6.0 + license: MIT + license_family: MIT + size: 3575665 + timestamp: 1729066534330 +- kind: conda + name: sqlalchemy + version: 2.0.36 + build: py311he736701_0 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/sqlalchemy-2.0.36-py311he736701_0.conda + sha256: 7146b8162ffe549b3441999042911dbccbb2814a54c335418c87f118de21163b + md5: 0f39b879890c4fad0ee0fcaeacc4e8c1 + depends: + - greenlet !=0.4.17 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - typing-extensions >=4.6.0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MIT + license_family: MIT + size: 3496905 + timestamp: 1729066638073 - kind: conda name: stack_data version: 0.6.2 @@ -4947,6 +6077,22 @@ packages: license_family: BSD size: 59059 timestamp: 1730305803101 +- kind: conda + name: tabulate + version: 0.9.0 + build: pyhd8ed1ab_1 + build_number: 1 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/tabulate-0.9.0-pyhd8ed1ab_1.tar.bz2 + sha256: f6e4a0dd24ba060a4af69ca79d32361a6678e61d78c73eb5e357909b025b4620 + md5: 4759805cce2d914c38472f70bf4d8bcb + depends: + - python >=3.7 + license: MIT + license_family: MIT + size: 35912 + timestamp: 1665138565317 - kind: conda name: tbb version: 2021.7.0 @@ -5014,19 +6160,56 @@ packages: timestamp: 1699202167581 - kind: conda name: tomli - version: 2.1.0 - build: pyhff2d567_0 + version: 2.0.2 + build: pyhd8ed1ab_0 subdir: noarch noarch: python - url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.1.0-pyhff2d567_0.conda - sha256: 354b8a64d4f3311179d85aefc529ca201a36afc1af090d0010c46be7b79f9a47 - md5: 3fa1089b4722df3a900135925f4519d9 + url: https://conda.anaconda.org/conda-forge/noarch/tomli-2.0.2-pyhd8ed1ab_0.conda + sha256: 5e742ba856168b606ac3c814d247657b1c33b8042371f1a08000bdc5075bc0cc + md5: e977934e00b355ff55ed154904044727 depends: - - python >=3.9 + - python >=3.7 license: MIT license_family: MIT - size: 18741 - timestamp: 1731426862834 + size: 18203 + timestamp: 1727974767524 +- kind: conda + name: tornado + version: 6.4.1 + build: py311h9ecbd09_1 + build_number: 1 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/tornado-6.4.1-py311h9ecbd09_1.conda + sha256: 21390d0c5708581959ebd89702433c1d06a56ddd834797a194b217f98e38df53 + md5: 616fed0b6f5c925250be779b05d1d7f7 + depends: + - __glibc >=2.17,<3.0.a0 + - libgcc >=13 + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + license: Apache-2.0 + license_family: Apache + size: 856725 + timestamp: 1724956239832 +- kind: conda + name: tornado + version: 6.4.1 + build: py311he736701_1 + build_number: 1 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/tornado-6.4.1-py311he736701_1.conda + sha256: 8e448bc682a6540a0aadc1f821c0d60f03d70272350caa2af519316fd1753f68 + md5: f361535f90629358e3ea8f2161b239f3 + depends: + - python >=3.11,<3.12.0a0 + - python_abi 3.11.* *_cp311 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: Apache-2.0 + license_family: Apache + size: 860730 + timestamp: 1724956581349 - kind: conda name: tqdm version: 4.67.0 @@ -5057,6 +6240,21 @@ packages: license_family: BSD size: 110187 timestamp: 1713535244513 +- kind: conda + name: typing-extensions + version: 4.12.2 + build: hd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/typing-extensions-4.12.2-hd8ed1ab_0.conda + sha256: d3b9a8ed6da7c9f9553c5fd8a4fca9c3e0ab712fa5f497859f82337d67533b73 + md5: 52d648bd608f5737b123f510bb5514b5 + depends: + - typing_extensions 4.12.2 pyha770c72_0 + license: PSF-2.0 + license_family: PSF + size: 10097 + timestamp: 1717802659025 - kind: conda name: typing_extensions version: 4.12.2 @@ -5390,6 +6588,21 @@ packages: license_family: BSD size: 240074 timestamp: 1727013802558 +- kind: conda + name: widgetsnbextension + version: 4.0.13 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/widgetsnbextension-4.0.13-pyhd8ed1ab_0.conda + sha256: d155adc10f8c96f76d4468dbe37b33b4334dadf5cd4a95841aa009ca9bced5fa + md5: 6372cd99502721bd7499f8d16b56268d + depends: + - python >=3.7 + license: BSD-3-Clause + license_family: BSD + size: 898656 + timestamp: 1724331433259 - kind: conda name: win_inet_pton version: 1.1.0 @@ -5629,6 +6842,59 @@ packages: license_family: MIT size: 63274 timestamp: 1641347623319 +- kind: conda + name: zeromq + version: 4.3.5 + build: h3b0a872_6 + build_number: 6 + subdir: linux-64 + url: https://conda.anaconda.org/conda-forge/linux-64/zeromq-4.3.5-h3b0a872_6.conda + sha256: e67288b1c98a31ee58a5c07bdd873dbe08e75f752e1ad605d5e8c0697339903e + md5: 113506c8d2d558e733f5c38f6bf08c50 + depends: + - __glibc >=2.17,<3.0.a0 + - krb5 >=1.21.3,<1.22.0a0 + - libgcc >=13 + - libsodium >=1.0.20,<1.0.21.0a0 + - libstdcxx >=13 + license: MPL-2.0 + license_family: MOZILLA + size: 335528 + timestamp: 1728364029042 +- kind: conda + name: zeromq + version: 4.3.5 + build: ha9f60a1_6 + build_number: 6 + subdir: win-64 + url: https://conda.anaconda.org/conda-forge/win-64/zeromq-4.3.5-ha9f60a1_6.conda + sha256: c37130692742cc43eedf4e23270c7d1634235acff50760025e9583f8b46b64e6 + md5: 33a78bbc44d6550c361abb058a0556e2 + depends: + - krb5 >=1.21.3,<1.22.0a0 + - libsodium >=1.0.20,<1.0.21.0a0 + - ucrt >=10.0.20348.0 + - vc >=14.2,<15 + - vc14_runtime >=14.29.30139 + license: MPL-2.0 + license_family: MOZILLA + size: 2701749 + timestamp: 1728364260886 +- kind: conda + name: zipp + version: 3.21.0 + build: pyhd8ed1ab_0 + subdir: noarch + noarch: python + url: https://conda.anaconda.org/conda-forge/noarch/zipp-3.21.0-pyhd8ed1ab_0.conda + sha256: 232a30e4b0045c9de5e168dda0328dc0e28df9439cdecdfb97dd79c1c82c4cec + md5: fee389bf8a4843bd7a2248ce11b7f188 + depends: + - python >=3.8 + license: MIT + license_family: MIT + size: 21702 + timestamp: 1731262194278 - kind: conda name: zlib version: 1.3.1 diff --git a/pixi.toml b/pixi.toml index 56522a3b..582e7caa 100644 --- a/pixi.toml +++ b/pixi.toml @@ -32,11 +32,16 @@ sphinx = ">=8.1.3,<9" pygments_anyscript = ">=1.4.0,<2" sphinx-togglebutton = ">=0.3.2,<0.4" sphinx-design = ">=0.6.1,<0.7" -myst-parser = ">=4.0.0,<5" jinja2 = ">=3.1.4,<4" -tomli = ">=2.1.0,<3" -sphinx-book-theme = ">=1.1.3,<2" +tomli = ">=2.0.1,<2.1" pytest = ">=8.3.3,<9" +myst-parser = ">=4.0.0,<5" +sphinx-book-theme = ">=1.1.3,<2" +myst-nb = ">=1.1.2,<2" +anypytools = ">=1.13.0,<2" +scipy = ">=1.14.1,<2" +ipywidgets = ">=8.1.5,<9" + [feature.test.target.win-64.dependencies]