@mat3ra/wode 2025.10.8-0 → 2025.11.3-0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/subworkflows/create.js +9 -5
  2. package/dist/subworkflows/subworkflow.js +8 -2
  3. package/dist/workflows/relaxation.js +1 -0
  4. package/package.json +2 -2
  5. package/src/subworkflows/create.js +17 -6
  6. package/src/subworkflows/subworkflow.js +5 -2
  7. package/src/workflows/relaxation.js +1 -0
  8. package/src/workflows/workflow.js +0 -2
  9. package/assets/subworkflows/deepmd/deepmd.yml +0 -31
  10. package/assets/subworkflows/deepmd/espresso_cp_md.yml +0 -16
  11. package/assets/subworkflows/espresso/average_electrostatic_potential_find_minima.yml +0 -27
  12. package/assets/subworkflows/espresso/average_electrostatic_potential_via_band_structure.yml +0 -67
  13. package/assets/subworkflows/espresso/band_gap.yml +0 -21
  14. package/assets/subworkflows/espresso/band_gap_hse_dos.yml +0 -30
  15. package/assets/subworkflows/espresso/band_structure.yml +0 -26
  16. package/assets/subworkflows/espresso/band_structure_dos.yml +0 -34
  17. package/assets/subworkflows/espresso/band_structure_hse.yml +0 -30
  18. package/assets/subworkflows/espresso/band_structure_magn.yml +0 -31
  19. package/assets/subworkflows/espresso/band_structure_soc.yml +0 -30
  20. package/assets/subworkflows/espresso/dielectric_tensor.yml +0 -35
  21. package/assets/subworkflows/espresso/dos.yml +0 -24
  22. package/assets/subworkflows/espresso/electronic_density_mesh.yml +0 -19
  23. package/assets/subworkflows/espresso/esm.yml +0 -14
  24. package/assets/subworkflows/espresso/esm_relax.yml +0 -14
  25. package/assets/subworkflows/espresso/espresso_extract_kpoints.yml +0 -16
  26. package/assets/subworkflows/espresso/espresso_xml_get_qpt_irr.yml +0 -12
  27. package/assets/subworkflows/espresso/fixed_cell_relaxation.yml +0 -16
  28. package/assets/subworkflows/espresso/gw_band_structure_band_gap_full_frequency.yml +0 -22
  29. package/assets/subworkflows/espresso/gw_band_structure_band_gap_plasmon_pole.yml +0 -22
  30. package/assets/subworkflows/espresso/hubbard_u_hp.yml +0 -21
  31. package/assets/subworkflows/espresso/kpoint_convergence.yml +0 -86
  32. package/assets/subworkflows/espresso/neb.yml +0 -16
  33. package/assets/subworkflows/espresso/ph_init_qpoints.yml +0 -14
  34. package/assets/subworkflows/espresso/ph_single_irr_qpt.yml +0 -14
  35. package/assets/subworkflows/espresso/phonon_dispersions.yml +0 -29
  36. package/assets/subworkflows/espresso/phonon_dos.yml +0 -29
  37. package/assets/subworkflows/espresso/phonon_dos_dispersion.yml +0 -34
  38. package/assets/subworkflows/espresso/phonon_reduce.yml +0 -29
  39. package/assets/subworkflows/espresso/post_processor.yml +0 -14
  40. package/assets/subworkflows/espresso/pre_processor.yml +0 -14
  41. package/assets/subworkflows/espresso/pw_scf.yml +0 -16
  42. package/assets/subworkflows/espresso/recalculate_bands.yml +0 -19
  43. package/assets/subworkflows/espresso/surface_energy.yml +0 -16
  44. package/assets/subworkflows/espresso/total_energy.yml +0 -16
  45. package/assets/subworkflows/espresso/valence_band_offset_calc_from_previous_esp_vbm.yml +0 -35
  46. package/assets/subworkflows/espresso/variable_cell_relaxation.yml +0 -18
  47. package/assets/subworkflows/espresso/zero_point_energy.yml +0 -19
  48. package/assets/subworkflows/jupyterLab/jupyter_notebook.yml +0 -17
  49. package/assets/subworkflows/nwchem/total_energy.yml +0 -16
  50. package/assets/subworkflows/python/ml/classification_tail.yml +0 -56
  51. package/assets/subworkflows/python/ml/clustering_tail.yml +0 -62
  52. package/assets/subworkflows/python/ml/regression_tail.yml +0 -56
  53. package/assets/subworkflows/python/ml/train_head.yml +0 -61
  54. package/assets/subworkflows/python/python_script.yml +0 -14
  55. package/assets/subworkflows/shell/batch_espresso_pwscf.yml +0 -14
  56. package/assets/subworkflows/shell/hello_world.yml +0 -14
  57. package/assets/subworkflows/vasp/band_gap.yml +0 -21
  58. package/assets/subworkflows/vasp/band_structure.yml +0 -21
  59. package/assets/subworkflows/vasp/band_structure_dos.yml +0 -23
  60. package/assets/subworkflows/vasp/dos.yml +0 -18
  61. package/assets/subworkflows/vasp/fixed_cell_relaxation.yml +0 -16
  62. package/assets/subworkflows/vasp/initial_final_total_energies.yml +0 -25
  63. package/assets/subworkflows/vasp/kpoint_convergence.yml +0 -89
  64. package/assets/subworkflows/vasp/neb_subworkflow.yml +0 -16
  65. package/assets/subworkflows/vasp/prepare_images.yml +0 -16
  66. package/assets/subworkflows/vasp/recalculate_bands.yml +0 -16
  67. package/assets/subworkflows/vasp/surface_energy.yml +0 -18
  68. package/assets/subworkflows/vasp/total_energy.yml +0 -16
  69. package/assets/subworkflows/vasp/variable_cell_relaxation.yml +0 -18
  70. package/assets/subworkflows/vasp/zero_point_energy.yml +0 -16
  71. package/assets/workflows/deepmd/deepmd_md.yml +0 -6
  72. package/assets/workflows/espresso/band_gap.yml +0 -4
  73. package/assets/workflows/espresso/band_gap_dos_hse.yml +0 -4
  74. package/assets/workflows/espresso/band_structure.yml +0 -4
  75. package/assets/workflows/espresso/band_structure_dos.yml +0 -4
  76. package/assets/workflows/espresso/band_structure_hse.yml +0 -14
  77. package/assets/workflows/espresso/band_structure_magn.yml +0 -7
  78. package/assets/workflows/espresso/band_structure_soc.yml +0 -7
  79. package/assets/workflows/espresso/dielectric_tensor.yml +0 -4
  80. package/assets/workflows/espresso/dos.yml +0 -4
  81. package/assets/workflows/espresso/electronic_density_mesh.yml +0 -4
  82. package/assets/workflows/espresso/esm.yml +0 -4
  83. package/assets/workflows/espresso/esm_relax.yml +0 -4
  84. package/assets/workflows/espresso/fixed_cell_relaxation.yml +0 -4
  85. package/assets/workflows/espresso/gw_band_structure_band_gap_full_frequency.yml +0 -4
  86. package/assets/workflows/espresso/gw_band_structure_band_gap_plasmon_pole.yml +0 -4
  87. package/assets/workflows/espresso/hubbard_u_hp.yml +0 -7
  88. package/assets/workflows/espresso/kpoint_convergence.yml +0 -4
  89. package/assets/workflows/espresso/neb.yml +0 -4
  90. package/assets/workflows/espresso/phonon_dispersions.yml +0 -4
  91. package/assets/workflows/espresso/phonon_dos.yml +0 -4
  92. package/assets/workflows/espresso/phonon_dos_dispersion.yml +0 -4
  93. package/assets/workflows/espresso/phonon_map.yml +0 -28
  94. package/assets/workflows/espresso/recalculate_bands.yml +0 -4
  95. package/assets/workflows/espresso/surface_energy.yml +0 -4
  96. package/assets/workflows/espresso/total_energy.yml +0 -4
  97. package/assets/workflows/espresso/valence_band_offset.yml +0 -171
  98. package/assets/workflows/espresso/variable_cell_relaxation.yml +0 -4
  99. package/assets/workflows/espresso/zero_point_energy.yml +0 -4
  100. package/assets/workflows/jupyterLab/jupyter_notebook.yml +0 -4
  101. package/assets/workflows/nwchem/total_energy.yml +0 -4
  102. package/assets/workflows/python/ml/classification_workflow.yml +0 -9
  103. package/assets/workflows/python/ml/clustering_workflow.yml +0 -9
  104. package/assets/workflows/python/ml/regression_workflow.yml +0 -9
  105. package/assets/workflows/python/python_script.yml +0 -4
  106. package/assets/workflows/shell/batch_espresso_pwscf.yml +0 -4
  107. package/assets/workflows/shell/hello_world.yml +0 -4
  108. package/assets/workflows/vasp/band_gap.yml +0 -4
  109. package/assets/workflows/vasp/band_structure.yml +0 -4
  110. package/assets/workflows/vasp/band_structure_dos.yml +0 -4
  111. package/assets/workflows/vasp/dos.yml +0 -4
  112. package/assets/workflows/vasp/fixed_cell_relaxation.yml +0 -4
  113. package/assets/workflows/vasp/kpoint_convergence.yml +0 -4
  114. package/assets/workflows/vasp/neb.yml +0 -8
  115. package/assets/workflows/vasp/recalculate_bands.yml +0 -4
  116. package/assets/workflows/vasp/surface_energy.yml +0 -4
  117. package/assets/workflows/vasp/total_energy.yml +0 -4
  118. package/assets/workflows/vasp/variable_cell_relaxation.yml +0 -4
  119. package/assets/workflows/vasp/zero_point_energy.yml +0 -4
