prophet-rb 0.3.2 → 0.4.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (39) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/LICENSE.txt +1 -1
  4. data/README.md +158 -6
  5. data/data-raw/LICENSE-holidays.txt +20 -0
  6. data/data-raw/README.md +3 -0
  7. data/data-raw/generated_holidays.csv +29302 -61443
  8. data/lib/prophet/diagnostics.rb +349 -0
  9. data/lib/prophet/forecaster.rb +219 -15
  10. data/lib/prophet/holidays.rb +5 -2
  11. data/lib/prophet/plot.rb +60 -10
  12. data/lib/prophet/stan_backend.rb +10 -1
  13. data/lib/prophet/version.rb +1 -1
  14. data/lib/prophet.rb +5 -0
  15. data/stan/{unix/prophet.stan → prophet.stan} +8 -7
  16. data/vendor/aarch64-linux/bin/prophet +0 -0
  17. data/vendor/aarch64-linux/lib/libtbb.so.2 +0 -0
  18. data/vendor/aarch64-linux/lib/libtbbmalloc.so.2 +0 -0
  19. data/vendor/aarch64-linux/lib/libtbbmalloc_proxy.so.2 +0 -0
  20. data/vendor/aarch64-linux/licenses/sundials-license.txt +25 -63
  21. data/vendor/aarch64-linux/licenses/sundials-notice.txt +21 -0
  22. data/vendor/arm64-darwin/bin/prophet +0 -0
  23. data/vendor/arm64-darwin/lib/libtbb.dylib +0 -0
  24. data/vendor/arm64-darwin/lib/libtbbmalloc.dylib +0 -0
  25. data/vendor/arm64-darwin/licenses/sundials-license.txt +25 -63
  26. data/vendor/arm64-darwin/licenses/sundials-notice.txt +21 -0
  27. data/vendor/x86_64-darwin/bin/prophet +0 -0
  28. data/vendor/x86_64-darwin/lib/libtbb.dylib +0 -0
  29. data/vendor/x86_64-darwin/lib/libtbbmalloc.dylib +0 -0
  30. data/vendor/x86_64-darwin/licenses/sundials-license.txt +25 -63
  31. data/vendor/x86_64-darwin/licenses/sundials-notice.txt +21 -0
  32. data/vendor/x86_64-linux/bin/prophet +0 -0
  33. data/vendor/x86_64-linux/lib/libtbb.so.2 +0 -0
  34. data/vendor/x86_64-linux/lib/libtbbmalloc.so.2 +0 -0
  35. data/vendor/x86_64-linux/lib/libtbbmalloc_proxy.so.2 +0 -0
  36. data/vendor/x86_64-linux/licenses/sundials-license.txt +25 -63
  37. data/vendor/x86_64-linux/licenses/sundials-notice.txt +21 -0
  38. metadata +10 -4
  39. data/stan/win/prophet.stan +0 -175
data/lib/prophet/plot.rb CHANGED
@@ -111,6 +111,61 @@ module Prophet
111
111
  artists
112
112
  end
113
113
 
