|
20 | 20 |
|
21 | 21 |
|
22 | 22 | (* ::Input::Initialization:: *) |
23 | | -If[($AllowInternet&&$NetworkConnected)&&$FrontEnd=!=Null&&$Notebooks===True, |
| 23 | +If[($AllowInternet&&$NetworkConnected)&&$FrontEnd=!=Null, |
24 | 24 | Module[{FCurPacletAddr,FCurPaclet,FCurVersion, |
25 | 25 | FInstalledPaclet,FInstalledVersion}, |
26 | 26 |
|
27 | 27 | FCurPacletAddr="https://github.com/satfra/FunKit/raw/refs/heads/main/PacletInfo.m"; |
28 | | -FCurPaclet=(List@@Import[FCurPacletAddr])[[1]]; |
| 28 | +FCurPaclet=Import[FCurPacletAddr]; |
| 29 | + |
| 30 | +If[FCurPaclet=!=$Failed, |
| 31 | +FCurPaclet=(List@@FCurPaclet)[[1]]; |
29 | 32 | FCurVersion=FCurPaclet["Version"]; |
30 | 33 |
|
31 | 34 | FInstalledPaclet=(List@@Import[FileNameJoin[{$UserBaseDirectory,"Applications","FunKit","PacletInfo.m"}]])[[1]]; |
|
43 | 46 | ]; |
44 | 47 | ]; |
45 | 48 | ]; |
| 49 | +]; |
| 50 | + |
| 51 | + |
| 52 | +(* ::Input::Initialization:: *) |
| 53 | +Unprotect[$FUNKITDIR] |
| 54 | +$FUNKITDIR=SelectFirst[ |
| 55 | +Join[ |
| 56 | +{ |
| 57 | +FileNameJoin[{$UserBaseDirectory,"Applications","FunKit"}], |
| 58 | +FileNameJoin[{$BaseDirectory,"Applications","FunKit"}], |
| 59 | +FileNameJoin[{$InstallationDirectory,"AddOns","Applications","FunKit"}], |
| 60 | +FileNameJoin[{$InstallationDirectory,"AddOns","Packages","FunKit"}], |
| 61 | +FileNameJoin[{$InstallationDirectory,"AddOns","ExtraPackages","FunKit"}] |
| 62 | +}, |
| 63 | +Select[$Path,StringContainsQ[#,"FunKit"]&] |
| 64 | +], |
| 65 | +DirectoryQ[#]& |
| 66 | +]<>"/"; |
| 67 | +Protect[$FUNKITDIR] |
46 | 68 |
|
47 | 69 |
|
48 | 70 | (* ::Input::Initialization:: *) |
|
96 | 118 | ]; |
97 | 119 | ]; |
98 | 120 |
|
99 | | -Block[{Print},Needs["TensorBases`"]]; |
| 121 | +Print[""] |
| 122 | +Block[{(*Print*)},Get["TensorBases`"]]; |
| 123 | +Print[""] |
100 | 124 | PrintTemporary["\!\(\* |
101 | 125 | StyleBox[\"TensorBases\",\nFontSize->10,\nFontWeight->\"Bold\",\nFontSlant->\"Italic\"]\)\!\(\* |
102 | 126 | StyleBox[\" \",\nFontSize->10,\nFontSlant->\"Italic\"]\)\!\(\* |
103 | 127 | StyleBox[\"loaded\",\nFontSize->10,\nFontWeight->\"Plain\",\nFontSlant->\"Italic\"]\)"]; |
104 | 128 |
|
105 | 129 |
|
106 | 130 | (* ::Input::Initialization:: *) |
107 | | -If[Length@PacletFind["MaTeX"]===0&&($AllowInternet&&$NetworkConnected), |
108 | | -ResourceFunction["MaTeXInstall"][] |
109 | | -] |
| 131 | +If[Length@PacletFind["MaTeX"]===0, |
| 132 | +If[$AllowInternet&&$NetworkConnected, |
| 133 | +ResourceFunction["MaTeXInstall"][], |
| 134 | +PacletInstall[$FUNKITDIR<>"/dependencies/MaTeX-1.7.10.paclet"] |
| 135 | +]; |
| 136 | +]; |
110 | 137 | Get["MaTeX`"] |
111 | 138 | PrintTemporary["\!\(\* |
112 | 139 | StyleBox[\"MaTeX\",\nFontSize->10,\nFontWeight->\"Bold\",\nFontSlant->\"Italic\"]\)\!\(\* |
|
115 | 142 |
|
116 | 143 |
|
117 | 144 | (* ::Input::Initialization:: *) |
118 | | -Get[SelectFirst[ |
119 | | -Join[ |
120 | | -{ |
121 | | -FileNameJoin[{$UserBaseDirectory,"Applications","FunKit"}], |
122 | | -FileNameJoin[{$BaseDirectory,"Applications","FunKit"}], |
123 | | -FileNameJoin[{$InstallationDirectory,"AddOns","Applications","FunKit"}], |
124 | | -FileNameJoin[{$InstallationDirectory,"AddOns","Packages","FunKit"}], |
125 | | -FileNameJoin[{$InstallationDirectory,"AddOns","ExtraPackages","FunKit"}] |
126 | | -}, |
127 | | -Select[$Path,StringContainsQ[#,"FunKit"]&] |
128 | | -], |
129 | | -DirectoryQ[#]& |
130 | | -]<>"/"<>"/utils/MathematicaTeXUtilities.m"] |
| 145 | +Get[$FUNKITDIR<>"/utils/MathematicaTeXUtilities.m"] |
131 | 146 |
|
132 | 147 |
|
133 | 148 | (* ::Input::Initialization:: *) |
|
170 | 185 |
|
171 | 186 | (* ::Input::Initialization:: *) |
172 | 187 | If[Head[$DistributedContexts]=!=List,$DistributedContexts={}]; |
173 | | -$DistributedContexts=$DistributedContexts\[Union]{$Context,"FunKit`Private`","TensorBases`","FormTracer`","FormTracer`Private`","TensorBases`","TensorBases`Private`"} |
| 188 | +$DistributedContexts=$DistributedContexts\[Union]{$Context,"FunKit`Private`","FormTracer`","FormTracer`Private`"} |
174 | 189 |
|
175 | 190 |
|
176 | 191 | (* ::Input::Initialization:: *) |
177 | 192 | Begin["`Private`"] |
178 | 193 | If[Head[$DistributedContexts]=!=List,$DistributedContexts={}]; |
179 | | -$DistributedContexts=$DistributedContexts\[Union]{$Context,"FunKit`Private`","TensorBases`","FormTracer`","FormTracer`Private`","TensorBases`","TensorBases`Private`"} |
| 194 | +$DistributedContexts=$DistributedContexts\[Union]{$Context,"FunKit`Private`","FormTracer`","FormTracer`Private`"} |
180 | 195 | End[] |
181 | 196 |
|
182 | 197 |
|
|
251 | 266 | StyleBox[\"COEN\",\nFontSize->10,\nFontWeight->\"Bold\",\nFontSlant->\"Italic\"]\)\!\(\* |
252 | 267 | StyleBox[\" \",\nFontSize->10,\nFontSlant->\"Italic\"]\)\!\(\* |
253 | 268 | StyleBox[\"loaded\",\nFontSize->10,\nFontWeight->\"Plain\",\nFontSlant->\"Italic\"]\)"]; |
254 | | -Get[$FunKitDirectory<>"modules/SeDecA.m"]; |
255 | | -PrintTemporary["\!\(\* |
256 | | -StyleBox[\"...\",\nFontSize->10,\nFontSlant->\"Italic\"]\)\!\(\* |
257 | | -StyleBox[\"SeDecA\",\nFontSize->10,\nFontWeight->\"Bold\",\nFontSlant->\"Italic\"]\)\!\(\* |
258 | | -StyleBox[\" \",\nFontSize->10,\nFontSlant->\"Italic\"]\)\!\(\* |
259 | | -StyleBox[\"loaded\",\nFontSize->10,\nFontWeight->\"Plain\",\nFontSlant->\"Italic\"]\)"]; |
260 | 269 | If[$FrontEnd=!=Null, |
261 | 270 | Print["Welcome to \!\(\* |
262 | 271 | StyleBox[\"\:2588\:2580\",\nFontColor->GrayLevel[0]]\)\!\(\* |
|
306 | 315 |
|
307 | 316 |
|
308 | 317 | (* ::Input::Initialization:: *) |
309 | | -framedPrint[fpr_]:=Internal`InheritedBlock[{Print}, |
| 318 | +$framedPrint[fpr_]:=Internal`InheritedBlock[{Print}, |
310 | 319 | Unprotect@Print; |
311 | 320 | Print=Echo[Framed[#]]&; |
312 | 321 | Protect@Print; |
313 | 322 | ReleaseHold[fpr] |
314 | 323 | ]; |
315 | | -SetAttributes[framedPrint,HoldAll]; |
| 324 | +SetAttributes[$framedPrint,HoldAll]; |
316 | 325 |
|
317 | 326 |
|
318 | 327 | (* ::Input::Initialization:: *) |
@@ -356,13 +365,13 @@ Any equation is comprised of terms that contain (possibly non-commuting) factors |
356 | 365 | To see a list of all indexed objects known to \!\(\* |
357 | 366 | StyleBox[\"FEDeriK\",\nFontWeight->\"Bold\"]\), one can call \!\(\* |
358 | 367 | StyleBox[\"ShowIndexedObjects\",\nFontColor->RGBColor[1, 0.5, 0]]\)[], which outputs "]; |
359 | | -framedPrint@ShowIndexedObjects[]; |
| 368 | +$framedPrint@ShowIndexedObjects[]; |
360 | 369 | Print["in the current case. One can register custom indexed objects with \!\(\* |
361 | 370 | StyleBox[\"FEDeriK\",\nFontWeight->\"Bold\"]\) by using \!\(\* |
362 | 371 | StyleBox[\"AddIndexedObject\",\nFontColor->RGBColor[1, 0.5, 0]]\)[_Symbol]. |
363 | 372 | A subset of the indexed objects are correlation functions, and \!\(\* |
364 | 373 | StyleBox[\"ShowCorrelationFunctions\",\nFontColor->RGBColor[1, 0.5, 0]]\)[] outputs "]; |
365 | | -framedPrint@ShowCorrelationFunctions[]; |
| 374 | +$framedPrint@ShowCorrelationFunctions[]; |
366 | 375 | Print["These are special indexed objects, which are always hit by functional derivatives. |
367 | 376 | As an example, take the generalised flow equation ",MaTeX`MaTeX["\\partial_t \\Gamma = -\\dot\\Phi^a\\Gamma_a + \\frac{1}{2}G^{ac}\\Bigg(\\gamma_c^{\\phantom{c}b}\\partial_t + 2 \\frac{\\delta\\dot{\\Phi}^b}{\\delta\\Phi^c}\\Bigg){R}_{ab}"], |
368 | 377 | "First, we add a new correlation function using \!\(\* |
@@ -421,5 +430,29 @@ Any equation is comprised of terms that contain (possibly non-commuting) factors |
421 | 430 |
|
422 | 431 |
|
423 | 432 | (* ::Input::Initialization:: *) |
424 | | -DistributeDefinitions["FunKit`"]; |
425 | | -DistributeDefinitions["FunKit`Private`"]; |
| 433 | +(* Note that we do NOT just call |
| 434 | +DistributeDefinitions["FunKit`"] |
| 435 | +DistributeDefinitions["FunKit`Private`"] |
| 436 | +As this takes a LOT of time - in the following we only distribute precisely the things that are actually used (bringing down the distribution time by a factor of 10) |
| 437 | +*) |
| 438 | + |
| 439 | + |
| 440 | +(* ::Input::Initialization:: *) |
| 441 | +DistributeDefinitions[ |
| 442 | +"FunKit`FTerm", |
| 443 | +"FunKit`FFormSimplify", |
| 444 | +"FunKit`FunKitDebug", |
| 445 | +"FunKit`Private`SafeReplaceTrace", |
| 446 | +"FunKit`Private`GetAllCustomSymbols", |
| 447 | +"FunKit`Private`ImportAndSimplifyFORM", |
| 448 | +"FunKit`Private`scallDef", |
| 449 | +"FunKit`Private`$AlwaysExpandLorentzTensors", |
| 450 | +"FunKit`Private`makeTemporaryFileName", |
| 451 | +"FunKit`Private`$DefaultTimeConstraint", |
| 452 | +"FunKit`Private`$StandardQuickSimplify", |
| 453 | +"FunKit`Private`makeHashFile", |
| 454 | +"FunKit`Private`NormalizeIndices", |
| 455 | +"FunKit`Private`$TraceCacheDir", |
| 456 | +"FunKit`Private`$standardFORMmomentumRules", |
| 457 | +"FunKit`Private`GetAllMomenta" |
| 458 | +]; |
0 commit comments