From 186102d2a25a27a30eab3a39015db13271103ce0 Mon Sep 17 00:00:00 2001
From: Lars Hubatsch <hubatsch@pks.mpg.de>
Date: Wed, 11 Nov 2020 11:20:56 +0100
Subject: [PATCH] int_prob now lives in its own file.

---
 int_prob.m     | 29 +++++++++++++++++++++++++++++
 prob_laplace.m | 30 +-----------------------------
 2 files changed, 30 insertions(+), 29 deletions(-)
 create mode 100644 int_prob.m

diff --git a/int_prob.m b/int_prob.m
new file mode 100644
index 0000000..79cf09c
--- /dev/null
+++ b/int_prob.m
@@ -0,0 +1,29 @@
+function p = int_prob(l, T, x0, direc, ind_t, bp, ind_delta, T_mov)
+% direc ... change direction of jumps, 1: left->right, -1: right->left
+% ind_t     ... time index at which propagators are evaluated
+% bp        ... boundary position at t==ind_t
+delta_x0 = diff(x0);
+p = 0;
+for i = 1:length(delta_x0)
+    x = (x0(i)+x0(i+1))/2;
+    % 1. cond.: corr. starting point?  2. cond: jumped outside of domain?
+    corr_starting_point = direc*x < direc*bp;
+    corr_end_point = direc*(x-l) > direc*(bp-T{i}.v*T{1}.t(ind_delta+1));
+    if corr_starting_point && corr_end_point
+        if nargin==7
+            p_i = @(j) interp1(T{j}.x, T{j}.sol(ind_t, :), x-l);
+            p2 = (p_i(i)+p_i(i+1))/2;
+            % @ SS distribution for x0 can be taken from phi_tot
+            p = p + delta_x0(i)*...
+                    T{1}.phi_tot(x, T{1}.a, T{1}.b, T{1}.e, T{1}.u0, 0)*p2;
+        elseif nargin==8
+            p_i = @(j) interp1(T{j}.x, T{j}.sol(ind_delta+1, :), x-l);
+            p2 = (p_i(i)+p_i(i+1))/2;
+            p_sol = @(j) interp1(T_mov.x, T_mov.sol(ind_t, :), x);
+%             p_sol2 = T{1}.phi_tot(x, T{1}.a, T{1}.b, T{1}.e, T{1}.u0, 0);
+            p_sol2 = (p_sol(i)+p_sol(i+1))/2;
+            p = p + delta_x0(i)*p_sol2*p2;
+        end
+    end
+end
+end
\ No newline at end of file
diff --git a/prob_laplace.m b/prob_laplace.m
index 58e2774..7c814d5 100644
--- a/prob_laplace.m
+++ b/prob_laplace.m
@@ -417,35 +417,7 @@ csvwrite('prob_in_out.csv', p);
 
 %% %%%%%%%%%%%%%%%%%%% INTEGRATION FUNCTION DEFINITIONS %%%%%%%%%%%%%%%%%%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-function p = int_prob(l, T, x0, direc, ind_t, bp, ind_delta, T_mov)
-% direc ... change direction of jumps, 1: left->right, -1: right->left
-% ind_t     ... time index at which propagators are evaluated
-% bp        ... boundary position at t==ind_t
-delta_x0 = diff(x0);
-p = 0;
-for i = 1:length(delta_x0)
-    x = (x0(i)+x0(i+1))/2;
-    % 1. cond.: corr. starting point?  2. cond: jumped outside of domain?
-    corr_starting_point = direc*x < direc*bp;
-    corr_end_point = direc*(x-l) > direc*(bp-T{i}.v*T{1}.t(ind_delta+1));
-    if corr_starting_point && corr_end_point
-        if nargin==7
-            p_i = @(j) interp1(T{j}.x, T{j}.sol(ind_t, :), x-l);
-            p2 = (p_i(i)+p_i(i+1))/2;
-            % @ SS distribution for x0 can be taken from phi_tot
-            p = p + delta_x0(i)*...
-                    T{1}.phi_tot(x, T{1}.a, T{1}.b, T{1}.e, T{1}.u0, 0)*p2;
-        elseif nargin==8
-            p_i = @(j) interp1(T{j}.x, T{j}.sol(ind_delta+1, :), x-l);
-            p2 = (p_i(i)+p_i(i+1))/2;
-            p_sol = @(j) interp1(T_mov.x, T_mov.sol(ind_t, :), x);
-%             p_sol2 = T{1}.phi_tot(x, T{1}.a, T{1}.b, T{1}.e, T{1}.u0, 0);
-            p_sol2 = (p_sol(i)+p_sol(i+1))/2;
-            p = p + delta_x0(i)*p_sol2*p2;
-        end
-    end
-end
-end
+
 
 function p = normalization(T, x0, lb, ind_t, direc, bp)
 delta_x0 = diff(x0);
-- 
GitLab