114
+ def self.plot_cross_validation_metric(df_cv, metric:, rolling_window: 0.1, ax: nil, figsize: [10, 6], color: "b", point_color: "gray")
115
+ if ax.nil?
116
+ fig = plt.figure(facecolor: "w", figsize: figsize)
117
+ ax = fig.add_subplot(111)
118
+ else
119
+ fig = ax.get_figure
120
+ end
121
+ # Get the metric at the level of individual predictions, and with the rolling window.
122
+ df_none = Diagnostics.performance_metrics(df_cv, metrics: [metric], rolling_window: -1)
123
+ df_h = Diagnostics.performance_metrics(df_cv, metrics: [metric], rolling_window: rolling_window)
124
+
125
+ # Some work because matplotlib does not handle timedelta
126
+ # Target ~10 ticks.
127
+ tick_w = df_none["horizon"].max * 1e9 / 10.0
128
+ # Find the largest time resolution that has <1 unit per bin.
129
+ dts = ["D", "h", "m", "s", "ms", "us", "ns"]
130
+ dt_names = ["days", "hours", "minutes", "seconds", "milliseconds", "microseconds", "nanoseconds"]
131
+ dt_conversions = [
132
+ 24 * 60 * 60 * 10 ** 9,
133
+ 60 * 60 * 10 ** 9,
134
+ 60 * 10 ** 9,
135
+ 10 ** 9,
136
+ 10 ** 6,
137
+ 10 ** 3,
138
+ 1.0
139
+ ]
140
+ # TODO update
141
+ i = 0
142
+ # dts.each_with_index do |dt, i|
143
+ # if np.timedelta64(1, dt) < np.timedelta64(tick_w, "ns")
144
+ # break
145
+ # end
146
+ # end
147
+
148
+ x_plt = df_none["horizon"] * 1e9 / dt_conversions[i].to_f
149
+ x_plt_h = df_h["horizon"] * 1e9 / dt_conversions[i].to_f
150
+
151
+ ax.plot(x_plt.to_a, df_none[metric].to_a, ".", alpha: 0.1, c: point_color)
152
+ ax.plot(x_plt_h.to_a, df_h[metric].to_a, "-", c: color)
153
+ ax.grid(true)
154
+
155
+ ax.set_xlabel("Horizon (#{dt_names[i]})")
156
+ ax.set_ylabel(metric)
157
+ fig
158
+ end
159
+
160
+ def self.plt
161
+ begin
162
+ require "matplotlib/pyplot"
163
+ rescue LoadError
164
+ raise Error, "Install the matplotlib gem for plots"
165
+ end
166
+ Matplotlib::Pyplot
167
+ end
168
+
114
169
  private
115
170
 
116
171
  def plot_forecast_component(fcst, name, ax: nil, uncertainty: true, plot_cap: false, figsize: [10, 6])
@@ -128,7 +183,7 @@ module Prophet
128
183
  ax.plot(fcst_t, fcst["floor"].to_a, ls: "--", c: "k")
129
184
  end
130
185
  if uncertainty && @uncertainty_samples
131
- artists += [ax.fill_between(fcst_t, fcst[name + "_lower"].to_a, fcst[name + "_upper"].to_a, color: "#0072B2", alpha: 0.2)]
186
+ artists += [ax.fill_between(fcst_t, fcst["#{name}_lower"].to_a, fcst["#{name}_upper"].to_a, color: "#0072B2", alpha: 0.2)]
132
187
  end
133
188
  # Specify formatting to workaround matplotlib issue #12925
134
189
  locator = dates.AutoDateLocator.new(interval_multiples: false)
@@ -174,7 +229,7 @@ module Prophet
174
229
  days = days.map { |v| v.strftime("%A") }
175
230
  artists += ax.plot(days.size.times.to_a, seas[name].to_a, ls: "-", c: "#0072B2")
176
231
  if uncertainty && @uncertainty_samples
177
- artists += [ax.fill_between(days.size.times.to_a, seas[name + "_lower"].to_a, seas[name + "_upper"].to_a, color: "#0072B2", alpha: 0.2)]
232
+ artists += [ax.fill_between(days.size.times.to_a, seas["#{name}_lower"].to_a, seas["#{name}_upper"].to_a, color: "#0072B2", alpha: 0.2)]
178
233
  end
179
234
  ax.grid(true, which: "major", c: "gray", ls: "-", lw: 1, alpha: 0.2)
180
235
  ax.set_xticks(days.size.times.to_a)
@@ -200,7 +255,7 @@ module Prophet
200
255
  seas = predict_seasonal_components(df_y)
201
256
  artists += ax.plot(to_pydatetime(df_y["ds"]), seas[name].to_a, ls: "-", c: "#0072B2")
