Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Python computations in science and engineering (pycse) - helps with scientific computing tasks including nonlinear regression, uncertainty quantification, design of experiments (DOE), Latin hypercube sampling, surface response modeling, and neural network-based UQ with DPOSE. Use when working with numerical optimization, data fitting, experimental design, or uncertainty analysis.
.claude/skills/itamarzand88-pycse/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-02 | ✗→✓ | ▲ Improved | 24% | 0% |
| case-03 | ✗→✓ | ▲ Improved | -13% | 0% |
| case-05 | ✗→✓ | ▲ Improved | -24% | 0% |
| case-06 | ✗→✓ | ▲ Improved | -32% | 0% |
| case-07 | ✗→✓ | ▲ Improved | 9% | 0% |
<!-- source: pycse — https://raw.githubusercontent.com/jkitchin/pycse/master/src/pycse/SKILL.md -->
pycse is a comprehensive library for scientific computing, data analysis, and uncertainty quantification in Python.
nlinfit: Nonlinear least squares fitting with uncertainty quantificationregress: Linear regression with statisticsUse this skill when the user asks about:
pythonfrom pycse import nlinfit # Fit data to a model with uncertainty quantification pars, pint, se = nlinfit(model_func, x0, x, y)
pythonfrom pycse.sklearn.lhc import LatinSquare # Create a Latin hypercube design factors = {'Temperature': [20, 40, 60], 'Pressure': [1, 2, 3]} ls = LatinSquare(factors) design = ls.design()
pythonfrom pycse.sklearn.surface_response import SurfaceResponse # Design and fit a surface response model sr = SurfaceResponse( inputs=['red', 'green', 'blue'], outputs=['intensity'], bounds=[[0, 1], [0, 1], [0, 1]] ) design = sr.design() # ... run experiments ... sr.set_output(results) sr.fit()
pythonfrom pycse.sklearn.dpose import DPOSE from sklearn.pipeline import Pipeline from sklearn.preprocessing import StandardScaler # Create DPOSE model with uncertainty estimates model = Pipeline([ ('scaler', StandardScaler()), ('dpose', DPOSE( layers=(n_features, 50, 32), # (input, hidden, ensemble) loss_type='crps', # CRPS loss (recommended) activation='tanh', # Smooth activation maxiter=500 )) ]) model.fit(X_train, y_train) # Get predictions with uncertainty y_pred, y_std = model.named_steps['dpose'].predict( X_test_scaled, return_std=True )
pycse provides an MCP server for Claude Desktop with tools for:
To install the MCP server:
bashpycse mcp install
pycse includes a CLI for launching Jupyter Lab in a Docker container:
bashpycse launch # Launch Jupyter Lab pycse pull # Update Docker image pycse rm # Remove stuck container
For detailed documentation, see the pycse repository at: https://github.com/jkitchin/pycse
predict_ensemble() to get all ensemble membersnlinfit with initial parameter guesses| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | pass→pass | 5,399 | 3,834 | -29% | 1 | 1 | 0% | 1,033 | 1,952 | +89% | 0 | 0 | — |
case-01 | fail→fail | 12,669 | 11,359 | -10% | 1 | 1 | 0% | 2,858 | 3,949 | +38% | 0 | 0 | — |
case-02 | fail→pass | 8,471 | 5,645 | -33% | 1 | 1 | 0% | 1,930 | 2,400 | +24% | 0 | 0 | — |
case-03 | fail→pass | 16,007 | 9,270 | -42% | 1 | 1 | 0% | 3,741 | 3,249 | -13% | 0 | 0 | — |
case-05 | fail→pass | 20,429 | 2,759 | -86% | 1 | 1 | 0% | 2,286 | 1,745 | -24% | 0 | 0 | — |
case-06 | fail→pass | 14,375 | 5,200 | -64% | 1 | 1 | 0% | 3,317 | 2,257 | -32% | 0 | 0 | — |
case-07 | fail→pass | 7,421 | 2,590 | -65% | 1 | 1 | 0% | 1,580 | 1,730 | +9% | 0 | 0 | — |
case-08 | pass→pass | 11,268 | 2,681 | -76% | 1 | 1 | 0% | 2,255 | 1,652 | -27% | 0 | 0 | — |
case-09 | fail→pass | 17,035 | 1,116 | -93% | 1 | 1 | 0% | 1,936 | 1,305 | -33% | 0 | 0 | — |
case-10 | fail→pass | 8,951 | 1,041 | -88% | 1 | 1 | 0% | 1,914 | 1,255 | -34% | 0 | 0 | — |
case-11 | fail→pass | 3,172 | 968 | -69% | 1 | 1 | 0% | 692 | 1,270 | +84% | 0 | 0 | — |
case-12 | fail→pass | 4,196 | 1,145 | -73% | 1 | 1 | 0% | 877 | 1,320 | +51% | 0 | 0 | — |
case-13 | fail→pass | 5,783 | 2,402 | -58% | 1 | 1 | 0% | 1,316 | 1,726 | +31% | 0 | 0 | — |
case-14 | pass→pass | 5,325 | 2,304 | -57% | 1 | 1 | 0% | 1,143 | 1,518 | +33% | 0 | 0 | — |
case-15 | fail→pass | 7,616 | 3,084 | -60% | 1 | 1 | 0% | 1,599 | 1,711 | +7% | 0 | 0 | — |
case-16 | fail→pass | 14,773 | 2,135 | -86% | 1 | 1 | 0% | 2,753 | 1,584 | -42% | 0 | 0 | — |
case-17 | fail→pass | 10,687 | 1,500 | -86% | 1 | 1 | 0% | 2,284 | 1,439 | -37% | 0 | 0 | — |
case-18 | fail→pass | 11,085 | 1,576 | -86% | 1 | 1 | 0% | 2,133 | 1,411 | -34% | 0 | 0 | — |
case-19 | fail→pass | 11,834 | 2,536 | -79% | 1 | 1 | 0% | 2,449 | 1,649 | -33% | 0 | 0 | — |
case-20 | pass→pass | 7,975 | 5,179 | -35% | 1 | 1 | 0% | 1,849 | 2,440 | +32% | 0 | 0 | — |
case-21 | pass→pass | 5,899 | 3,790 | -36% | 1 | 1 | 0% | 1,510 | 2,020 | +34% | 0 | 0 | — |
case-22 | pass→pass | 2,910 | 2,317 | -20% | 1 | 1 | 0% | 582 | 1,592 | +174% | 0 | 0 | — |
case-23 | pass→pass | 2,650 | 2,865 | +8% | 1 | 1 | 0% | 551 | 1,716 | +211% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 23 cases were attempted. The headline lift of +65 percentage points is the difference between those two pass rates over the 23 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.