@@ -51,11 +51,13 @@ function createModel({
51
51
  * @summary Create method from subworkflow data
52
52
  * @param config {Object} method configuration
53
53
  * @param methodFactoryCls {any}
54
+ * @param applicationConfig {Object} application configuration
54
55
  * @returns {{method, setSearchText}}
55
56
  */
56
57
  function createMethod({
57
58
  config,
58
- methodFactoryCls
59
+ methodFactoryCls,
60
+ applicationConfig = {}
59
61
  }) {
60
62
  const {
61
63
  name,
@@ -63,8 +65,10 @@ function createMethod({
63
65
  config: methodConfig = {}
64
66
  } = config;
65
67
  const defaultConfig = _getConfigFromModelOrMethodName(name, "Method");
68
+ const defaultConfigForApp = new _standata.ApplicationMethodStandata().getDefaultMethodConfigForApplication(applicationConfig);
66
69
  const method = methodFactoryCls.create({
67
70
  ...defaultConfig,
71
+ ...defaultConfigForApp,
68
72
  ...methodConfig
69
73
  });
70
74
  return {
@@ -102,7 +106,8 @@ function createTopLevel({
102
106
  setSearchText
103
107
  } = createMethod({
104
108
  config: methodConfig,
105
- methodFactoryCls
109
+ methodFactoryCls,
110
+ applicationConfig: appConfig
106
111
  });
107
112
  return {
108
113
  application,
@@ -238,12 +243,11 @@ function createSubworkflow({
238
243
  application
239
244
  });
240
245
  }
246
+ let subworkflow = subworkflowCls.fromArguments(application, model, method, name, units, config);
241
247
  const {
242
248
  functions = {},
243
- attributes = {},
244
- ...cfg
249
+ attributes = {}
245
250
  } = config;
246
- let subworkflow = subworkflowCls.fromArguments(application, model, method, name, units, cfg);
247
251
  subworkflow = (0, _utils.applyConfig)({
248
252
  obj: subworkflow,
249
253
  config: {
@@ -72,9 +72,15 @@ class Subworkflow extends BaseSubworkflow {
72
72
  * @summary Used to generate initial application tree, therefore omit setting application.
73
73
  */
74
74
  static fromArguments(application, model, method, name, units = [], config = {}, Cls = Subworkflow) {
75
+ const nameForIdGeneration = config.attributes?.name || name;
76
+ const {
77
+ functions,
78
+ attributes,
79
+ ...cleanConfig
80
+ } = config;
75
81
  return new Cls({
76
- ...config,
77
- _id: Cls.generateSubworkflowId(name),
82
+ ...cleanConfig,
83
+ _id: Cls.generateSubworkflowId(nameForIdGeneration),
78
84
  name,
79
85
  application: application.toJSON(),
80
86
  properties: _lodash.default.sortedUniq(_lodash.default.flatten(units.filter(x => x.resultNames).map(x => x.resultNames))),
@@ -11,6 +11,7 @@ const RelaxationLogicMixin = superclass => class extends superclass {
11
11
  if (!appName) return undefined;
12
12
  const subworkflowStandata = new _standata.SubworkflowStandata();
13
13
  const relaxationSubworkflow = subworkflowStandata.getRelaxationSubworkflowByApplication(appName);
14
+ if (!relaxationSubworkflow) return undefined;
14
15
  return new this._Subworkflow(relaxationSubworkflow);
15
16
  }
16
17
  isRelaxationSubworkflow(subworkflow) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mat3ra/wode",
3
- "version": "2025.10.8-0",
3
+ "version": "2025.11.3-0",
4
4
  "description": "WOrkflow DEfinitions",
5
5
  "scripts": {
6
6
  "test": "nyc --reporter=text mocha --recursive --bail --require @babel/register/lib --require tests/setup.js tests",
@@ -56,7 +56,7 @@
56
56
  "@mat3ra/code": "2025.7.15-0",
57
57
  "@mat3ra/esse": "2025.7.15-0",
58
58
  "@mat3ra/made": "2025.7.15-0",
59
- "@mat3ra/standata": "2025.10.2-0",
59
+ "@mat3ra/standata": "git+https://github.com/Exabyte-io/standata.git#f53b8da6ff0421b8397d606a6d8b0127dc68c64c",
60
60
  "chai": "^4.3.4",
61
61
  "eslint": "7.32.0",
62
62
  "eslint-config-airbnb": "19.0.2",
@@ -5,7 +5,7 @@ import {
5
5
  MethodFactory,
6
6
  ModelFactory,
7
7
  } from "@mat3ra/mode";
8
- import { workflowSubforkflowMapByApplication } from "@mat3ra/standata";
8
+ import { ApplicationMethodStandata, workflowSubforkflowMapByApplication } from "@mat3ra/standata";
9
9
  import _ from "lodash";
10
10
 
11
11
  import { UnitFactory } from "../units";
@@ -40,12 +40,19 @@ function createModel({ config, modelFactoryCls }) {
40
40
  * @summary Create method from subworkflow data
41
41
  * @param config {Object} method configuration
42
42
  * @param methodFactoryCls {any}
43
+ * @param applicationConfig {Object} application configuration
43
44
  * @returns {{method, setSearchText}}
44
45
  */
45
- function createMethod({ config, methodFactoryCls }) {
46
+ function createMethod({ config, methodFactoryCls, applicationConfig = {} }) {
46
47
  const { name, setSearchText = null, config: methodConfig = {} } = config;
47
48
  const defaultConfig = _getConfigFromModelOrMethodName(name, "Method");
48
- const method = methodFactoryCls.create({ ...defaultConfig, ...methodConfig });
49
+ const defaultConfigForApp =
50
+ new ApplicationMethodStandata().getDefaultMethodConfigForApplication(applicationConfig);
51
+ const method = methodFactoryCls.create({
52
+ ...defaultConfig,
53
+ ...defaultConfigForApp,
54
+ ...methodConfig,
55
+ });
49
56
  return { method, setSearchText };
50
57
  }
51
58
 
@@ -61,7 +68,11 @@ function createTopLevel({ subworkflowData, modelFactoryCls, methodFactoryCls, Ap
61
68
  const { application: appConfig, model: modelConfig, method: methodConfig } = subworkflowData;
62
69
  const application = AppRegistry.createApplication(appConfig);
63
70
  const model = createModel({ config: modelConfig, modelFactoryCls });
64
- const { method, setSearchText } = createMethod({ config: methodConfig, methodFactoryCls });
71
+ const { method, setSearchText } = createMethod({
72
+ config: methodConfig,
73
+ methodFactoryCls,
74
+ applicationConfig: appConfig,
75
+ });
65
76
  return {
66
77
  application,
67
78
  model,
@@ -168,8 +179,8 @@ function createSubworkflow({
168
179
  });
169
180
  }
170
181
 
171
- const { functions = {}, attributes = {}, ...cfg } = config;
172
- let subworkflow = subworkflowCls.fromArguments(application, model, method, name, units, cfg);
182
+ let subworkflow = subworkflowCls.fromArguments(application, model, method, name, units, config);
183
+ const { functions = {}, attributes = {} } = config;
173
184
  subworkflow = applyConfig({ obj: subworkflow, config: { functions, attributes } });
174
185
  if (setSearchText) subworkflow.model.method.setSearchText(setSearchText);
175
186
  return subworkflow;
@@ -91,9 +91,12 @@ export class Subworkflow extends BaseSubworkflow {
91
91
  config = {},
92
92
  Cls = Subworkflow,
93
93
  ) {
94
+ const nameForIdGeneration = config.attributes?.name || name;
95
+ const { functions, attributes, ...cleanConfig } = config;
96
+
94
97
  return new Cls({
95
- ...config,
96
- _id: Cls.generateSubworkflowId(name),
98
+ ...cleanConfig,
99
+ _id: Cls.generateSubworkflowId(nameForIdGeneration),
97
100
  name,
98
101
  application: application.toJSON(),
99
102
  properties: lodash.sortedUniq(
@@ -8,6 +8,7 @@ export const RelaxationLogicMixin = (superclass) =>
8
8
  const subworkflowStandata = new SubworkflowStandata();
9
9
  const relaxationSubworkflow =
10
10
  subworkflowStandata.getRelaxationSubworkflowByApplication(appName);
11
+ if (!relaxationSubworkflow) return undefined;
11
12
  return new this._Subworkflow(relaxationSubworkflow);
12
13
  }
13
14
 
@@ -39,9 +39,7 @@ export class Workflow extends BaseWorkflow {
39
39
  _MapUnit = MapUnit,
40
40
  ) {
41
41
  if (!config._id) config._id = Workflow.generateWorkflowId(config.name);
42
-
43
42
  super(config);
44
-
45
43
  this._Subworkflow = _Subworkflow;
46
44
  this._UnitFactory = _UnitFactory;
47
45
  this._Workflow = _Workflow;
@@ -1,31 +0,0 @@
1
- application:
2
- name: deepmd
3
- version: "2.0.2"
4
- method:
5
- name: UnknownMethod
6
- model:
7
- name: UnknownModel
8
- name: DeePMD
9
- units:
10
- - config:
11
- execName: python
12
- flavorName: espresso_cp_to_deepmd
13
- name: espresso_cp_to_deepmd
14
- functions:
15
- head: true
16
- type: executionBuilder
17
- - config:
18
- execName: dp
19
- flavorName: dp_train_se_e2_r
20
- name: dp_train_se_e2_r
21
- type: executionBuilder
22
- - config:
23
- execName: python
24
- flavorName: espresso_to_lammps_structure
25
- name: espresso_to_lammps_structure
26
- type: executionBuilder
27
- - config:
28
- execName: lmp
29
- flavorName: lammps_md
30
- name: lammps_md
31
- type: executionBuilder
@@ -1,16 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "7.2"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: CP-MD
9
- units:
10
- - config:
11
- execName: cp.x
12
- flavorName: cp
13
- name: cp
14
- functions:
15
- head: true
16
- type: executionBuilder
@@ -1,27 +0,0 @@
1
- # Note: this subworkflow is assumed to be used as part of the valence band offset workflow
2
- # and is this NOT self-sufficient!
3
- # Furthermore, this subworkflow expects the following variable(s) to exist in the global context:
4
- # array_from_context
5
- application:
6
- name: python
7
- version: 3.10.13
8
- method:
9
- name: UnknownMethod
10
- model:
11
- name: UnknownModel
12
- name: Find ESP Value
13
- units:
14
- - config:
15
- name: Find Extrema
16
- execName: python
17
- flavorName: generic:processing:find_extrema:scipy
18
- flowchartId: python-find-extrema
19
- type: executionBuilder
20
- - config:
21
- name: Set Average ESP Value
22
- operand: AVG_ESP
23
- value: "json.loads(STDOUT)['minima']"
24
- input:
25
- - name: STDOUT
26
- scope: python-find-extrema
27
- type: assignment
@@ -1,67 +0,0 @@
1
- config:
2
- isMultiMaterial: true
3
- application:
4
- name: espresso
5
- version: "6.3"
6
- method:
7
- name: PseudopotentialMethod
8
- model:
9
- name: DFTModel
10
- name: Band Structure + average ESP
11
- units:
12
- - config:
13
- name: Set Material Index
14
- operand: MATERIAL_INDEX
15
- value: 0
16
- type: assignment
17
- - config:
18
- execName: pw.x
19
- flavorName: pw_scf
20
- name: pw_scf
21
- type: executionBuilder
22
- - config:
23
- execName: pw.x
24
- flavorName: pw_bands
25
- name: pw_bands
26
- flowchartId: pw-bands-calculate-band-gap
27
- type: executionBuilder
28
- attributes:
29
- results:
30
- - name: band_gaps
31
- - config:
32
- name: Select indirect band gap
33
- operand: BAND_GAP_INDIRECT
34
- value: "[bandgap for bandgap in band_gaps['values'] if bandgap['type'] == 'indirect'][0]"
35
- input:
36
- - name: band_gaps
37
- scope: pw-bands-calculate-band-gap
38
- type: assignment
39
- - config:
40
- name: Set Valence Band Maximum
41
- operand: VBM
42
- value: "BAND_GAP_INDIRECT['eigenvalueValence']"
43
- type: assignment
44
- - config:
45
- execName: bands.x
46
- flavorName: bands
47
- name: bands
48
- type: executionBuilder
49
- - config:
50
- execName: pp.x
51
- flavorName: pp_electrostatic_potential
52
- name: Electrostatic Potential (ESP)
53
- type: executionBuilder
54
- - config:
55
- execName: average.x
56
- flavorName: average_potential
57
- name: average ESP
58
- flowchartId: average-electrostatic-potential
59
- type: executionBuilder
60
- - config:
61
- name: Set Macroscopically Averaged ESP Data
62
- operand: array_from_context
63
- value: "average_potential_profile['yDataSeries'][1]"
64
- input:
65
- - name: average_potential_profile
66
- scope: average-electrostatic-potential
67
- type: assignment
@@ -1,21 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Band Gap
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf
13
- name: pw_scf
14
- functions:
15
- head: true
16
- type: executionBuilder
17
- - config:
18
- execName: pw.x
19
- flavorName: pw_nscf
20
- name: pw_nscf
21
- type: executionBuilder
@@ -1,30 +0,0 @@
1
- name: HSE Band Gap
2
- application:
3
- name: espresso
4
- version: "6.3"
5
- model:
6
- name: DFTModel
7
- config:
8
- type: dft
9
- subtype: hybrid
10
- functional:
11
- name: hse06
12
- slug: hse06
13
- method:
14
- name: PseudopotentialMethod
15
- config:
16
- type: pseudopotential
17
- subtype: us
18
- units:
19
- - config:
20
- execName: pw.x
21
- flavorName: pw_scf_hse
22
- name: pw_scf_hse
23
- functions:
24
- head: true
25
- type: executionBuilder
26
- - config:
27
- execName: projwfc.x
28
- flavorName: projwfc
29
- name: projwfc
30
- type: executionBuilder
@@ -1,26 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Band Structure
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf
13
- name: pw_scf
14
- functions:
15
- head: true
16
- type: executionBuilder
17
- - config:
18
- execName: pw.x
19
- flavorName: pw_bands
20
- name: pw_bands
21
- type: executionBuilder
22
- - config:
23
- execName: bands.x
24
- flavorName: bands
25
- name: bands
26
- type: executionBuilder
@@ -1,34 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Band Structure + Density of States
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf
13
- name: pw_scf
14
- type: executionBuilder
15
- - config:
16
- execName: pw.x
17
- flavorName: pw_bands
18
- name: pw_bands
19
- type: executionBuilder
20
- - config:
21
- execName: bands.x
22
- flavorName: bands
23
- name: bands
24
- type: executionBuilder
25
- - config:
26
- execName: pw.x
27
- flavorName: pw_nscf
28
- name: pw_nscf
29
- type: executionBuilder
30
- - config:
31
- execName: projwfc.x
32
- flavorName: projwfc
33
- name: projwfc
34
- type: executionBuilder
@@ -1,30 +0,0 @@
1
- # Note: this subworkflow is assumed to be part of the "Band Structure - HSE" workflow
2
- # and is this NOT self-sufficient!
3
- name: Band Structure - HSE
4
- application:
5
- name: espresso
6
- version: "6.3"
7
- model:
8
- name: DFTModel
9
- config:
10
- type: dft
11
- subtype: hybrid
12
- functional:
13
- name: hse06
14
- slug: hse06
15
- method:
16
- name: PseudopotentialMethod
17
- config:
18
- type: pseudopotential
19
- subtype: us
20
- units:
21
- - config:
22
- execName: pw.x
23
- flavorName: pw_scf_bands_hse
24
- name: pw_scf_bands_hse
25
- type: executionBuilder
26
- - config:
27
- execName: bands.x
28
- flavorName: bands
29
- name: bands
30
- type: executionBuilder
@@ -1,31 +0,0 @@
1
- name: Spin magnetic bandstructure
2
- application:
3
- name: espresso
4
- version: "6.3"
5
- method:
6
- name: PseudopotentialMethod
7
- model:
8
- name: DFTModel
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf_magn
13
- name: pw_scf_magn
14
- functions:
15
- head: true
16
- type: executionBuilder
17
- - config:
18
- execName: pw.x
19
- flavorName: pw_bands_magn
20
- name: pw_bands_magn
21
- type: executionBuilder
22
- - config:
23
- execName: bands.x
24
- flavorName: bands_spin_up
25
- name: bands_spin_up
26
- type: executionBuilder
27
- - config:
28
- execName: bands.x
29
- flavorName: bands_spin_dn
30
- name: bands_spin_dn
31
- type: executionBuilder
@@ -1,30 +0,0 @@
1
- name: Spin orbit coupling bandstructure
2
- application:
3
- name: espresso
4
- version: "6.3"
5
- method:
6
- name: PseudopotentialMethod
7
- setSearchText: nc-fr
8
- config:
9
- type: pseudopotential
10
- subtype: nc-fr
11
- model:
12
- name: DFTModel
13
- units:
14
- - config:
15
- execName: pw.x
16
- flavorName: pw_scf_soc
17
- name: pw_scf_soc
18
- functions:
19
- head: true
20
- type: executionBuilder
21
- - config:
22
- execName: pw.x
23
- flavorName: pw_bands_soc
24
- name: pw_bands_soc
25
- type: executionBuilder
26
- - config:
27
- execName: bands.x
28
- flavorName: bands
29
- name: bands
30
- type: executionBuilder
@@ -1,35 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- config:
6
- data: {}
7
- subtype: nc
8
- type: pseudopotential
9
- name: PseudopotentialMethod
10
- model:
11
- name: DFTModel
12
- name: Compute Dielectric Function
13
- units:
14
- - config:
15
- execName: pw.x
16
- flavorName: pw_scf
17
- name: pw_scf
18
- functions:
19
- head: true
20
- type: executionBuilder
21
- - config:
22
- name: Set No-Symmetry Flag
23
- operand: NO_SYMMETRY_NO_INVERSION
24
- value: True # yamllint disable-line rule:truthy
25
- type: assignment
26
- - config:
27
- execName: pw.x
28
- flavorName: pw_nscf
29
- name: pw_nscf
30
- type: executionBuilder
31
- - config:
32
- execName: epsilon.x
33
- flavorName: dielectric_tensor
34
- name: Compute dielectric function
35
- type: executionBuilder
@@ -1,24 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Density of States
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf
13
- name: pw_scf
14
- type: executionBuilder
15
- - config:
16
- execName: pw.x
17
- flavorName: pw_nscf
18
- name: pw_nscf
19
- type: executionBuilder
20
- - config:
21
- execName: projwfc.x
22
- flavorName: projwfc
23
- name: projwfc
24
- type: executionBuilder
@@ -1,19 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Electronic Density Mesh
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_scf
13
- name: pw_scf
14
- type: executionBuilder
15
- - config:
16
- execName: pp.x
17
- flavorName: pp_density
18
- name: pp_density
19
- type: executionBuilder
@@ -1,14 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Effective Screening Medium (ESM)
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_esm
13
- name: pw_esm
14
- type: executionBuilder
@@ -1,14 +0,0 @@
1
- application:
2
- name: espresso
3
- version: "6.3"
4
- method:
5
- name: PseudopotentialMethod
6
- model:
7
- name: DFTModel
8
- name: Effective Screening Medium (ESM) Relax
9
- units:
10
- - config:
11
- execName: pw.x
12
- flavorName: pw_esm_relax
13
- name: pw_esm_relax
14
- type: executionBuilder
@@ -1,16 +0,0 @@
1
- # Note: this subworkflow is assumed to be run after a pw_scf unit
2
- # and is this NOT self-sufficient!
3
- name: Extract KPOINTS
4
- application:
5
- name: python
6
- version: 3.10.13
7
- method:
8
- name: UnknownMethod
9
- model:
10
- name: UnknownModel
11
- units:
12
- - config:
13
- name: Extract kpoints
14
- execName: python
15
- flavorName: espresso_extract_kpoints
16
- type: executionBuilder
@@ -1,12 +0,0 @@
1
- application:
2
- name: python
3
- version: 3.10.13
4
- dynamicSubworkflow:
5
- name: getQpointIrrep
6
- subfolder: espresso
7
- method:
8
- name: UnknownMethod
9
- model:
10
- name: UnknownModel
11
- name: espresso-xml-get-qpt-irr
12
- units: []