202
257
  if uncertainty && @uncertainty_samples
203
- artists += [ax.fill_between(to_pydatetime(df_y["ds"]), seas[name + "_lower"].to_a, seas[name + "_upper"].to_a, color: "#0072B2", alpha: 0.2)]
258
+ artists += [ax.fill_between(to_pydatetime(df_y["ds"]), seas["#{name}_lower"].to_a, seas["#{name}_upper"].to_a, color: "#0072B2", alpha: 0.2)]
204
259
  end
205
260
  ax.grid(true, which: "major", c: "gray", ls: "-", lw: 1, alpha: 0.2)
206
261
  months = dates.MonthLocator.new((1..12).to_a, bymonthday: 1, interval: 2)
@@ -233,7 +288,7 @@ module Prophet
233
288
  seas = predict_seasonal_components(df_y)
234
289
  artists += ax.plot(to_pydatetime(df_y["ds"]), seas[name].to_a, ls: "-", c: "#0072B2")
235
290
  if uncertainty && @uncertainty_samples
236
- artists += [ax.fill_between(to_pydatetime(df_y["ds"]), seas[name + "_lower"].to_a, seas[name + "_upper"].to_a, color: "#0072B2", alpha: 0.2)]
291
+ artists += [ax.fill_between(to_pydatetime(df_y["ds"]), seas["#{name}_lower"].to_a, seas["#{name}_upper"].to_a, color: "#0072B2", alpha: 0.2)]
237
292
  end
238
293
  ax.grid(true, which: "major", c: "gray", ls: "-", lw: 1, alpha: 0.2)
239
294
  step = (finish - start) / (7 - 1).to_f
@@ -263,12 +318,7 @@ module Prophet
263
318
  end
264
319
 
265
320
  def plt
266
- begin
267
- require "matplotlib/pyplot"
268
- rescue LoadError
269
- raise Error, "Install the matplotlib gem for plots"
270
- end
271
- Matplotlib::Pyplot
321
+ Plot.plt
272
322
  end
273
323
 
274
324
  def dates
@@ -13,6 +13,11 @@ module Prophet
13
13
 
14
14
  def fit(stan_init, stan_data, **kwargs)
15
15
  stan_init, stan_data = prepare_data(stan_init, stan_data)
16
+
17
+ if !kwargs[:inits] && kwargs[:init]
18
+ kwargs[:inits] = prepare_data(kwargs.delete(:init), stan_data)[0]
19
+ end
20
+
16
21
  kwargs[:algorithm] ||= stan_data["T"] < 100 ? "Newton" : "LBFGS"
17
22
  iterations = 10000
18
23
 
@@ -49,6 +54,10 @@ module Prophet
49
54
  def sampling(stan_init, stan_data, samples, **kwargs)
50
55
  stan_init, stan_data = prepare_data(stan_init, stan_data)
51
56
 
57
+ if !kwargs[:inits] && kwargs[:init]
58
+ kwargs[:inits] = prepare_data(kwargs.delete(:init), stan_data)[0]
59
+ end
60
+
52
61
  kwargs[:chains] ||= 4
53
62
  kwargs[:warmup_iters] ||= samples / 2
54
63
 
@@ -128,7 +137,7 @@ module Prophet
128
137
  stan_data["t_change"] = stan_data["t_change"].to_a
129
138
  stan_data["s_a"] = stan_data["s_a"].to_a
130
139
  stan_data["s_m"] = stan_data["s_m"].to_a
131
- stan_data["X"] = stan_data["X"].to_numo.to_a
140
+ stan_data["X"] = stan_data["X"].respond_to?(:to_numo) ? stan_data["X"].to_numo.to_a : stan_data["X"].to_a
132
141
  stan_init["delta"] = stan_init["delta"].to_a
133
142
  stan_init["beta"] = stan_init["beta"].to_a
134
143
  [stan_init, stan_data]
@@ -1,3 +1,3 @@
1
1
  module Prophet
