Skip to content

Commit

Permalink
add documentation for waves in paltes
Browse files Browse the repository at this point in the history
  • Loading branch information
arturgower committed Feb 8, 2024
1 parent 9489716 commit 7866c6f
Show file tree
Hide file tree
Showing 2 changed files with 122 additions and 64 deletions.
161 changes: 101 additions & 60 deletions docs/src/theory/reflection_transmission_low_freq.nb
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@
NotebookFileLineBreakTest
NotebookFileLineBreakTest
NotebookDataPosition[ 158, 7]
NotebookDataLength[ 35217, 977]
NotebookOptionsPosition[ 32433, 921]
NotebookOutlinePosition[ 32821, 937]
CellTagsIndexPosition[ 32778, 934]
NotebookDataLength[ 37111, 1018]
NotebookOptionsPosition[ 34220, 961]
NotebookOutlinePosition[ 34615, 977]
CellTagsIndexPosition[ 34572, 974]
WindowFrame->Normal*)

(* Beginning of Notebook Content *)
Expand Down Expand Up @@ -86,7 +86,7 @@ Cell[BoxData[{
RowBox[{
RowBox[{"X0", " ", "=", " ",
RowBox[{"{",
RowBox[{"0", ",", "y"}], "}"}]}], ";"}], "\[IndentingNewLine]",
RowBox[{"x0", ",", "y"}], "}"}]}], ";"}], "\[IndentingNewLine]",
RowBox[{"X", " ", "=", " ",
RowBox[{"{",
RowBox[{"x", ",", "y"}], "}"}]}], "\[IndentingNewLine]",
Expand All @@ -104,12 +104,9 @@ Cell[BoxData[{
FractionBox["1", "\[Rho]1"], " ",
RowBox[{"D", "[",
RowBox[{
RowBox[{"uin", "[", "X", "]"}], ",", "x"}], "]"}]}], " ", "+",
RowBox[{
FractionBox["1", "\[Rho]1"],
RowBox[{"D", "[", " ",
RowBox[{
RowBox[{"uR", "[", "X", "]"}], ",", "x"}], "]"}]}], " ", "-",
RowBox[{
RowBox[{"uin", "[", "X", "]"}], "+", " ",
RowBox[{"uR", "[", "X", "]"}]}], ",", "x"}], "]"}]}], " ", "-",
RowBox[{
FractionBox["1", "\[Rho]2"],
RowBox[{"D", "[",
Expand Down Expand Up @@ -139,43 +136,61 @@ Cell[BoxData[{
RowBox[{"Thread", "[",
RowBox[{"eqs", "==", " ", "0"}], "]"}], "/.", "subSnells"}], ",",
RowBox[{"{",
RowBox[{"R", ",", "T"}], "}"}]}], "]"}]}], "/.", " ",
RowBox[{"k1", " ", "->", " ",
RowBox[{"R", ",", "T"}], "}"}]}], "]"}]}], "/.", " ",
RowBox[{"\[Rho]2", "->", " ",
RowBox[{"Q", " ", "k2", " ",
RowBox[{"\[Rho]1", "/", "\[Rho]2"}]}]}]}], " ", "//",
RowBox[{"\[Rho]1", "/", "k1"}]}]}]}], " ", "//",
"Simplify"}]}]}], "Input",
CellChangeTimes->{{3.906541843416709*^9, 3.906542195715724*^9}, {
3.906542229477569*^9, 3.906542268783965*^9}, {3.906542314159116*^9,
3.906542336427779*^9}, {3.906542451667676*^9, 3.9065424769550533`*^9}, {
3.906542728456843*^9, 3.906542728602861*^9}, {3.906542769766479*^9,
3.906542771001995*^9}, {3.9163110611893473`*^9, 3.916311101609243*^9}},
CellLabel->"In[54]:=",ExpressionUUID->"505ed892-b0ee-4b93-bf20-789175b2a272"],
3.906542771001995*^9}, {3.9163110611893473`*^9, 3.916311101609243*^9}, {
3.916390798484353*^9, 3.9163907988358917`*^9}, {3.916391202260542*^9,
3.916391250295336*^9}},
CellLabel->"In[68]:=",ExpressionUUID->"505ed892-b0ee-4b93-bf20-789175b2a272"],

