How to solve a system of Hyperbolic PDE of the second order using the function "hyperbolic" ?

8 次查看(过去 30 天)
Dear all,
I would like to solve the problem for the propagation of shear sound wave through two media using the hyperbolic function.
The governing hyperbolic equation is in the form u_tt=c^2*u_xx where u=f(x,t) and u_tt and u_xx are the second order PD with respect to time and space. Let's suppose that 0<x<2 and that for 0<x<1 c=2000 %m/s (for example) while for 1<x<2 c= Re+ i*Im (in the case of shear waves the propagation speed of sound in fluids is a complex quantity). Let's suppose the following boundary conditions: u(x,0)=f(x); u(0,t)=0 ; u(2,t)=0; u_t(x,0)=g(x) and continuity boundary condition for displacement at x=1 so that u_medium1=u_medium2.
Known the value of the coefficients c in the first and second medium how can I solve a system of hyperbolic pdes using the function hyperbolic in this form: U1=HYPERBOLIC(U0,UT0,TLIST,B,P,E,T,C,A,F,D)
U2=HYPERBOLIC(U0,UT0,TLIST,B,P,E,T,C,A,F,D)?
how do I implement the boundary conditions stated above (these are just an example anyway)?
Is there a better/more precise way to implement the stated problem?
how can I plot the results in an animated 3d contour plot?
Is it possible to solve the inverse problem with respect to c [given enough boundary conditions, is it possible to obtain the value of c in the second or in the first medium]?
Thank you for your help.

回答(1 个)

Bill Greene
Bill Greene 2013-2-19
Hi,
I suggest you start by looking at this example:
The simplest way to define the c coefficient when it varies by region is to define it as a string with the value for each region separated by a !-character. For example, '5.4!2.3' for a two-region model with c=5.4 in the first region and 2.3 in the second.
Bill

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by