2
- VERSION = "0.3.2"
2
+ VERSION = "0.4.2"
3
3
  end
data/lib/prophet.rb CHANGED
@@ -8,6 +8,7 @@ require "logger"
8
8
  require "set"
9
9
 
10
10
  # modules
11
+ require "prophet/diagnostics"
11
12
  require "prophet/holidays"
12
13
  require "prophet/plot"
13
14
  require "prophet/forecaster"
@@ -104,4 +105,8 @@ module Prophet
104
105
  # filter df["ds"] to ensure dates/times in same format as input
105
106
  df["ds"][(df["y"] < forecast["yhat_lower"]) | (df["y"] > forecast["yhat_upper"])].to_a
106
107
  end
108
+
109
+ def self.from_json(model_json)
110
+ Forecaster.from_json(model_json)
111
+ end
107
112
  end
@@ -101,8 +101,9 @@ data {
101
101
  }
102
102
 
103
103
  transformed data {
104
- matrix[T, S] A;
105
- A = get_changepoint_matrix(t, t_change, T, S);
104
+ matrix[T, S] A = get_changepoint_matrix(t, t_change, T, S);
105
+ matrix[T, K] X_sa = X .* rep_matrix(s_a', T);
106
+ matrix[T, K] X_sm = X .* rep_matrix(s_m', T);
106
107
  }
107
108
 
108
109
  parameters {
@@ -133,10 +134,10 @@ model {
133
134
  beta ~ normal(0, sigmas);
134
135
 
135
136
  // Likelihood
136
- y ~ normal(
137
- trend
138
- .* (1 + X * (beta .* s_m))
139
- + X * (beta .* s_a),
140
- sigma_obs
137
+ y ~ normal_id_glm(
138
+ X_sa,
139
+ trend .* (1 + X_sm * beta),
140
+ beta,
141
+ sigma_obs
141
142
  );
142
143
  }
Binary file
Binary file
@@ -1,67 +1,29 @@
1
- Copyright (c) 2002-2016, Lawrence Livermore National Security.
2
- Produced at the Lawrence Livermore National Laboratory.
3
- Written by A.C. Hindmarsh, D.R. Reynolds, R. Serban, C.S. Woodward,
4
- S.D. Cohen, A.G. Taylor, S. Peles, L.E. Banks, and D. Shumaker.
5
- LLNL-CODE-667205 (ARKODE)
6
- UCRL-CODE-155951 (CVODE)
7
- UCRL-CODE-155950 (CVODES)
8
- UCRL-CODE-155952 (IDA)
9
- UCRL-CODE-237203 (IDAS)
10
- LLNL-CODE-665877 (KINSOL)
11
- All rights reserved.
1
+ BSD 3-Clause License
12
2
 
13
- This file is part of SUNDIALS. For details,
14
- see http://computation.llnl.gov/projects/sundials
3
+ Copyright (c) 2002-2022, Lawrence Livermore National Security and Southern Methodist University.
4
+ All rights reserved.
15
5
 
16
6
  Redistribution and use in source and binary forms, with or without
17
- modification, are permitted provided that the following conditions
18
- are met:
19
-
20
- 1. Redistributions of source code must retain the above copyright
21
- notice, this list of conditions and the disclaimer below.
22
-
23
- 2. Redistributions in binary form must reproduce the above copyright
24
- notice, this list of conditions and the disclaimer (as noted below)
25
- in the documentation and/or other materials provided with the
26
- distribution.
27
-
28
- 3. Neither the name of the LLNS/LLNL nor the names of its contributors
29
- may be used to endorse or promote products derived from this software
30
- without specific prior written permission.
31
-
32
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
35
- FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
36
- LAWRENCE LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF
37
- ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
38
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
39
- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
40
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
41
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
42
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ * Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ * Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
43
29
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
44
-
45
- Additional BSD Notice
46
- ---------------------
47
- 1. This notice is required to be provided under our contract with
48
- the U.S. Department of Energy (DOE). This work was produced at
49
- Lawrence Livermore National Laboratory under Contract
50
- No. DE-AC52-07NA27344 with the DOE.
51
-
52
- 2. Neither the United States Government nor Lawrence Livermore
53
- National Security, LLC nor any of their employees, makes any warranty,
54
- express or implied, or assumes any liability or responsibility for the
55
- accuracy, completeness, or usefulness of any information, apparatus,
56
- product, or process disclosed, or represents that its use would not
57
- infringe privately-owned rights.
58
-
59
- 3. Also, reference herein to any specific commercial products, process,
60
- or services by trade name, trademark, manufacturer or otherwise does
61
- not necessarily constitute or imply its endorsement, recommendation,
62
- or favoring by the United States Government or Lawrence Livermore
63
- National Security, LLC. The views and opinions of authors expressed
64
- herein do not necessarily state or reflect those of the United States
65
- Government or Lawrence Livermore National Security, LLC, and shall
66
- not be used for advertising or product endorsement purposes.
67
-
@@ -0,0 +1,21 @@
1
+ This work was produced under the auspices of the U.S. Department of
2
+ Energy by Lawrence Livermore National Laboratory under Contract
3
+ DE-AC52-07NA27344.
4
+
5
+ This work was prepared as an account of work sponsored by an agency of
6
+ the United States Government. Neither the United States Government nor
7
+ Lawrence Livermore National Security, LLC, nor any of their employees
8
+ makes any warranty, expressed or implied, or assumes any legal liability
9
+ or responsibility for the accuracy, completeness, or usefulness of any
10
+ information, apparatus, product, or process disclosed, or represents that
11
+ its use would not infringe privately owned rights.
12
+
13
+ Reference herein to any specific commercial product, process, or service
14
+ by trade name, trademark, manufacturer, or otherwise does not necessarily
15
+ constitute or imply its endorsement, recommendation, or favoring by the
16
+ United States Government or Lawrence Livermore National Security, LLC.
17
+
18
+ The views and opinions of authors expressed herein do not necessarily
19
+ state or reflect those of the United States Government or Lawrence
20
+ Livermore National Security, LLC, and shall not be used for advertising
21
+ or product endorsement purposes.
Binary file
Binary file
@@ -1,67 +1,29 @@
1
- Copyright (c) 2002-2016, Lawrence Livermore National Security.
2
- Produced at the Lawrence Livermore National Laboratory.
3
- Written by A.C. Hindmarsh, D.R. Reynolds, R. Serban, C.S. Woodward,
4
- S.D. Cohen, A.G. Taylor, S. Peles, L.E. Banks, and D. Shumaker.
5
- LLNL-CODE-667205 (ARKODE)
6
- UCRL-CODE-155951 (CVODE)
7
- UCRL-CODE-155950 (CVODES)
8
- UCRL-CODE-155952 (IDA)
9
- UCRL-CODE-237203 (IDAS)
10
- LLNL-CODE-665877 (KINSOL)
11
- All rights reserved.
1
+ BSD 3-Clause License
12
2
 
13
- This file is part of SUNDIALS. For details,
14
- see http://computation.llnl.gov/projects/sundials
3
+ Copyright (c) 2002-2022, Lawrence Livermore National Security and Southern Methodist University.
4
+ All rights reserved.
15
5
 
16
6
  Redistribution and use in source and binary forms, with or without
17
- modification, are permitted provided that the following conditions
18
- are met:
19
-
20
- 1. Redistributions of source code must retain the above copyright
21
- notice, this list of conditions and the disclaimer below.
22
-
23
- 2. Redistributions in binary form must reproduce the above copyright
24
- notice, this list of conditions and the disclaimer (as noted below)
25
- in the documentation and/or other materials provided with the
26
- distribution.
27
-
28
- 3. Neither the name of the LLNS/LLNL nor the names of its contributors
29
- may be used to endorse or promote products derived from this software
30
- without specific prior written permission.
31
-
32
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
35
- FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
36
- LAWRENCE LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF
37
- ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
38
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
39
- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
40
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
41
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
42
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ * Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ * Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
43
29
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
44
-
45
- Additional BSD Notice
46
- ---------------------
47
- 1. This notice is required to be provided under our contract with
48
- the U.S. Department of Energy (DOE). This work was produced at
49
- Lawrence Livermore National Laboratory under Contract
50
- No. DE-AC52-07NA27344 with the DOE.
51
-
52
- 2. Neither the United States Government nor Lawrence Livermore
53
- National Security, LLC nor any of their employees, makes any warranty,
54
- express or implied, or assumes any liability or responsibility for the
55
- accuracy, completeness, or usefulness of any information, apparatus,
56
- product, or process disclosed, or represents that its use would not
57
- infringe privately-owned rights.
58
-
59
- 3. Also, reference herein to any specific commercial products, process,
60
- or services by trade name, trademark, manufacturer or otherwise does
61
- not necessarily constitute or imply its endorsement, recommendation,
62
- or favoring by the United States Government or Lawrence Livermore
63
- National Security, LLC. The views and opinions of authors expressed
64
- herein do not necessarily state or reflect those of the United States
65
- Government or Lawrence Livermore National Security, LLC, and shall
66
- not be used for advertising or product endorsement purposes.
67
-
@@ -0,0 +1,21 @@
1
+ This work was produced under the auspices of the U.S. Department of
2
+ Energy by Lawrence Livermore National Laboratory under Contract
3
+ DE-AC52-07NA27344.
4
+
5
+ This work was prepared as an account of work sponsored by an agency of
6
+ the United States Government. Neither the United States Government nor
7
+ Lawrence Livermore National Security, LLC, nor any of their employees
8
+ makes any warranty, expressed or implied, or assumes any legal liability
9
+ or responsibility for the accuracy, completeness, or usefulness of any
10
+ information, apparatus, product, or process disclosed, or represents that
11
+ its use would not infringe privately owned rights.
12
+
13
+ Reference herein to any specific commercial product, process, or service
14
+ by trade name, trademark, manufacturer, or otherwise does not necessarily
15
+ constitute or imply its endorsement, recommendation, or favoring by the
16
+ United States Government or Lawrence Livermore National Security, LLC.
17
+
18
+ The views and opinions of authors expressed herein do not necessarily
19
+ state or reflect those of the United States Government or Lawrence
20
+ Livermore National Security, LLC, and shall not be used for advertising
21
+ or product endorsement purposes.
Binary file
Binary file
@@ -1,67 +1,29 @@
1
- Copyright (c) 2002-2016, Lawrence Livermore National Security.
2
- Produced at the Lawrence Livermore National Laboratory.
3
- Written by A.C. Hindmarsh, D.R. Reynolds, R. Serban, C.S. Woodward,
4
- S.D. Cohen, A.G. Taylor, S. Peles, L.E. Banks, and D. Shumaker.
5
- LLNL-CODE-667205 (ARKODE)
6
- UCRL-CODE-155951 (CVODE)
7
- UCRL-CODE-155950 (CVODES)
8
- UCRL-CODE-155952 (IDA)
9
- UCRL-CODE-237203 (IDAS)
10
- LLNL-CODE-665877 (KINSOL)
11
- All rights reserved.
1
+ BSD 3-Clause License
12
2
 
13
- This file is part of SUNDIALS. For details,
14
- see http://computation.llnl.gov/projects/sundials
3
+ Copyright (c) 2002-2022, Lawrence Livermore National Security and Southern Methodist University.
4
+ All rights reserved.
15
5
 
16
6
  Redistribution and use in source and binary forms, with or without
17
- modification, are permitted provided that the following conditions
18
- are met:
19
-
20
- 1. Redistributions of source code must retain the above copyright
21
- notice, this list of conditions and the disclaimer below.
22
-
23
- 2. Redistributions in binary form must reproduce the above copyright
24
- notice, this list of conditions and the disclaimer (as noted below)
25
- in the documentation and/or other materials provided with the
26
- distribution.
27
-
28
- 3. Neither the name of the LLNS/LLNL nor the names of its contributors
29
- may be used to endorse or promote products derived from this software
30
- without specific prior written permission.
31
-
32
- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
33
- "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
34
- LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
35
- FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
36
- LAWRENCE LIVERMORE NATIONAL SECURITY, LLC, THE U.S. DEPARTMENT OF
37
- ENERGY OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
38
- SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
39
- TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
40
- DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
41
- THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
42
- (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
7
+ modification, are permitted provided that the following conditions are met:
8
+
9
+ * Redistributions of source code must retain the above copyright notice, this
10
+ list of conditions and the following disclaimer.
11
+
12
+ * Redistributions in binary form must reproduce the above copyright notice,
13
+ this list of conditions and the following disclaimer in the documentation
14
+ and/or other materials provided with the distribution.
15
+
16
+ * Neither the name of the copyright holder nor the names of its
17
+ contributors may be used to endorse or promote products derived from
18
+ this software without specific prior written permission.
19
+
20
+ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
21
+ AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
22
+ IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
23
+ DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
24
+ FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
25
+ DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
26
+ SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
27
+ CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
28
+ OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
43
29
  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
44
-
45
- Additional BSD Notice
46
- ---------------------
47
- 1. This notice is required to be provided under our contract with
48
- the U.S. Department of Energy (DOE). This work was produced at
49
- Lawrence Livermore National Laboratory under Contract
50
- No. DE-AC52-07NA27344 with the DOE.
51
-
52
- 2. Neither the United States Government nor Lawrence Livermore
53
- National Security, LLC nor any of their employees, makes any warranty,
54
- express or implied, or assumes any liability or responsibility for the
55
- accuracy, completeness, or usefulness of any information, apparatus,
56
- product, or process disclosed, or represents that its use would not
57
- infringe privately-owned rights.
58
-
59
- 3. Also, reference herein to any specific commercial products, process,
60
- or services by trade name, trademark, manufacturer or otherwise does
61
- not necessarily constitute or imply its endorsement, recommendation,
62
- or favoring by the United States Government or Lawrence Livermore
63
- National Security, LLC. The views and opinions of authors expressed
64
- herein do not necessarily state or reflect those of the United States
65
- Government or Lawrence Livermore National Security, LLC, and shall
66
- not be used for advertising or product endorsement purposes.
67
-
@@ -0,0 +1,21 @@
1
+ This work was produced under the auspices of the U.S. Department of
2
+ Energy by Lawrence Livermore National Laboratory under Contract
3
+ DE-AC52-07NA27344.
4
+
5
+ This work was prepared as an account of work sponsored by an agency of
6
+ the United States Government. Neither the United States Government nor
7
+ Lawrence Livermore National Security, LLC, nor any of their employees
8
+ makes any warranty, expressed or implied, or assumes any legal liability
9
+ or responsibility for the accuracy, completeness, or usefulness of any
10
+ information, apparatus, product, or process disclosed, or represents that
11
+ its use would not infringe privately owned rights.
12
+
13
+ Reference herein to any specific commercial product, process, or service
14
+ by trade name, trademark, manufacturer, or otherwise does not necessarily
15
+ constitute or imply its endorsement, recommendation, or favoring by the
16
+ United States Government or Lawrence Livermore National Security, LLC.
17
+
18
+ The views and opinions of authors expressed herein do not necessarily
19
+ state or reflect those of the United States Government or Lawrence
20
+ Livermore National Security, LLC, and shall not be used for advertising
21
+ or product endorsement purposes.
Binary file
Binary file