or run

npx @tessl/cli init
Log in

Version

Tile

Overview

Evals

Files

Files

docs

atmospheric-indicators.mdconversion-indicators.mdcore-computation.mdensemble-analysis.mdfire-weather.mdindex.mdland-indicators.mdsea-ice-indicators.mdspatial-analogs.mdstatistical-downscaling.mdstatistical-indicators.mdutilities.md

ensemble-analysis.mddocs/

0

# Ensemble Analysis

1

2

Multi-model climate ensemble processing and analysis tools for climate projection assessment and uncertainty quantification. Essential for climate change impact studies and decision-making under uncertainty.

3

4

## Capabilities

5

6

### Ensemble Creation and Management

7

8

Tools for creating and managing climate model ensembles.

9

10

```python { .api }

11

def create_ensemble(datasets, multiindex=True, resample_freq=None, **kwargs):

12

"""

13

Create ensemble dataset from multiple climate model datasets.

14

15

Parameters:

16

- datasets: list or dict, climate model datasets to combine

17

- multiindex: bool, use multiindex for ensemble dimensions

18

- resample_freq: str, optional resampling frequency

19

- **kwargs: additional ensemble creation parameters

20

21

Returns:

22

xr.Dataset: Combined ensemble dataset

23

"""

24

25

def ensemble_mean_std_max_min(ens, weights=None, **kwargs):

26

"""

27

Calculate ensemble statistics (mean, std, max, min).

28

29

Parameters:

30

- ens: xr.Dataset, ensemble dataset

31

- weights: xr.DataArray, optional weights for ensemble members

32

- **kwargs: additional statistical parameters

33

34

Returns:

35

xr.Dataset: Ensemble statistics

36

"""

37

38

def ensemble_percentiles(ens, values=[10, 25, 50, 75, 90], weights=None, **kwargs):

39

"""

40

Calculate ensemble percentiles.

41

42

Parameters:

43

- ens: xr.Dataset, ensemble dataset

44

- values: list, percentile values to calculate (0-100)

45

- weights: xr.DataArray, optional weights for members

46

- **kwargs: additional parameters

47

48

Returns:

49

xr.Dataset: Ensemble percentiles

50

"""

51

```

52

53

### Ensemble Agreement and Robustness

54

55

Methods for assessing ensemble agreement and robustness of climate projections.

56

57

```python { .api }

58

def robustness_fractions(ens, test="threshold", **kwargs):

59

"""

60

Calculate robustness fractions for ensemble agreement.

61

62

Parameters:

63

- ens: xr.Dataset, ensemble dataset

64

- test: str, robustness test ("threshold", "sign", "range")

65

- **kwargs: test-specific parameters

66

67

Returns:

68

xr.Dataset: Robustness fraction statistics

69

"""

70

71

def change_significance(ens, baseline_period, projection_period, **kwargs):

72

"""

73

Test significance of projected changes across ensemble.

74

75

Parameters:

76

- ens: xr.Dataset, ensemble dataset

77

- baseline_period: slice, baseline time period

78

- projection_period: slice, projection time period

79

- **kwargs: significance test parameters

80

81

Returns:

82

xr.Dataset: Change significance statistics

83

"""

84

```

85

86

## Usage Examples

87

88

```python

89

import xarray as xr

90

import xclim.ensembles as xce

91

92

# Load multiple model datasets

93

models = [

94

xr.open_dataset(f"model_{i}.nc") for i in range(1, 11)

95

]

96

97

# Create ensemble

98

ensemble = xce.create_ensemble(models, multiindex=True)

99

100

# Calculate ensemble statistics

101

ens_stats = xce.ensemble_mean_std_max_min(ensemble)

102

ens_percentiles = xce.ensemble_percentiles(ensemble, values=[10, 50, 90])

103

104

# Assess robustness

105

robustness = xce.robustness_fractions(ensemble, test="threshold")

106

```