Cell[BoxData[
RowBox[{"{",
RowBox[{"x", ",", "y"}], "}"}]], "Output",
CellChangeTimes->{{3.9065420170841618`*^9, 3.906542045835774*^9}, {
3.906542135646899*^9, 3.906542196986534*^9}, 3.906542269001123*^9,
3.906542336756316*^9, 3.906542477180331*^9, 3.906542729035215*^9,
3.906542772845778*^9, {3.916311047778927*^9, 3.916311102578001*^9}},
CellLabel->"Out[62]=",ExpressionUUID->"fc2f5679-1c2b-49fa-882b-1731f835a4da"],
3.906542772845778*^9, {3.916311047778927*^9, 3.916311102578001*^9},
3.916390630140895*^9, 3.916390802680944*^9, {3.91639120552874*^9,
3.9163912508145723`*^9}},
CellLabel->"Out[76]=",ExpressionUUID->"335fb237-18c0-43d1-ad5d-de3928c8561a"],

Cell[BoxData[
RowBox[{"{",
RowBox[{
RowBox[{"R", "\[Rule]",
FractionBox[
RowBox[{
RowBox[{"Q", " ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}], "-",
RowBox[{"Cos", "[", "\[Theta]2", "]"}]}],
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "\[ImaginaryI]", " ", "k1", " ", "x0", " ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}]], " ",
RowBox[{"(",
RowBox[{
RowBox[{"Q", " ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}], "-",
RowBox[{"Cos", "[", "\[Theta]2", "]"}]}], ")"}]}],
RowBox[{
RowBox[{"Q", " ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}], "+",
RowBox[{"Cos", "[", "\[Theta]2", "]"}]}]]}], ",",
RowBox[{"T", "\[Rule]",
FractionBox[
RowBox[{"2", " ", "Q", " ",
RowBox[{"2", " ",
SuperscriptBox["\[ExponentialE]",
RowBox[{"\[ImaginaryI]", " ", "x0", " ",
RowBox[{"(",
RowBox[{
RowBox[{"k1", " ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}], "-",
RowBox[{"k2", " ",
RowBox[{"Cos", "[", "\[Theta]2", "]"}]}]}], ")"}]}]], " ", "Q",
" ",
RowBox[{"Cos", "[", "\[Theta]1", "]"}]}],
RowBox[{
RowBox[{"Q", " ",
Expand All @@ -184,8 +199,10 @@ Cell[BoxData[
CellChangeTimes->{{3.9065420170841618`*^9, 3.906542045835774*^9}, {
3.906542135646899*^9, 3.906542196986534*^9}, 3.906542269001123*^9,
3.906542336756316*^9, 3.906542477180331*^9, 3.906542729035215*^9,
3.906542772845778*^9, {3.916311047778927*^9, 3.916311102600688*^9}},
CellLabel->"Out[65]=",ExpressionUUID->"fbf24fc6-1eef-40cf-8680-2c99a27abd01"]
3.906542772845778*^9, {3.916311047778927*^9, 3.916311102578001*^9},
3.916390630140895*^9, 3.916390802680944*^9, {3.91639120552874*^9,
3.9163912508973093`*^9}},
CellLabel->"Out[79]=",ExpressionUUID->"e5079cb5-0728-4534-9e5c-542711c2dcc0"]
}, Open ]],

Cell[CellGroupData[{
Expand Down Expand Up @@ -546,16 +563,14 @@ Cell[BoxData[{
3.9163113799386*^9, 3.916311394482524*^9}, {3.916311426640787*^9,
3.9163114270258093`*^9}, 3.916311474276861*^9, {3.916382402189849*^9,
3.9163824234690104`*^9}},
CellLabel->
"In[235]:=",ExpressionUUID->"55751fef-0974-4177-ba5a-bc71fb3567d7"],
CellLabel->"In[1]:=",ExpressionUUID->"55751fef-0974-4177-ba5a-bc71fb3567d7"],

Cell[BoxData[
RowBox[{"{",
RowBox[{"x", ",", "y"}], "}"}]], "Output",
CellChangeTimes->{3.9163114748345833`*^9, 3.916311852898614*^9,
3.9163824296590137`*^9},
CellLabel->
"Out[248]=",ExpressionUUID->"ffb48aff-f928-4266-8c50-76e7ba3f860b"]
3.9163824296590137`*^9, 3.916390196741238*^9},
CellLabel->"Out[14]=",ExpressionUUID->"3563e61b-7090-41c9-a6f5-d334eb325176"]
}, Open ]],

Cell[CellGroupData[{
Expand Down Expand Up @@ -594,8 +609,7 @@ Cell[BoxData[
CellChangeTimes->{{3.9163115735325537`*^9, 3.916311684079542*^9}, {
3.9163819903119593`*^9, 3.9163820323579607`*^9}, {3.916382138712728*^9,
3.916382178342121*^9}, {3.916382455244184*^9, 3.916382455708098*^9}},
CellLabel->
"In[254]:=",ExpressionUUID->"fa57b4ab-8700-426a-812d-7d22e665f9e6"],
CellLabel->"In[18]:=",ExpressionUUID->"fa57b4ab-8700-426a-812d-7d22e665f9e6"],

Cell[BoxData[
FractionBox[
Expand Down Expand Up @@ -645,9 +659,35 @@ Cell[BoxData[
CellChangeTimes->{{3.916311625302472*^9, 3.916311687922065*^9},
3.91631186514664*^9, {3.9163820128719797`*^9, 3.916382032936818*^9}, {
3.916382172674266*^9, 3.9163821786813383`*^9}, {3.9163824325172873`*^9,
3.916382455928849*^9}},
CellLabel->
"Out[254]=",ExpressionUUID->"8b738751-193a-47a2-b717-fccc1434b137"]
3.916382455928849*^9}, 3.916390201114299*^9},
CellLabel->"Out[18]=",ExpressionUUID->"18a0d1d7-f308-4a70-bb31-950eaec89494"],

Cell[BoxData[
FractionBox[
RowBox[{"4", " ", "C1", " ", "C2", " ",
SuperscriptBox["\[ExponentialE]",
RowBox[{"\[ImaginaryI]", " ", "k2", " ",
RowBox[{"(",
RowBox[{"x1", "+", "x2"}], ")"}]}]]}],
RowBox[{
RowBox[{
SuperscriptBox[
RowBox[{"(",
RowBox[{"C1", "+", "C2"}], ")"}], "2"], " ",
SuperscriptBox["\[ExponentialE]",
RowBox[{"2", " ", "\[ImaginaryI]", " ", "k2", " ", "x1"}]]}], "-",
RowBox[{
SuperscriptBox[
RowBox[{"(",
RowBox[{"C1", "-", "C2"}], ")"}], "2"], " ",
SuperscriptBox["\[ExponentialE]",
RowBox[{
"2", " ", "\[ImaginaryI]", " ", "k2", " ", "x2"}]]}]}]]], "Output",
CellChangeTimes->{{3.916311625302472*^9, 3.916311687922065*^9},
3.91631186514664*^9, {3.9163820128719797`*^9, 3.916382032936818*^9}, {
3.916382172674266*^9, 3.9163821786813383`*^9}, {3.9163824325172873`*^9,
3.916382455928849*^9}, 3.916390201290867*^9},
CellLabel->"Out[19]=",ExpressionUUID->"5f51da47-faef-4571-a812-984913826dbe"]
}, Open ]],

Cell[CellGroupData[{
Expand Down Expand Up @@ -919,9 +959,9 @@ Cell[BoxData[
}, Open ]]
}, Open ]]
},
WindowSize->{1440, 762},
WindowMargins->{{0, Automatic}, {0, Automatic}},
FrontEndVersion->"13.3 for Linux x86 (64-bit) (June 3, 2023)",
WindowSize->{1152., 605.4},
WindowMargins->{{0, Automatic}, {Automatic, 0}},
FrontEndVersion->"13.2 for Linux x86 (64-bit) (December 7, 2022)",
StyleDefinitions->"Default.nb",
ExpressionUUID->"ec8f41f7-53e2-40ba-8f40-226433cfd18b"
]
Expand All @@ -937,45 +977,46 @@ CellTagsIndex->{}
(*NotebookFileOutline
Notebook[{
Cell[CellGroupData[{
Cell[580, 22, 189, 3, 54, "Subsection",ExpressionUUID->"fc2d53ca-f1df-4305-9756-5a2ef579fb84"],
Cell[580, 22, 189, 3, 64, "Subsection",ExpressionUUID->"fc2d53ca-f1df-4305-9756-5a2ef579fb84"],
Cell[CellGroupData[{
Cell[794, 29, 4141, 122, 362, "Input",ExpressionUUID->"505ed892-b0ee-4b93-bf20-789175b2a272"],
Cell[4938, 153, 434, 7, 33, "Output",ExpressionUUID->"fc2f5679-1c2b-49fa-882b-1731f835a4da"],
Cell[5375, 162, 1032, 25, 58, "Output",ExpressionUUID->"fbf24fc6-1eef-40cf-8680-2c99a27abd01"]
Cell[794, 29, 4136, 121, 457, "Input",ExpressionUUID->"505ed892-b0ee-4b93-bf20-789175b2a272"],
Cell[4933, 152, 533, 9, 40, "Output",ExpressionUUID->"335fb237-18c0-43d1-ad5d-de3928c8561a"],
Cell[5469, 163, 1677, 41, 73, "Output",ExpressionUUID->"e5079cb5-0728-4534-9e5c-542711c2dcc0"]
}, Open ]],
Cell[CellGroupData[{
Cell[6444, 192, 1162, 30, 92, "Input",ExpressionUUID->"5fa6d3ee-515e-4d4f-b620-3b3d999753b5"],
Cell[7609, 224, 279, 4, 33, "Output",ExpressionUUID->"3cb4d945-6e85-4b2c-9d5a-f43d2f9542d4"],
Cell[7891, 230, 277, 4, 33, "Output",ExpressionUUID->"3bb59479-0d48-4621-9aaa-1626fcf721a3"]
Cell[7183, 209, 1162, 30, 117, "Input",ExpressionUUID->"5fa6d3ee-515e-4d4f-b620-3b3d999753b5"],
Cell[8348, 241, 279, 4, 40, "Output",ExpressionUUID->"3cb4d945-6e85-4b2c-9d5a-f43d2f9542d4"],
Cell[8630, 247, 277, 4, 40, "Output",ExpressionUUID->"3bb59479-0d48-4621-9aaa-1626fcf721a3"]
}, Open ]],
Cell[CellGroupData[{
Cell[8205, 239, 297, 7, 71, "Subsubsection",ExpressionUUID->"d1cb2ce3-807f-4d39-b7c9-8c9054dbea11"],
Cell[8944, 256, 297, 7, 85, "Subsubsection",ExpressionUUID->"d1cb2ce3-807f-4d39-b7c9-8c9054dbea11"],
Cell[CellGroupData[{
Cell[8527, 250, 1504, 43, 78, "Input",ExpressionUUID->"54e62f58-fdf6-4b56-9122-ce13eef202da"],
Cell[10034, 295, 683, 18, 64, "Output",ExpressionUUID->"76976d20-2cfb-47b0-b25a-51817d64923f"]
Cell[9266, 267, 1504, 43, 118, "Input",ExpressionUUID->"54e62f58-fdf6-4b56-9122-ce13eef202da"],
Cell[10773, 312, 683, 18, 79, "Output",ExpressionUUID->"76976d20-2cfb-47b0-b25a-51817d64923f"]
}, Open ]],
Cell[10732, 316, 384, 9, 58, "Input",ExpressionUUID->"0028ab2b-a57b-4f16-ae70-6bbe3d5fc8e7"],
Cell[11119, 327, 1202, 30, 70, "Input",ExpressionUUID->"f518e691-2764-48d5-93d6-9b4a69e0aebd"],
Cell[11471, 333, 384, 9, 72, "Input",ExpressionUUID->"0028ab2b-a57b-4f16-ae70-6bbe3d5fc8e7"],
Cell[11858, 344, 1202, 30, 117, "Input",ExpressionUUID->"f518e691-2764-48d5-93d6-9b4a69e0aebd"],
Cell[CellGroupData[{
Cell[12346, 361, 6348, 188, 621, "Input",ExpressionUUID->"55751fef-0974-4177-ba5a-bc71fb3567d7"],
Cell[18697, 551, 249, 6, 33, "Output",ExpressionUUID->"ffb48aff-f928-4266-8c50-76e7ba3f860b"]
Cell[13085, 378, 6343, 187, 784, "Input",ExpressionUUID->"55751fef-0974-4177-ba5a-bc71fb3567d7"],
Cell[19431, 567, 267, 5, 40, "Output",ExpressionUUID->"3563e61b-7090-41c9-a6f5-d334eb325176"]
}, Open ]],
Cell[CellGroupData[{
Cell[18983, 562, 1293, 35, 74, "Input",ExpressionUUID->"fa57b4ab-8700-426a-812d-7d22e665f9e6"],
Cell[20279, 599, 2118, 50, 65, "Output",ExpressionUUID->"8b738751-193a-47a2-b717-fccc1434b137"]
Cell[19735, 577, 1289, 34, 95, "Input",ExpressionUUID->"fa57b4ab-8700-426a-812d-7d22e665f9e6"],
Cell[21027, 613, 2136, 49, 78, "Output",ExpressionUUID->"18a0d1d7-f308-4a70-bb31-950eaec89494"],
Cell[23166, 664, 1018, 25, 94, "Output",ExpressionUUID->"5f51da47-faef-4571-a812-984913826dbe"]
}, Open ]],
Cell[CellGroupData[{
Cell[22434, 654, 1275, 34, 57, "Input",ExpressionUUID->"ddfbfa82-f116-4c7e-a778-31889c380ac4"],
Cell[23712, 690, 765, 23, 60, "Output",ExpressionUUID->"7fac7d07-c1fd-48bf-8214-dd25ff83690b"]
Cell[24221, 694, 1275, 34, 71, "Input",ExpressionUUID->"ddfbfa82-f116-4c7e-a778-31889c380ac4"],
Cell[25499, 730, 765, 23, 73, "Output",ExpressionUUID->"7fac7d07-c1fd-48bf-8214-dd25ff83690b"]
}, Open ]],
Cell[CellGroupData[{
Cell[24514, 718, 875, 19, 52, "Input",ExpressionUUID->"2f57086d-3898-4086-82cd-a2df5438364d"],
Cell[25392, 739, 2891, 68, 69, "Output",ExpressionUUID->"bc59f864-54e0-4a98-88f3-f19ae677cbc5"],
Cell[28286, 809, 1048, 24, 58, "Output",ExpressionUUID->"6f3a18d5-a39c-450e-9089-7df0e80659f1"]
Cell[26301, 758, 875, 19, 66, "Input",ExpressionUUID->"2f57086d-3898-4086-82cd-a2df5438364d"],
Cell[27179, 779, 2891, 68, 84, "Output",ExpressionUUID->"bc59f864-54e0-4a98-88f3-f19ae677cbc5"],
Cell[30073, 849, 1048, 24, 71, "Output",ExpressionUUID->"6f3a18d5-a39c-450e-9089-7df0e80659f1"]
}, Open ]],
Cell[CellGroupData[{
Cell[29371, 838, 1837, 48, 121, "Input",ExpressionUUID->"1e0f5f1e-e6b5-4cb1-8547-d22264967da6"],
Cell[31211, 888, 1182, 28, 61, "Output",ExpressionUUID->"e811459d-cd1f-4826-97ac-1c2cb268777d"]
Cell[31158, 878, 1837, 48, 153, "Input",ExpressionUUID->"1e0f5f1e-e6b5-4cb1-8547-d22264967da6"],
Cell[32998, 928, 1182, 28, 61, "Output",ExpressionUUID->"e811459d-cd1f-4826-97ac-1c2cb268777d"]
}, Open ]]
}, Open ]]
}, Open ]]
Expand Down
25 changes: 21 additions & 4 deletions src/acoustics/low_frequency.jl
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,12 @@ reflection_coefficient(ω::T, source::PlaneSource{T}, reflect_medium::Acoustic{T
"""
reflection_transmission_coefficients(PlaneSource, Acoustic[, Halfspace = Halfspace(-psource.direction)])
calculates the reflection and transmission coefficient from a homogenious halfspace (assumed to direct incidence if not given), which is also the low frequency reflection from a particulate material when using the effective_medium.
Calculates the reflection and transmission coefficient, R and T, from a homogenious halfspace, which is also the low frequency reflection from a particulate material when using the effective_medium.
Let ``\\mathbf k_R`` and ``\\mathbf k_T`` be the wave vectors of the refected and transmitted waves ``u_R(x)`` and ``u_T(x)``, then can describe these waves as
``u_R(x) = R \\mathrm e^{i \\mathbf k_R \\cdot (\\mathbf x - \\mathbf x_1)}``
``u_T(x) = T \\mathrm e^{i \\mathbf k_T \\cdot (\\mathbf x - \\mathbf x_1)}``
"""
function reflection_transmission_coefficients::T, psource::PlaneSource{T,Dim,1,Acoustic{T,Dim}}, reflect_medium::Acoustic{T,Dim}, halfspace::Halfspace{T,Dim} = Halfspace(-psource.direction)) where {T<:AbstractFloat,Dim}

Expand All @@ -71,19 +76,31 @@ function reflection_transmission_coefficients(ω::T, psource::PlaneSource{T,Dim,

Z = dot(n,halfspace.origin)

R1 = (exp(2im * k_in * Z * cos(θin)) * field(psource)(zeros(T,Dim),ω)) * (q*cos(θin) - cos(θtran)) / (q*cos(θin) + cos(θtran))
R1 = (exp(2im * k_in * Z * cos(θin)) * field(psource)(zeros(T,Dim),ω)) *
(q*cos(θin) - cos(θtran)) / (q*cos(θin) + cos(θtran))
R1 = R1 * exp(im * k_in * Z * cos(θin)) # assuming a reflected wave = R * exp(i kR.(X-X1)) where kR.X1 = k_in * Z * cos(θin)

T1 = exp(im * Z * (k_in * cos(θin) - k_r * cos(θtran))) * field(psource)(zeros(T,Dim),ω) * 2*q*cos(θin) / (q*cos(θin) + cos(θtran))
T1 = T1 * exp(im * k_r * Z * cos(θtran)) # assuming a transmitter wave = T * exp(i k1.(X-X1)) where k1.X1 = k_r * Z * cos(θtran)
T1 = T1 * exp(im * k_r * Z * cos(θtran)) # assuming a transmitter wave = T * exp(i kT.(X-X1)) where kT.X1 = k_r * Z * cos(θtran)

return [R1,T1]
end

"""
planewave_amplitudes(psource::PlaneSource, reflect_medium::Acoustic, plate::Plate)
Calculates the coefficients, or amplitudes, of the plane waves scattering from and transmitted inside the plate, for the plane wave source `psource` and the `plate`. The function returns `[R, T, P1, P2]` where `R` is the reflection coefficient, `T` is the coefficient of the transmitted wave, and `P1` (`P2`) are the amplitudes of the wave travling forward (backward) inside the plate.
Calculates the coefficients, or amplitudes, of the plane waves scattering from and transmitted inside the plate, for the plane wave source `psource` and the `plate`. The function returns `[R, T, P1, P2]` where `R` is the reflection coefficient, `T` is the coefficient of the transmitted wave, and `P1` (`P2`) are the amplitudes of the wave travling forward (backward) inside the plate.
In more detail, let ``\\mathbf k_R, \\mathbf k_{P_1}, \\mathbf k_{P_2},`` and ``\\mathbf k_T`` be the wave vectors of the refected wave ``u_R(x)``, the wave transmitted into the plate ``u_{P_1}(x)``, the wave in the plate ``u_{P_2}(x)`` (which is the result of ``u_{P_1}(x)`` being reflected from the second plate face) and the wave transmitted to the other side of the plate ``u_T(x)``. To simplify, let us consider a plate occupying the region ``z_1<z<z_2`` and an incident wave vector ``\\mathbf k = [k_x,0,k_z]``, although we note the code works for any plate orientation and source. With these choices we have that ``\\mathbf k_R = [k_x,0,-k_z]``, ``\\mathbf k_{P_1} = [``\\kappa_x,0,\\kappa_z]`` and ``\\mathbf k_{P_2} = [``\\kappa_x,0,-\\kappa_z]``, where ``\\kappa_x`` and ``\\kappa_z`` can be deduced from Snells law (i.e. the boundary conditions). The waves involved are then given by
UR * exp(im*KR.(X-X1))
``u_R(x) = R \\mathrm e^{i \\mathbf k_R \\cdot (\\mathbf x - \\mathbf x_1)}``
``u_{P_1}(x) = P_1 \\mathrm e^{i \\mathbf k_{P_1} \\cdot (\\mathbf x - \\mathbf x_1)}``
``u_{P_2}(x) = P_2 \\mathrm e^{i \\mathbf k_{P_2} \\cdot (\\mathbf x - \\mathbf x_2)}``
``u_T(x) = T \\mathrm e^{i \\mathbf k_T \\cdot (\\mathbf x - \\mathbf x_2)}``
where ``\\mathbf x_1 = [0,0,z_1]`` and ``\\mathbf x_2 = [0,0,z_2]`` for the simplifying choices made above. We note that the phase factors chosen for each of these waves is important and not arbitrary: when the waves attenuate in the direction of propagation they also grow in the opposite direction. The phase factors are chosen so that these waves have reasonable values near the boundaries.
"""
function planewave_amplitudes::T, psource::PlaneSource{T,Dim,1,Acoustic{T,Dim}}, plate_medium::Acoustic{T,Dim}, plate::Plate{T,Dim}) where {T<:AbstractFloat,Dim}

Expand Down

0 comments on commit 7866c6f

Please sign in to comment.