Transformée intégrale d'EntityStore
Une transformée intégrale est une opération mathématique qui applique une fonction à travers une autre au moyen d'une intégrale de la forme où est connu comme le noyau. Les transformées intégrales sont extrêmement importantes dans de nombreux domaines d'intérêt, notamment le traitement des signaux, l'imagerie médicale et la théorie des probabilités. La construction d'un magasin d'entités contenant les propriétés de transformées importantes est illustrée ici.
Le magasin d'entités peut être codé à la main en enregistrant les propriétés les plus importantes des transformées intégrales dans une structure de données dans EntityStore.
EntityStore[<|
"Types" -> <|
"IntegralTransform" -> <|
"Entities" -> <|
"ExponentialFourierTransform" -> <|
"Label" -> "exponential Fourier transform",
"StandardName" -> "ExponentialFourierTransform",
"StandardNotation" -> Hold[f[t]],
"Definition" -> Inactive[FourierTransform][f[t], t, z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\)
Inactive[Integrate][
E^(I t z) f[t], {t, -\[Infinity], \[Infinity]}]/Sqrt[
2 \[Pi]],
"GeneralProperties" -> <|
"Linearity" -> {Inactive[FourierTransform][
a f[t] + b g[t], t, z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\)
a Inactive[FourierTransform][f[t], t, z] +
b Inactive[FourierTransform][g[t], t, z],
Inactive[FourierTransform][f[t], t, z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\)
Inactive[FourierTransform][f[-t] UnitStep[t], t, -z] +
Inactive[FourierTransform][f[t] UnitStep[t], t, z]},
"Reflection" -> {Inactive[FourierTransform][f[-t], t,
z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\) Inactive[FourierTransform][f[t], t, -z]},
"Dilation" -> {ConditionalExpression[
Inactive[FourierTransform][f[a t], t, z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\) Inactive[FourierTransform][f[t], t, z/a]/Abs[a],
a \!\(\*
TagBox["\[Element]",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"\[Element]"]\) Reals && a \!\(\*
TagBox["!=",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"!="]\) 0]},
"Shifting or translation" -> {ConditionalExpression[
Inactive[FourierTransform][f[-a + t], t, z] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\) E^(I a z) Inactive[FourierTransform][f[t], t, z],
a \!\(\*
TagBox["\[Element]",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"\[Element]"]\) Reals]}|>|>|>|>|>|>]
Une version plus complète peut être récupérée à partir du CloudObject suivant.
itstore =
CloudGet[CloudObject[
"https://www.wolframcloud.com/objects/c21b356b-607a-406c-af91-\
5088f435fe99"]]
Enregistrez le magasin pour cette session.
PrependTo[$EntityStores, itstore];
Visualisez les entités dans le magasin.
EntityValue["IntegralTransform", "Entities"]
Ajoutez une nouvelle transformée.
Entity["IntegralTransform", "HilbertTransform"]["Label"] =
"Hilbert transform";
Entity["IntegralTransform", "HilbertTransform"]["Definition"] =
Inactive[HilbertTransform][f[t], t, x] \!\(\*
TagBox["==",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"=="]\)
1/\[Pi] Inactive[Integrate][f[t]/(
t - x), {t, -\[Infinity], \[Infinity]}, PrincipalValue -> True,
Assumptions -> x \!\(\*
TagBox["\[Element]",
"InactiveToken",
BaseStyle->"Inactive",
SyntaxForm->"\[Element]"]\) Reals];
Renvoyez les propriétés actuellement disponibles pour les transformées intégrales.
EntityValue["IntegralTransform", "Properties"]
Récupérez les définitions des transformées exponentielles de Fourier et de Mellin.
EntityValue[
Entity["IntegralTransform", "LaplaceTransform"], "Definition"]
EntityValue[
Entity["IntegralTransform", "MellinTransform"], "Definition"]
Comparez avec les expressions renvoyées par les fonctions intégrées correspondantes.
Activate[EntityValue[Entity["IntegralTransform", "LaplaceTransform"],
"Definition"][[2]] /. f :> Function[t, ArcTan[t]]]
LaplaceTransform[ArcTan[t], t, z]
Affichez la propriété de convolution de la transformée Z.
Entity["IntegralTransform", "ZTransform"][
"GeneralProperties"]["Convolution"]
Comparez les propriétés actuellement stockées des transformées exponentielles de Fourier et de Mellin.