From c48d67ec507ba25f4e908bb8711e0ecb1fedf5dd Mon Sep 17 00:00:00 2001
From: Orestis <orestis.malaspinas@hesge.ch>
Date: Fri, 11 Sep 2020 00:12:35 +0200
Subject: [PATCH] with the cosine

---
 practical_work/rc_circuit/main.c | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/practical_work/rc_circuit/main.c b/practical_work/rc_circuit/main.c
index 6e41bbc..d7dce0b 100644
--- a/practical_work/rc_circuit/main.c
+++ b/practical_work/rc_circuit/main.c
@@ -18,27 +18,27 @@ int main(int argc, char *argv[]) {
 
     double dt = 0.001;
     double max_t = 5.0;
-    int i = 0;
 
     PLFLT x[NSIZE], y[NSIZE];
-    PLFLT xmin = 0., xmax = max_t, ymin = 0., ymax = rc.eps;
+    PLFLT xmin = 0., xmax = max_t, ymin = rc.eps-1, ymax = rc.eps+1;
 
     for (double t = 0.0; t < max_t; t += dt) {
         double ve = exact_solution(t, v_ini, &rc);
         printf("t = %f, v = %f, v_e = %f, diff = %f\n", t, v, ve, ve - v);
-        x[i] = t;
-        y[i] = v;
         v = rc_advance(v, dt, &rc);
-        i += 1;
     }
 
     v = v_ini = 1.0;
-    double omega = 0.0;
+    double omega = 10.0;
+    int i = 0;
     for (double t = 0.0; t < max_t; t += dt) {
-        rc.eps = sin(omega * t);
+        rc.eps = v_ini * (1.0 + cos(omega * t));
         double ve = exact_solution(t, v_ini, &rc);
         printf("t = %f, v = %f, v_e = %f, diff = %f\n", t, v, ve, ve - v);
+        x[i] = t;
+        y[i] = v;
         v = rc_advance(v, dt, &rc);
+        i += 1;
     }
 
     // Parse and process command line arguments
-- 
GitLab