From b047d291d89cc821f1890bd847b5cd9c1572ddfb Mon Sep 17 00:00:00 2001
From: Lars Hubatsch <hubatsch@pks.mpg.de>
Date: Tue, 10 Aug 2021 11:53:15 +0200
Subject: [PATCH] Start working on Hammerhead/Ribozyme reaction. Seems to work
 in principle.

---
 @Ternary_model/solve_tern_frap.m | 14 ++++++++++++++
 flory_hugg_pde.m                 | 10 ++++++++++
 2 files changed, 24 insertions(+)

diff --git a/@Ternary_model/solve_tern_frap.m b/@Ternary_model/solve_tern_frap.m
index 5c20dff..ba46461 100644
--- a/@Ternary_model/solve_tern_frap.m
+++ b/@Ternary_model/solve_tern_frap.m
@@ -50,6 +50,14 @@ elseif strcmp(ic, 'phi_tot')
     A = (P-1)*off/(exp_tern(-200)-exp_tern(200));
     B = off - A*exp_tern(200);
     u =  A*exp_tern(x)+B;
+elseif strcmp(ic, 'Substrate')
+    u = zeros(2, 1);
+    if x < -a
+        u(1) = 0;
+    else
+        u(1) = 1;
+    end
+    u(2) = 0;
 elseif isnumeric(ic)
     % use ic as initial condition by interpolating the given values between
     % 0 and a
@@ -73,6 +81,12 @@ function [pl,ql,pr,qr] = flory_bc(xl, ul, xr, ur, t, u0, e, j)
         % Dirichlet BC
 %         pr = ur-u0+e;
 %         qr = 0;
+    elseif j == -1 %% For now this means we're looking at Hammerhead/Ribo
+        pl = [0; 0];
+        ql = [1; 1];
+        % No flux
+        pr = [0; 0];%ur - 0.01;
+        qr = [1; 1];
     % Dirichlet BC constant flux case
     else
         pr = ur;
diff --git a/flory_hugg_pde.m b/flory_hugg_pde.m
index b3f98fd..fb9ced6 100644
--- a/flory_hugg_pde.m
+++ b/flory_hugg_pde.m
@@ -24,5 +24,15 @@ elseif strcmp(mode, 'Const_flux')
     f = g0.*(1-pt)./pt.*(pt.*dudx-u.*gra_a)-j*u/pt;
 elseif strcmp(mode, 'Mobility_ratio')
     f = u_g0.*(1-e_g0*pt).*(dudx-u.*gra_a./pt);
+elseif strcmp(mode, 'Hammer_Ribo')
+    % Use code from client (flux) and constituent (mobility)
+    c = [1; 1];
+    g0 = Ternary_model.gamma0(x, a+t*v, b, e_g0, u_g0, v*t, e, u0);
+    chi_phi = -4;
+    chi_phi1 = -10;
+    k_H = 0.2;
+    f = [1;1].*g0.*(dudx+[chi_phi; chi_phi1].*u*gra_a);
+    F = k_H*pt*u(1);
+    s = [-F; F];
 end
 end
\ No newline at end of file
-- 
GitLab