Rewrite Rulesphysics/fdv-to-frac-delta

physics/fdv-to-frac-delta

Expand fdv forms to explicit delta-based derivative fractions.

Rewrite patterns#

  1. fdv-two-argument\fdv{#1}{#2}\frac{\delta #1}{\delta #2}
  2. fdv-operator\fdv{#1}\frac{\delta}{\delta #1}
  3. fdv-order\fdv[#1]{#2}{#3}\frac{\delta^{#1} #2}{\delta #3^{#1}}
  4. fdv-star\fdv*{#1}{#2}\flatfrac{\delta #1}{\delta #2}

Examples#

Each example shows this rule applied in isolation. A complete normalization profile may make additional changes.

fdv euler lagrange#

Before

\fdv{S[\phi]}{\phi(x)}=0

After this rule

\frac{\delta S[\phi]}{\delta \phi(x)}=0

Rendering verified with the declared packages.

fdv operator form#

Before

\fdv{\phi(x)} S

After this rule

\frac{\delta}{\delta \phi(x)} S

Rendering verified with the declared packages.

fdv second order#

Before

\fdv[2]{S}{\phi}

After this rule

\frac{\delta^{2} S}{\delta \phi^{2}}

Rendering verified with the declared packages.

fdv star flatfrac#

Before

\fdv*{S}{\phi}

After this rule

\flatfrac{\delta S}{\delta \phi}

Rendering verified with the declared packages.

Upstream rules#

Same family#

Notes#

Covers the two-argument functional derivative, one-argument operator form, optional [n] order, and star branch. The star branch follows MathJax physics by expanding to \flatfrac rather than \frac.

Disable this rule#

TransformEngine(profile="corpus", disable_rules=["physics/fdv-to-frac-delta"])
new TransformEngine({ profile: 'corpus', disableRules: ['physics/fdv-to-frac-delta'] })

Open in Playground