//
// Problema da studiare:
//
//   x'(t) = - x(t) + sen(t)   ,   t in [0,10]
//
// Condizione iniziale:
//
//   x(0) = 4
//
// L'integrazione si arresta quando x'(t) ha valore >= 0 oppure
// t >= 7.
//
// (Esercizio: (1) ripetere modificando la seconda condizione in t >= 5.
//             (2) ripetere riducendo la condizione a x'(t) = 0.)
//
clear;
//
A = -1;
//
function y = g(t)
    y = sin(t);
endfunction
//
function y = d1g(t)
    y = cos(t);
endfunction
//
function y = d1x(t,x)
    y = A*x + g(t);
endfunction
//
function y = d2x(t,x)
    y = A*d1x(t,x) + d1g(t);
endfunction
//
function y = g_ev(t,x)
    y = [ d1x(t,x) >= 0;
                 t >= 7 ];
endfunction
//
// INTEGRAZIONE NUMERICA *******************************
//
exec('/home/ciampa/Lavoro/PaginaPersonale/public_html_pagine_dm/CalcNum/Lezioni/15-16/LMV/Lez/Lez Veicoli/TS_1_pv_e.sci');
//
x0 = 4;
t0 = 0;
tf = 10;
E = 1d-6;
//
[T,X,PASSO] = TS_1_pv_e(x0,t0,tf,d1x,d2x,g_ev,E);
//
printf("\nFinito integrazione numerica...\n")
//
// Fine integrazione numerica **************************
//
// Grafico
//
clf();
plot2d(T',X',style = 5);
xgrid(); xlabel('t'); ylabel('x(t)');
