Coverage for pySDC / projects / parallelSDC_reloaded / chemicalReaction_setup.py: 100%
24 statements
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-03 10:35 +0000
« prev ^ index » next coverage.py v7.13.4, created at 2026-03-03 10:35 +0000
1#!/usr/bin/env python3
2# -*- coding: utf-8 -*-
3"""
4Created on Thu Dec 7 21:22:52 2023
6Setup script for the Chemical Reaction problem
7"""
9import numpy as np
10import matplotlib.pyplot as plt
12from pySDC.projects.parallelSDC_reloaded.utils import solutionExact, getParamsRK, solutionSDC
14script = __file__.split('/')[-1].split('.')[0]
16tEnd = 300
17nSteps = 10
18rkScheme = "RK4"
20tVals = np.linspace(0, tEnd, nSteps + 1)
22print("Computing ODE solution")
23uExact = solutionExact(tEnd, nSteps, "CHEMREC")
25params = getParamsRK(rkScheme)
26uNum, counters, _ = solutionSDC(tEnd, nSteps, params, 'CHEMREC')
28figName = f"{script}_solution"
29plt.figure(figName)
30plt.plot(tVals, uExact[:, 0], '-', label="c1-exact")
31plt.plot(tVals, uExact[:, 1], '-', label="c2-exact")
32plt.plot(tVals, uExact[:, 2], '-', label="c3-exact")
33plt.plot(tVals, uNum[:, 0], '--', label="c1-num")
34plt.plot(tVals, uNum[:, 1], '--', label="c2-num")
35plt.plot(tVals, uNum[:, 2], '--', label="c3-num")
37plt.legend()
38plt.xlabel("time")
39plt.ylabel("solution")
40plt.tight_layout()